Integration Test #119
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Integration Test | |
on: | |
workflow_dispatch: | |
inputs: | |
baseFolderPath: | |
description: 'Base folder path for diffs' | |
required: true | |
default: 'diffs' | |
dynamicCoordinates: | |
description: 'Array of booleans for dynamic coordinates (e.g., [true, false])' | |
required: true | |
default: '[true, false]' | |
permissions: | |
contents: read | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
max-parallel: 1 | |
matrix: | |
dynamicCoordinates: ${{ fromJson(github.event.inputs.dynamicCoordinates) }} | |
defaults: | |
run: | |
working-directory: ./tools/integration | |
steps: | |
- uses: actions/[email protected] | |
- uses: actions/[email protected] | |
with: | |
node-version: 18 | |
cache: 'npm' | |
cache-dependency-path: './tools/integration/' | |
- name: Install dependencies | |
run: npm ci | |
- name: Run tests on tools | |
run: npm test | |
- name: Trigger harvest and verify completion | |
run: DYNAMIC_COORDINATES=${{ matrix.dynamicCoordinates }} npm run e2e-test-harvest | |
- name: Verify service functions | |
id: verify-service-functions | |
continue-on-error: true | |
run: DYNAMIC_COORDINATES=${{ matrix.dynamicCoordinates }} npm run e2e-test-definition | |
- name: Generate structured diffs | |
run: DYNAMIC_COORDINATES=${{ matrix.dynamicCoordinates }} npm run definitions-diff ${{ github.event.inputs.baseFolderPath }} | |
- name: Upload diffs artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: diffs-${{ matrix.dynamicCoordinates == 'true' && 'dynamic' || 'static' }} | |
path: ./tools/integration/${{ github.event.inputs.baseFolderPath }} | |
- name: Mark build status | |
if: steps.verify-service-functions.outcome == 'failure' | |
run: exit 1 |