Webhook-triggered Kubernetes deployment pipeline. Receives a custom curl webhook after CI builds a container image. Parses the payload (image tag, branch, pusher, commit), filters by target branch, updates the Kubernetes Deployment image, responds to the caller, and sends a Slack notification with deployment details.
## Setup
1. Import this project and configure the Ticker with your deployment settings (image repo, deployment name, container name, namespace, branch, Slack channel ID, Slack token).
2. Click Start on the Ticker to launch the HTTP Server.
3. Copy the webhook URL from the HTTP Server dashboard.
4. Add this GitHub Action step to your CI workflow (after the image build and push step):
```yaml
- name: Trigger deploy
if: github.ref == 'refs/heads/main'
run: |
curl -sf -X POST ${{ secrets.DEPLOY_WEBHOOK_URL }} \
-H 'Content-Type: application/json' \
-d '{
"imageTag": "${{ github.sha }}",
"branch": "${{ github.ref_name }}",
"pusher": "${{ github.actor }}",
"commit": "${{ github.event.head_commit.message }}",
"repo": "${{ github.repository }}"
}'
```
Store `DEPLOY_WEBHOOK_URL` in your GitHub repository secrets.
For a complete working example, check out [awesome-project-to-deploy](https://github.com/tiny-systems/awesome-project-to-deploy/) — a minimal Go app with Dockerfile and GitHub Actions workflow ready to use with this solution.