# Template: Deploy on merge to main (CERT environment)# Copy to: .github/workflows/main-deploy.yml## Triggers on push to main branch (after release merge)# Runs: build + artifact + deploy (CERT environment)## Production is NOT deployed here. Promotion to prod is a MANUAL git tag (vX.Y.Z)# handled by tag-deploy.yml — do NOT enable run_tag here (tags must be created by a human).## Required secrets: Same as develop-deploy.yml
name: Deploy to Cert
on: push: branches: - main
# Deploys on one ref run one at a time, in order. Never cancel one mid-flight:# a half-applied deploy is worse than a late one.concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: false
permissions: contents: read id-token: write
jobs: deploy: if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }} uses: <org>/ci-templates/.github/workflows/krakend-main-pipeline.yml@v2 with: run_build: true run_test: false run_artifact: true run_deploy: true deploy_target: 'ec2-vpn' environment: 'cert' # extra_volumes: default mounts ./certs:/etc/krakend/certs:ro on the host. # Place certs at /opt/docker/<repo>/certs/ on the EC2 host before deploy. # Override below to add more bind mounts (one per line, leading "- "): # extra_volumes: | # - ./certs:/etc/krakend/certs:ro # - ./config:/etc/krakend/config:ro secrets: inheritKrakenD·Consumer template·on: push
Krakend Main Deploy
Template: Deploy on merge to main (CERT environment) Copy to: .github/workflows/main-deploy.yml Triggers on push to main branch (after release merge) Runs: build + artifact + deploy (CERT environment)
templates/krakend-main-deploy.yml