cki_tools.cki_notifier

Webhook responsible for UMB message sending to trigger external testing

External testing is triggered via CKI notifier messages.

The notifier can be deployed locally by running

python -m cki_tools.cki_notifier

Required environment variables:

Configuration via environment variables

Name Secret Required Description
DATAWAREHOUSE_URL no yes DataWarehouse URL
DATAWAREHOUSE_TOKEN yes yes DataWarehouse access token
JIRA_SERVER no no JIRA server URL
JIRA_TOKEN_AUTH yes no JIRA personal access token
RABBITMQ_HOST no no AMQP host
RABBITMQ_PORT no no AMQP port, TLS is used for port 443
RABBITMQ_VIRTUAL_HOST no no AMQP vhost, defaults to /
RABBITMQ_USER no no AMQP user
RABBITMQ_PASSWORD yes no AMQP password
RABBITMQ_CAFILE no no AMQP CA file path
WEBHOOK_RECEIVER_EXCHANGE no no AMQP exchange to receive messages
RABBITMQ_QUEUE no no AMQP queue name to use on the exchange
RABBITMQ_ROUTING_KEYS no no AMQP routing keys for the messages sent to the queue
CKI_DEPLOYMENT_ENVIRONMENT no no Define the deployment environment (production/staging)
CKI_LOGGING_LEVEL no no logging level for CKI modules, defaults to WARN; to get meaningful output on the command line, set to INFO
CKI_METRICS_ENABLED no no Enable prometheus metrics. Default: false
CKI_METRICS_PORT no no Port where prometheus metrics are exposed. Default: 8000

Manual triggering

Messaging can also be manually triggered via the command line. First, make sure to have the required environment variables above configured correctly. Then, the sending of CKI notifier messages can be triggered with

CKI_LOGGING_LEVEL=INFO \
  CKI_DEPLOYMENT_ENVIRONMENT=production \
  python3 -m cki_tools.cki_notifier \
  --message-type MESSAGE_TYPE \
  --checkout-id CHECKOUT_ID
  • MESSAGE_TYPE can be pre_test or post_test.
  • CHECKOUT_ID is the KCIDB checkout ID.