# Feature branch preview for enterprise code
name: Enterprise Preview

# Run on PRs labeled
on:
  pull_request:
    types: [labeled]

# Match ghcr-build.yml, but don't interrupt it.
concurrency:
  group: ${{ github.workflow }}-${{ (github.head_ref && github.ref) || github.run_id }}
  cancel-in-progress: false

jobs:
  # This must happen for the PR Docker workflow when the label is present,
  # and also if it's added after the fact. Thus, it exists in both places.
  enterprise-preview:
    name: Enterprise preview
    if: github.event.label.name == 'deploy'
    runs-on: blacksmith-4vcpu-ubuntu-2204
    steps:
      # This should match the version in ghcr-build.yml
      - name: Trigger remote job
        run: |
          curl --fail-with-body -sS -X POST \
            -H "Authorization: Bearer ${{ secrets.PAT_TOKEN }}" \
            -H "Accept: application/vnd.github+json" \
            -d "{\"ref\": \"main\", \"inputs\": {\"openhandsPrNumber\": \"${{ github.event.pull_request.number }}\", \"deployEnvironment\": \"feature\", \"enterpriseImageTag\": \"pr-${{ github.event.pull_request.number }}\" }}" \
            https://api.github.com/repos/All-Hands-AI/deploy/actions/workflows/deploy.yaml/dispatches
