Skip to content

Coolify

Run Smoketest after Coolify deployment notifications or CI-driven Coolify deploys.

View as Markdown

Coolify can deploy from Git integrations, GitHub Actions, and deploy webhooks. Smoketest can be called either from Coolify notifications for basic testing or from your CI deploy test for full metadata.

Basic mode: Coolify notification webhook

Use this when your Smoketest test already points at the deployed Coolify URL.

  1. Create a deployment webhook in Smoketest.
  2. In Coolify, open notification settings.
  3. Add a webhook notification for successful application deployments.
  4. Paste the Smoketest trigger URL.

Coolify sends its own deployment payload. Smoketest ignores unknown fields and queues the configured target. This is enough for fixed production URLs.

Full metadata mode: GitHub Actions

Use this when the deployment URL or commit metadata should be explicit.

.github/workflows/coolify-smoketest.yml
name: Deploy with Coolify and run Smoketest

on:
  push:
    branches: [main]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Trigger Coolify deploy
        run: curl -fsS "$COOLIFY_DEPLOY_WEBHOOK_URL"
        env:
          COOLIFY_DEPLOY_WEBHOOK_URL: ${{ secrets.COOLIFY_DEPLOY_WEBHOOK_URL }}
      - name: Wait for deployed app
        run: ./scripts/wait-for-url.sh "$DEPLOYMENT_URL"
        env:
          DEPLOYMENT_URL: https://app.example.com
      - name: Trigger Smoketest
        run: |
          curl -sf -X POST -G "$SMOKETEST_DEPLOYMENT_WEBHOOK_URL" \
            -H "Idempotency-Key: ${{ github.run_id }}-${{ github.run_attempt }}" \
            --data-urlencode "targetUrl=$DEPLOYMENT_URL" \
            --data-urlencode "commitSha=${{ github.sha }}" \
            --data-urlencode "branch=${{ github.ref_name }}" \
            --data-urlencode "externalId=${{ github.run_id }}-${{ github.run_attempt }}"
        env:
          SMOKETEST_DEPLOYMENT_WEBHOOK_URL: ${{ secrets.SMOKETEST_DEPLOYMENT_WEBHOOK_URL }}
          DEPLOYMENT_URL: https://app.example.com

GitHub checks

To publish a Smoketest check on the deployed commit, bind the webhook to a mapped GitHub repository and send commitSha. Native Coolify notification payloads are not transformed by Smoketest in v1, so use the CI path for checks.

On this page