WebHook broker that accepts notifications from multiple platforms and performs simple actions in response
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

__init__.py 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import os
  2. from .docker import Docker
  3. from .gitea import Gitea
  4. from .irccat import IrcCat
  5. from .jenkins import Jenkins
  6. from .reportbot import ReportBot
  7. from .sensu import Sensu
  8. from .slack import Slack
  9. services = {}
  10. try:
  11. services["docker"] = Docker()
  12. except:
  13. pass
  14. try:
  15. services["gitea"] = Gitea(
  16. os.environ["LAS_GITEA_URL"],
  17. os.environ["LAS_GITEA_TOKEN"],
  18. install_hooks="LAS_GITEA_ADD_HOOKS" in os.environ,
  19. )
  20. except:
  21. pass
  22. try:
  23. services["irccat"] = IrcCat(
  24. os.environ["LAS_IRCCAT_HOST"],
  25. int(os.environ["LAS_IRCCAT_PORT"]),
  26. os.environ["LAS_IRCCAT_CHANNEL"],
  27. )
  28. except:
  29. pass
  30. try:
  31. services["jenkins"] = Jenkins(
  32. os.environ["LAS_JENKINS_URL"],
  33. os.environ["LAS_JENKINS_USER"],
  34. os.environ["LAS_JENKINS_PASSWORD"],
  35. )
  36. except:
  37. pass
  38. try:
  39. services["reportbot"] = ReportBot(
  40. os.environ["LAS_REPORTBOT_URL"],
  41. os.environ["LAS_REPORTBOT_KEY"],
  42. os.environ["LAS_REPORTBOT_CHANNEL"],
  43. )
  44. except:
  45. pass
  46. try:
  47. services["sensu"] = Sensu()
  48. except:
  49. pass
  50. try:
  51. services["slack"] = Slack()
  52. except:
  53. pass