| name: 'Wait for Engine Build' |
| description: 'Wait for an engine build and redirect engine.version if engine files changed' |
| inputs: |
| github-token: |
| description: 'GitHub token' |
| required: true |
| check-name: |
| description: 'The name of the check to wait on' |
| required: false |
| default: 'Linux linux_host_engine' |
| check-regexp: |
| description: 'Filter checks using regex pattern' |
| required: false |
| default: '' |
| runs: |
| using: "composite" |
| steps: |
| - name: Check Engine Changes |
| id: check_engine |
| uses: ./.github/actions/has-engine-changes |
| |
| - name: Log wait requirement |
| if: steps.check_engine.outputs.changed == 'true' |
| shell: bash |
| env: |
| INPUTS_CHECK_NAME: ${{ inputs.check-name }} |
| INPUTS_CHECK_REGEXP: ${{ inputs.check-regexp }} |
| run: | |
| echo "Engine file changed - forced to wait for check-name: '${INPUTS_CHECK_NAME}', check-regexp: '${INPUTS_CHECK_REGEXP}'" |
| |
| # Note: Use the Cocoon wait-for-tests action to poll the Cocoon API. |
| - name: Wait for test check-in |
| if: steps.check_engine.outputs.changed == 'true' && env.ACT != 'true' |
| uses: flutter/cocoon/packages/wait_for_tests@c82f779e201b2d22f43b531268cfbd2ce4fbd4ab |
| with: |
| sha: ${{ github.event.pull_request.head.sha || github.sha }} |
| repo: ${{ github.repository }} |
| required-tests: ${{ inputs.check-name }} |
| |
| - name: Redirect engine.version - Realm |
| if: steps.check_engine.outputs.changed == 'true' && github.event_name == 'pull_request' |
| shell: bash |
| run: echo "FLUTTER_REALM=flutter_archives_v2" >> $GITHUB_ENV # zizmor: ignore[github-env] |
| |
| - name: Redirect engine.version - Prebuilt Engine Version |
| if: steps.check_engine.outputs.changed == 'true' && github.event_name == 'pull_request' |
| shell: bash |
| run: echo "FLUTTER_PREBUILT_ENGINE_VERSION=$HEAD_SHA" >> $GITHUB_ENV # zizmor: ignore[github-env] |
| env: |
| HEAD_SHA: ${{ github.event.pull_request.head.sha }} |