Skip to content

Prioritize hardcoded metadata over network-sourced metadata #5916

Prioritize hardcoded metadata over network-sourced metadata

Prioritize hardcoded metadata over network-sourced metadata #5916

Workflow file for this run

# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
# Will not trigger unless PR is ready for review.
name: msal-node E2E Tests
on:
pull_request:
types: [opened, reopened, synchronize, ready_for_review]
paths:
- "lib/msal-node/**/*"
- "lib/msal-common/**/*"
- "samples/msal-node-samples/**/*"
- "samples/e2eTestUtils/**/*"
- "samples/package-lock.json"
- "!**.md"
- ".github/workflows/msal-node-e2e.yml"
merge_group:
types: [checks_requested]
concurrency:
group: node-e2e-${{github.ref}}
cancel-in-progress: true
permissions:
contents: read
jobs:
run-e2e:
if: (github.repository == 'AzureAD/microsoft-authentication-library-for-js') && (github.actor != 'dependabot[bot]') && ((github.event.pull_request.head.repo.full_name == github.repository) || (github.event_name == 'merge_group')) && !github.event.pull_request.draft
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node: [18, 20]
sample:
- "auth-code"
- "client-credentials"
- "device-code"
- "silent-flow"
- "b2c-user-flows"
- "on-behalf-of"
name: ${{ matrix.sample }} - Node v${{ matrix.node }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node }}
cache: 'npm'
- name: Clean Install
run: npm ci --workspace=samples/msal-node-samples/${{matrix.sample}} --ignore-engines
- name: Build Package
working-directory: samples/msal-node-samples/${{matrix.sample}}
run: npm run build:package
- name: E2E Tests
working-directory: samples/msal-node-samples/${{ matrix.sample }}
timeout-minutes: 10
env:
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
OBO_WEB_APP_CLIENT_ID: ${{ secrets.OBO_WEB_APP_CLIENT_ID }}
OBO_WEB_APP_CLIENT_SECRET: ${{ secrets.OBO_WEB_APP_CLIENT_SECRET }}
OBO_WEB_API_CLIENT_ID: ${{ secrets.OBO_WEB_API_CLIENT_ID }}
OBO_WEB_API_CLIENT_SECRET: ${{ secrets.OBO_WEB_API_CLIENT_SECRET }}
OBO_WEB_API_SCOPE: ${{ secrets.OBO_WEB_API_SCOPE }}
OBO_WEB_API_TENANT_ID: ${{ secrets.OBO_WEB_API_TENANT_ID }}
run: npm test
- name: Upload E2E Test Screenshots
uses: actions/upload-artifact@v3
if: failure()
with:
name: e2e-test-screenshots
path: samples/**/screenshots
run-electron-e2e:
if: (github.repository == 'AzureAD/microsoft-authentication-library-for-js') && (github.actor != 'dependabot[bot]') && ((github.event.pull_request.head.repo.full_name == github.repository) || (github.event_name == 'merge_group')) && !github.event.pull_request.draft
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-latest, macos-latest]
sample:
- "ElectronSystemBrowserTestApp"
name: ${{ matrix.sample }} - ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18
cache: 'npm'
- name: Clean Install
run: npm ci --workspace=samples/msal-node-samples/${{matrix.sample}} --ignore-engines
- name: Build Package
working-directory: samples/msal-node-samples/${{matrix.sample}}
run: npm run build:package
- name: Install Playwright
working-directory: samples/msal-node-samples/${{ matrix.sample }}
run: npx playwright install
- name: Build Sample
working-directory: samples/msal-node-samples/${{ matrix.sample }}
run: |
npm run build
- name: E2E Tests
working-directory: samples/msal-node-samples/${{ matrix.sample }}
timeout-minutes: 10
env:
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
DEBUG: pw:browser
run: npm test
- name: Upload E2E Test Screenshots
uses: actions/upload-artifact@v3
if: failure()
with:
name: e2e-test-screenshots
path: samples/**/screenshots