Drone and Woodpecker
Trigger Smoketest deployment webhooks from Drone or Woodpecker CI pipelines.
Drone and Woodpecker both work well with Smoketest deployment webhooks because pipeline steps can call the trigger URL after deployment. Use the CI variables from your runner to pass branch and commit metadata.
Drone
Store SMOKETEST_DEPLOYMENT_WEBHOOK_URL as a Drone secret.
kind: pipeline
type: docker
name: deploy
steps:
- name: deploy
image: alpine:3.20
commands:
- ./scripts/deploy.sh
- name: smoketest
image: curlimages/curl:8.8.0
environment:
SMOKETEST_DEPLOYMENT_WEBHOOK_URL:
from_secret: smoketest_deployment_webhook_url
DEPLOYMENT_URL: https://staging.example.com
commands:
- |
curl -sf -X POST -G "$SMOKETEST_DEPLOYMENT_WEBHOOK_URL" \
-H "Idempotency-Key: $DRONE_BUILD_NUMBER" \
--data-urlencode "targetUrl=$DEPLOYMENT_URL" \
--data-urlencode "commitSha=$DRONE_COMMIT_SHA" \
--data-urlencode "branch=$DRONE_BRANCH" \
--data-urlencode "externalId=$DRONE_BUILD_NUMBER"Woodpecker
Store SMOKETEST_DEPLOYMENT_WEBHOOK_URL as a Woodpecker secret.
steps:
deploy:
image: alpine:3.20
commands:
- ./scripts/deploy.sh
smoketest:
image: curlimages/curl:8.8.0
environment:
SMOKETEST_DEPLOYMENT_WEBHOOK_URL:
from_secret: smoketest_deployment_webhook_url
DEPLOYMENT_URL: https://staging.example.com
commands:
- |
curl -sf -X POST -G "$SMOKETEST_DEPLOYMENT_WEBHOOK_URL" \
-H "Idempotency-Key: $CI_PIPELINE_NUMBER" \
--data-urlencode "targetUrl=$DEPLOYMENT_URL" \
--data-urlencode "commitSha=$CI_COMMIT_SHA" \
--data-urlencode "branch=$CI_COMMIT_BRANCH" \
--data-urlencode "externalId=$CI_PIPELINE_NUMBER"If your Woodpecker secret uses a different name, replace smoketest_deployment_webhook_url in the example.