diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml new file mode 100644 index 0000000000..2bd1b4c584 --- /dev/null +++ b/.github/workflows/e2e.yml @@ -0,0 +1,27 @@ +name: Netlify E2E Tests + +on: push + +jobs: + e2e: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - uses: actions/setup-node@v4 + - name: Install Netlify E2E + run: npm i -g @netlify/e2e@1.0.0-rc.0 + - name: Create Remlink Config + run: node ./tools/create-remlink.config.js + - name: Trigger Netlify E2E image build + id: extract-deploy-id + run: | + output=$(netlify-e2e build-image ./remlink.config.json) + echo "pipelineId=$(echo "output" | jq -r '.pipelineId')" >> $GITHUB_ENV + echo "testImageTag=$(echo "output" | jq -r '.tag')" >> $GITHUB_ENV + + - name: Echo extracted values + run: | + echo "The extracted pipelineId is: ${{ env.pipelineId }}" + echo "The extracted Tag is: ${{ env.testImageTag }}" diff --git a/tools/create-remlink.config.js b/tools/create-remlink.config.js new file mode 100644 index 0000000000..8111a9d89f --- /dev/null +++ b/tools/create-remlink.config.js @@ -0,0 +1,19 @@ +import { writeFile } from 'node:fs/promises' + +const config = { + links: [ + { + repo: 'netlify/build', + branch: 'feat/test-mocked-versions', + packages: { + '@netlify/config': 'packages/config', + '@netlify/build': 'packages/build', + '@netlify/zip-it-and-ship-it': 'packages/zip-it-and-ship-it', + '@netlify/build-info': 'packages/build-info', + }, + installCommands: ['npm run build'], + }, + ], +} + +await writeFile('remlink.config.json', JSON.stringify(config), 'utf-8')