diff --git a/.github/workflows/enterprise-preview.yml b/.github/workflows/enterprise-preview.yml new file mode 100644 index 0000000000..9a66fda825 --- /dev/null +++ b/.github/workflows/enterprise-preview.yml @@ -0,0 +1,29 @@ +# 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 diff --git a/.github/workflows/ghcr-build.yml b/.github/workflows/ghcr-build.yml index a9b359954d..d037c6b6be 100644 --- a/.github/workflows/ghcr-build.yml +++ b/.github/workflows/ghcr-build.yml @@ -235,12 +235,11 @@ jobs: enterprise-preview: name: Enterprise preview - if: | - (github.event_name == 'pull_request' && github.event.action == 'labeled' && github.event.label.name == 'deploy') || - (github.event_name == 'pull_request' && github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, 'deploy')) + if: github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'deploy') runs-on: blacksmith-4vcpu-ubuntu-2204 needs: [ghcr_build_enterprise] steps: + # This should match the version in enterprise-preview.yml - name: Trigger remote job run: | curl --fail-with-body -sS -X POST \