23 lines
861 B
Text
23 lines
861 B
Text
#!/usr/bin/env nu
|
|
# Triggered by pipeline: deploy-completed
|
|
# Subject: ${NATS_NAMESPACE}.deploy.completed
|
|
#
|
|
# Expected payload: { version: string, commit: string, deployed_by: string }
|
|
#
|
|
# Env vars set by the executor:
|
|
# PIPELINE_EVENT — actual NATS subject
|
|
# PIPELINE_PAYLOAD — raw JSON body
|
|
|
|
let event = $env.PIPELINE_EVENT
|
|
let payload = $env.PIPELINE_PAYLOAD | from json
|
|
|
|
let version = $payload | get --optional version | default "unknown"
|
|
let commit = $payload | get --optional commit | default "unknown"
|
|
let deployed_by = $payload | get --optional deployed_by | default "unknown"
|
|
|
|
print $"[on-deploy-completed] event=($event) version=($version) commit=($commit) by=($deployed_by)"
|
|
|
|
# Add post-deploy automation here, e.g.:
|
|
# - tag the release in a monitoring system
|
|
# - notify a Slack channel
|
|
# - run a smoke-test suite
|