robusta-cli 0.11.1a0__tar.gz → 0.12.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/PKG-INFO +1 -1
  2. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/pyproject.toml +1 -1
  3. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/_version.py +1 -1
  4. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/base_triggers.py +1 -3
  5. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/slack/sender.py +23 -32
  6. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/LICENSE +0 -0
  7. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/__init__.py +0 -0
  8. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/api/__init__.py +0 -0
  9. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/__init__.py +0 -0
  10. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/auth.py +0 -0
  11. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/backend_profile.py +0 -0
  12. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/eula.py +0 -0
  13. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/integrations_cmd.py +0 -0
  14. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/main.py +0 -0
  15. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/playbooks_cmd.py +0 -0
  16. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/self_host.py +0 -0
  17. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/slack_feedback_message.py +0 -0
  18. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/slack_verification.py +0 -0
  19. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/cli/utils.py +0 -0
  20. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/__init__.py +0 -0
  21. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/discovery/__init__.py +0 -0
  22. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/discovery/discovery.py +0 -0
  23. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/discovery/resource_names.py +0 -0
  24. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/discovery/top_service_resolver.py +0 -0
  25. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/discovery/utils.py +0 -0
  26. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/exceptions.py +0 -0
  27. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/__init__.py +0 -0
  28. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/base_params.py +0 -0
  29. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/cluster_status.py +0 -0
  30. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/env_vars.py +0 -0
  31. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/events.py +0 -0
  32. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/helm_release.py +0 -0
  33. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/jobs.py +0 -0
  34. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/k8s_operation_type.py +0 -0
  35. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/namespaces.py +0 -0
  36. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/nodes.py +0 -0
  37. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/pods.py +0 -0
  38. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/runner_config.py +0 -0
  39. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/model/services.py +0 -0
  40. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/persistency/__init__.py +0 -0
  41. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/persistency/in_memory.py +0 -0
  42. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/persistency/scheduled_jobs_states_dal.py +0 -0
  43. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/__init__.py +0 -0
  44. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/actions_registry.py +0 -0
  45. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/base_trigger.py +0 -0
  46. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/common.py +0 -0
  47. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/container_playbook_utils.py +0 -0
  48. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/crash_reporter.py +0 -0
  49. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/generation.py +0 -0
  50. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/internal/discovery_events.py +0 -0
  51. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/job_utils.py +0 -0
  52. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/node_playbook_utils.py +0 -0
  53. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/oom_killer_utils.py +0 -0
  54. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/playbook_utils.py +0 -0
  55. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/playbooks_event_handler.py +0 -0
  56. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/playbooks_event_handler_impl.py +0 -0
  57. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/pod_utils/crashloop_utils.py +0 -0
  58. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/pod_utils/imagepull_utils.py +0 -0
  59. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/pod_utils/pending_pod_utils.py +0 -0
  60. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/prometheus_enrichment_utils.py +0 -0
  61. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/playbooks/trigger.py +0 -0
  62. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/pubsub/__init__.py +0 -0
  63. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/pubsub/event_emitter.py +0 -0
  64. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/pubsub/event_subscriber.py +0 -0
  65. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/pubsub/events_pubsub.py +0 -0
  66. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/__init__.py +0 -0
  67. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/action_requests.py +0 -0
  68. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/base.py +0 -0
  69. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/blocks.py +0 -0
  70. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/callbacks.py +0 -0
  71. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/consts.py +0 -0
  72. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/custom_rendering.py +0 -0
  73. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/finding_subjects.py +0 -0
  74. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/reporting/utils.py +0 -0
  75. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/schedule/__init__.py +0 -0
  76. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/schedule/model.py +0 -0
  77. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/schedule/scheduler.py +0 -0
  78. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/__init__.py +0 -0
  79. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/common/__init__.py +0 -0
  80. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/common/channel_transformer.py +0 -0
  81. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/common/html_tools.py +0 -0
  82. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/datadog/__init__.py +0 -0
  83. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/datadog/datadog_sink.py +0 -0
  84. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/datadog/datadog_sink_params.py +0 -0
  85. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/discord/__init__.py +0 -0
  86. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/discord/discord_sink.py +0 -0
  87. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/discord/discord_sink_params.py +0 -0
  88. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/file/__init__.py +0 -0
  89. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/file/file_sink.py +0 -0
  90. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/file/file_sink_params.py +0 -0
  91. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/file/object_traverser.py +0 -0
  92. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/google_chat/__init__.py +0 -0
  93. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/google_chat/google_chat.py +0 -0
  94. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/google_chat/google_chat_params.py +0 -0
  95. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/jira/__init__.py +0 -0
  96. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/jira/jira_sink.py +0 -0
  97. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/jira/jira_sink_params.py +0 -0
  98. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/kafka/__init__.py +0 -0
  99. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/kafka/kafka_sink.py +0 -0
  100. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/kafka/kafka_sink_params.py +0 -0
  101. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/mail/__init__.py +0 -0
  102. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/mail/mail_sink.py +0 -0
  103. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/mail/mail_sink_params.py +0 -0
  104. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/mattermost/__init__.py +0 -0
  105. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/mattermost/mattermost_sink.py +0 -0
  106. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/mattermost/mattermost_sink_params.py +0 -0
  107. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/msteams/__init__.py +0 -0
  108. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/msteams/msteams_sink.py +0 -0
  109. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/msteams/msteams_sink_params.py +0 -0
  110. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/opsgenie/__init__.py +0 -0
  111. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/opsgenie/opsgenie_sink.py +0 -0
  112. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/opsgenie/opsgenie_sink_params.py +0 -0
  113. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/pagerduty/__init__.py +0 -0
  114. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/pagerduty/pagerduty_sink.py +0 -0
  115. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/pagerduty/pagerduty_sink_params.py +0 -0
  116. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/pushover/__init__.py +0 -0
  117. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/pushover/pushover_client.py +0 -0
  118. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/pushover/pushover_sink.py +0 -0
  119. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/pushover/pushover_sink_params.py +0 -0
  120. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/__init__.py +0 -0
  121. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/dal/__init__.py +0 -0
  122. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/dal/model_conversion.py +0 -0
  123. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/dal/supabase_dal.py +0 -0
  124. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/discovery_metrics.py +0 -0
  125. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/prometheus_health_checker.py +0 -0
  126. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/robusta_sink.py +0 -0
  127. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/robusta_sink_params.py +0 -0
  128. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/rrm/__init__.py +0 -0
  129. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/rrm/account_resource_fetcher.py +0 -0
  130. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/rrm/base_resource_manager.py +0 -0
  131. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/rrm/prometheus_alert_resource_manager.py +0 -0
  132. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/rrm/rrm.py +0 -0
  133. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/robusta/rrm/types.py +0 -0
  134. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/rocketchat/__init__.py +0 -0
  135. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/rocketchat/rocketchat_sink.py +0 -0
  136. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/rocketchat/rocketchat_sink_params.py +0 -0
  137. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/servicenow/__init__.py +0 -0
  138. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/servicenow/servicenow_sink.py +0 -0
  139. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/servicenow/servicenow_sink_params.py +0 -0
  140. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/sink_base.py +0 -0
  141. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/sink_base_params.py +0 -0
  142. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/sink_config.py +0 -0
  143. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/sink_factory.py +0 -0
  144. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/slack/__init__.py +0 -0
  145. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/slack/slack_sink.py +0 -0
  146. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/slack/slack_sink_params.py +0 -0
  147. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/telegram/__init__.py +0 -0
  148. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/telegram/telegram_client.py +0 -0
  149. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/telegram/telegram_sink.py +0 -0
  150. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/telegram/telegram_sink_params.py +0 -0
  151. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/timing.py +0 -0
  152. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/transformer.py +0 -0
  153. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/victorops/__init__.py +0 -0
  154. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/victorops/victorops_sink.py +0 -0
  155. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/victorops/victorops_sink_params.py +0 -0
  156. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/webex/__init__.py +0 -0
  157. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/webex/webex_sink.py +0 -0
  158. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/webex/webex_sink_params.py +0 -0
  159. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/webhook/__init__.py +0 -0
  160. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/webhook/webhook_sink.py +0 -0
  161. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/webhook/webhook_sink_params.py +0 -0
  162. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/yamessenger/__init__.py +0 -0
  163. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/yamessenger/yamessenger_client.py +0 -0
  164. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/yamessenger/yamessenger_sink.py +0 -0
  165. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/yamessenger/yamessenger_sink_params.py +0 -0
  166. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/zulip/__init__.py +0 -0
  167. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/zulip/zulip_sink.py +0 -0
  168. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/sinks/zulip/zulip_sink_params.py +0 -0
  169. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/container_oom_killed_trigger.py +0 -0
  170. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/custom_triggers.py +0 -0
  171. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/error_event_trigger.py +0 -0
  172. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/helm_releases_triggers.py +0 -0
  173. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/job_failed_trigger.py +0 -0
  174. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/multi_resources_trigger.py +0 -0
  175. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/oom_killed_trigger_base.py +0 -0
  176. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/pod_crash_loop_trigger.py +0 -0
  177. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/pod_image_pull_backoff.py +0 -0
  178. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/core/triggers/pod_oom_killed_trigger.py +0 -0
  179. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/__init__.py +0 -0
  180. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/argocd/argocd_client.py +0 -0
  181. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/common/__init__.py +0 -0
  182. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/common/requests.py +0 -0
  183. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/discord/__init__.py +0 -0
  184. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/discord/sender.py +0 -0
  185. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/git/__init__.py +0 -0
  186. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/git/git_repo.py +0 -0
  187. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/git/well_known_hosts.py +0 -0
  188. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/google_chat/__init__.py +0 -0
  189. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/google_chat/sender.py +0 -0
  190. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/grafana.py +0 -0
  191. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/helper.py +0 -0
  192. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/jira/__init__.py +0 -0
  193. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/jira/client.py +0 -0
  194. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/jira/sender.py +0 -0
  195. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/__init__.py +0 -0
  196. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/api_client_utils.py +0 -0
  197. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/autogenerated/__init__.py +0 -0
  198. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/autogenerated/events.py +0 -0
  199. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/autogenerated/models.py +0 -0
  200. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/autogenerated/triggers.py +0 -0
  201. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/autogenerated/v1/__init__.py +0 -0
  202. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/autogenerated/v1/models.py +0 -0
  203. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/base_event.py +0 -0
  204. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/custom_models.py +0 -0
  205. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/model_not_found_exception.py +0 -0
  206. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/process_utils.py +0 -0
  207. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/kubernetes/templates.py +0 -0
  208. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/mail/__init__.py +0 -0
  209. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/mail/sender.py +0 -0
  210. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/mattermost/__init__.py +0 -0
  211. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/mattermost/client.py +0 -0
  212. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/mattermost/sender.py +0 -0
  213. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/__init__.py +0 -0
  214. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_adaptive_card_files.py +0 -0
  215. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_adaptive_card_files_image.py +0 -0
  216. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_adaptive_card_files_text.py +0 -0
  217. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/__init__.py +0 -0
  218. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/msteams_action.py +0 -0
  219. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/msteams_base.py +0 -0
  220. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/msteams_card.py +0 -0
  221. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/msteams_column.py +0 -0
  222. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/msteams_container.py +0 -0
  223. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/msteams_images.py +0 -0
  224. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/msteams_table.py +0 -0
  225. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_elements/msteams_text_block.py +0 -0
  226. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_mark_down_fix_url.py +0 -0
  227. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/msteams_msg.py +0 -0
  228. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/msteams/sender.py +0 -0
  229. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/openshift/__init__.py +0 -0
  230. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/openshift/token.py +0 -0
  231. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/prometheus/__init__.py +0 -0
  232. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/prometheus/models.py +0 -0
  233. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/prometheus/trigger.py +0 -0
  234. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/prometheus/utils.py +0 -0
  235. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/receiver.py +0 -0
  236. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/resource_analysis/__init__.py +0 -0
  237. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/resource_analysis/cpu_analyzer.py +0 -0
  238. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/resource_analysis/memory_analyzer.py +0 -0
  239. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/resource_analysis/node_cpu_analyzer.py +0 -0
  240. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/resource_analysis/prometheus_analyzer.py +0 -0
  241. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/rocketchat/__init__.py +0 -0
  242. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/rocketchat/sender.py +0 -0
  243. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/scheduled/__init__.py +0 -0
  244. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/scheduled/event.py +0 -0
  245. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/scheduled/models.py +0 -0
  246. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/scheduled/playbook_scheduler.py +0 -0
  247. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/scheduled/playbook_scheduler_manager.py +0 -0
  248. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/scheduled/playbook_scheduler_manager_impl.py +0 -0
  249. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/scheduled/trigger.py +0 -0
  250. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/servicenow/__init__.py +0 -0
  251. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/servicenow/sender.py +0 -0
  252. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/slack/__init__.py +0 -0
  253. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/webex/__init__.py +0 -0
  254. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/webex/sender.py +0 -0
  255. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/zulip/__init__.py +0 -0
  256. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/integrations/zulip/sender.py +0 -0
  257. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/model/alert_relabel_config.py +0 -0
  258. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/model/config.py +0 -0
  259. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/model/playbook_action.py +0 -0
  260. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/model/playbook_definition.py +0 -0
  261. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/patch/patch.py +0 -0
  262. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/__init__.py +0 -0
  263. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/config_loader.py +0 -0
  264. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/log_init.py +0 -0
  265. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/main.py +0 -0
  266. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/not_found_exception.py +0 -0
  267. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/object_updater.py +0 -0
  268. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/process_setup.py +0 -0
  269. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/ssl_utils.py +0 -0
  270. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/telemetry.py +0 -0
  271. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/telemetry_service.py +0 -0
  272. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/web.py +0 -0
  273. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/runner/web_api.py +0 -0
  274. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/__init__.py +0 -0
  275. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/auth_provider.py +0 -0
  276. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/base64_utils.py +0 -0
  277. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/cluster_provider_discovery.py +0 -0
  278. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/common.py +0 -0
  279. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/decorators.py +0 -0
  280. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/docs.py +0 -0
  281. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/documented_pydantic.py +0 -0
  282. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/error_codes.py +0 -0
  283. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/file_system_watcher.py +0 -0
  284. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/function_hashes.py +0 -0
  285. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/json_schema.py +0 -0
  286. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/parsing.py +0 -0
  287. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/rate_limiter.py +0 -0
  288. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/scope.py +0 -0
  289. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/server_start.py +0 -0
  290. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/service_discovery.py +0 -0
  291. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/silence_utils.py +0 -0
  292. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/stack_tracer.py +0 -0
  293. {robusta_cli-0.11.1a0 → robusta_cli-0.12.0}/src/robusta/utils/task_queue.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: robusta-cli
3
- Version: 0.11.1a0
3
+ Version: 0.12.0
4
4
  Summary:
5
5
  Author: Natan Yellin
6
6
  Author-email: aantn@users.noreply.github.com
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "robusta-cli"
3
- version = "0.11.1-alpha"
3
+ version = "0.12.0"
4
4
  description = ""
5
5
  authors = ["Natan Yellin <aantn@users.noreply.github.com>"]
6
6
  packages = [
@@ -1,2 +1,2 @@
1
1
  # this is updated by .github/workflows/release.yaml
2
- __version__ = "0.11.1-alpha"
2
+ __version__ = "0.12.0"
@@ -157,9 +157,7 @@ class K8sBaseTrigger(BaseTrigger):
157
157
  def should_fire(self, event: TriggerEvent, playbook_id: str, build_context: Dict[str, Any]):
158
158
  if not isinstance(event, K8sTriggerEvent):
159
159
  return False
160
-
161
- k8s_trigger_event = K8sTriggerEvent(**event.dict())
162
- k8s_payload = k8s_trigger_event.k8s_payload
160
+ k8s_payload = event.k8s_payload
163
161
  if self.kind != "Any" and self.kind != k8s_payload.kind:
164
162
  return False
165
163
 
@@ -1,7 +1,6 @@
1
1
  import logging
2
2
  import ssl
3
3
  import tempfile
4
- import time
5
4
  from datetime import datetime, timedelta
6
5
  from itertools import chain
7
6
  from typing import Any, Dict, List, Set
@@ -32,10 +31,10 @@ from robusta.core.reporting.blocks import (
32
31
  from robusta.core.reporting.callbacks import ExternalActionRequestBuilder
33
32
  from robusta.core.reporting.consts import EnrichmentAnnotation, FindingSource, SlackAnnotations
34
33
  from robusta.core.reporting.utils import add_pngs_for_all_svgs
34
+ from robusta.core.sinks.common import ChannelTransformer
35
35
  from robusta.core.sinks.sink_base import KeyT
36
36
  from robusta.core.sinks.slack.slack_sink_params import SlackSinkParams
37
37
  from robusta.core.sinks.transformer import Transformer
38
- from robusta.core.sinks.common import ChannelTransformer
39
38
 
40
39
  ACTION_TRIGGER_PLAYBOOK = "trigger_playbook"
41
40
  ACTION_LINK = "link"
@@ -167,9 +166,7 @@ class SlackSender:
167
166
 
168
167
  return self.__to_slack_markdown(block.to_markdown())
169
168
 
170
- def __to_slack(self, block: BaseBlock, sink_name: str = None) -> List[SlackBlock]:
171
- # sink_name can be omitted if we are sure that neither KubernetesDiffBlock nor
172
- # CallbackBlock will be processed.
169
+ def __to_slack(self, block: BaseBlock, sink_name: str) -> List[SlackBlock]:
173
170
  if isinstance(block, MarkdownBlock):
174
171
  return self.__to_slack_markdown(block)
175
172
  elif isinstance(block, DividerBlock):
@@ -192,10 +189,8 @@ class SlackSender:
192
189
  elif isinstance(block, ListBlock):
193
190
  return self.__to_slack_markdown(block.to_markdown())
194
191
  elif isinstance(block, KubernetesDiffBlock):
195
- assert sink_name is not None
196
192
  return self.__to_slack_diff(block, sink_name)
197
193
  elif isinstance(block, CallbackBlock):
198
- assert sink_name is not None
199
194
  return self.__get_action_block_for_choices(sink_name, block.choices)
200
195
  elif isinstance(block, LinksBlock):
201
196
  return self.__to_slack_links(block.links)
@@ -294,7 +289,7 @@ class SlackSender:
294
289
  ),
295
290
  unfurl_links=unfurl,
296
291
  unfurl_media=unfurl,
297
- **kwargs
292
+ **kwargs,
298
293
  )
299
294
  # We will need channel ids for future message updates
300
295
  self.channel_name_to_id[channel] = resp["channel"]
@@ -320,7 +315,7 @@ class SlackSender:
320
315
  if platform_enabled:
321
316
  title = f"<{finding.get_investigate_uri(self.account_id, self.cluster_name)}|*{title}*>"
322
317
  return MarkdownBlock(
323
- f"""{status_name} {sev.to_emoji()} *{sev.name.capitalize()}*
318
+ f"""{status_name} {sev.to_emoji()} *{sev.name.capitalize()}*
324
319
  {title}"""
325
320
  )
326
321
 
@@ -425,8 +420,6 @@ class SlackSender:
425
420
  ):
426
421
  """Create or update a summary message with tabular information about the amount of events
427
422
  fired/resolved and a header describing the event group that this information concerns."""
428
- now_ts = time.time()
429
-
430
423
  rows = []
431
424
  n_total_alerts = 0
432
425
  for key, value in sorted(summary_table.items()):
@@ -439,9 +432,7 @@ class SlackSender:
439
432
  table_block = TableBlock(headers=summary_header + ["Fired", "Resolved"], rows=rows)
440
433
  summary_start_utc_dt = datetime.fromtimestamp(summary_start).astimezone(tz.UTC)
441
434
  formatted_summary_start = summary_start_utc_dt.strftime("%Y-%m-%d %H:%M UTC")
442
- grouping_interval_str = humanize.precisedelta(
443
- timedelta(seconds=grouping_interval), minimum_unit="seconds"
444
- )
435
+ grouping_interval_str = humanize.precisedelta(timedelta(seconds=grouping_interval), minimum_unit="seconds")
445
436
  time_text = (
446
437
  f"*Time interval:* `{grouping_interval_str}` starting at "
447
438
  f"`<!date^{int(summary_start)}^{{date_num}} {{time}}|{formatted_summary_start}>`"
@@ -454,23 +445,25 @@ class SlackSender:
454
445
 
455
446
  source_txt = f"*Source:* `{self.cluster_name}`"
456
447
  if platform_enabled:
457
- blocks.extend([
458
- {
459
- "type": "section",
460
- "text": {
461
- "type": "mrkdwn",
462
- "text": source_txt,
463
- },
464
- "accessory": {
465
- "type": "button",
448
+ blocks.extend(
449
+ [
450
+ {
451
+ "type": "section",
466
452
  "text": {
467
- "type": "plain_text",
468
- "text": "Investigate 🔎",
453
+ "type": "mrkdwn",
454
+ "text": source_txt,
469
455
  },
470
- "url": investigate_uri,
471
- },
472
- }
473
- ])
456
+ "accessory": {
457
+ "type": "button",
458
+ "text": {
459
+ "type": "plain_text",
460
+ "text": "Investigate 🔎",
461
+ },
462
+ "url": investigate_uri,
463
+ },
464
+ }
465
+ ]
466
+ )
474
467
  else:
475
468
  blocks.append(MarkdownBlock(text=source_txt))
476
469
 
@@ -489,9 +482,7 @@ class SlackSender:
489
482
  for block in blocks:
490
483
  output_blocks.extend(self.__to_slack(block, sink_params.name))
491
484
 
492
- # TODO for the purpose of summary messages, we assume the chanel is determined as if
493
- # labels and annotations were empty, bypassing the elaborate logic in ChannelTransformer.
494
- # Is this acceptable? I don't really see a way around this.
485
+ # For grouped notifications, channel override is supported only with the `cluster` attribute
495
486
  channel = ChannelTransformer.template(
496
487
  sink_params.channel_override,
497
488
  sink_params.slack_channel,
File without changes