ci: specify node version #1779
Workflow file for this run
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: Build, Lint & Test Lib | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
types: [opened, synchronize, reopened, closed] | |
branches: | |
- main | |
jobs: | |
build_job: | |
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed') | |
runs-on: ubuntu-latest | |
name: Built, Lint and Test Library | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Setup Node.js | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
- name: Installing Dependencies | |
run: npm ci | |
- name: Linting Frontend | |
run: npm run lint-lib | |
- name: Testing Frontend | |
run: npm run test-lib-ci | |
- name: Coveralls | |
uses: coverallsapp/github-action@master | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
path-to-lcov: './coverage/angular-auth-oidc-client/lcov.info' | |
- name: Coveralls Finished | |
uses: coverallsapp/github-action@master | |
with: | |
github-token: ${{ secrets.github_token }} | |
parallel-finished: true | |
- name: Building Frontend | |
run: npm run build-lib-prod | |
- name: Copying essential additional files | |
run: npm run copy-files | |
- name: Show files | |
run: ls | |
- name: Upload Artefact | |
uses: actions/upload-artifact@v2 | |
with: | |
name: angular_auth_oidc_client_artefact | |
path: dist/angular-auth-oidc-client | |
AngularLatestVersion: | |
needs: build_job | |
runs-on: ubuntu-latest | |
name: Angular latest | |
steps: | |
- name: Setup Node.js | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
- name: Download Artefact | |
uses: actions/download-artifact@v2 | |
with: | |
name: angular_auth_oidc_client_artefact | |
path: angular-auth-oidc-client-artefact | |
- name: Install AngularCLI globally | |
run: sudo npm install -g @angular/cli@16 | |
- name: Show ng Version | |
run: ng version | |
- name: Create Angular Project | |
run: sudo ng new angular-auth-oidc-client-test --skip-git | |
- name: Npm Install & Install Library from local artefact | |
run: | | |
sudo cp -R angular-auth-oidc-client-artefact angular-auth-oidc-client-test/ | |
cd angular-auth-oidc-client-test | |
sudo npm install --unsafe-perm=true | |
sudo ng add ./angular-auth-oidc-client-artefact --authority-url-or-tenant-id "my-authority-url" --flow-type "OIDC Code Flow PKCE using refresh tokens" --use-local-package=true --skip-confirmation | |
- name: Test Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: npm test -- --watch=false --browsers=ChromeHeadless | |
- name: Build Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: sudo npm run build | |
AngularLatestVersionWithSchematics: | |
needs: build_job | |
runs-on: ubuntu-latest | |
name: Angular latest & Schematics Job | |
steps: | |
- name: Setup Node.js | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
- name: Download Artefact | |
uses: actions/download-artifact@v2 | |
with: | |
name: angular_auth_oidc_client_artefact | |
path: angular-auth-oidc-client-artefact | |
- name: Install AngularCLI globally | |
run: sudo npm install -g @angular/cli@16 | |
- name: Show ng Version | |
run: ng version | |
- name: Create Angular Project | |
run: sudo ng new angular-auth-oidc-client-test --skip-git | |
- name: Npm Install & Install Library from local artefact | |
run: | | |
sudo cp -R angular-auth-oidc-client-artefact angular-auth-oidc-client-test/ | |
cd angular-auth-oidc-client-test | |
sudo npm install --unsafe-perm=true | |
sudo ng add ./angular-auth-oidc-client-artefact --authority-url-or-tenant-id "my-authority-url" --flow-type "Default config" --use-local-package=true --skip-confirmation | |
- name: Test Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: npm test -- --watch=false --browsers=ChromeHeadless | |
- name: Build Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: sudo npm run build | |
AngularLatestVersionWithStandaloneSchematics: | |
needs: build_job | |
runs-on: ubuntu-latest | |
name: Angular latest Standalone & Schematics Job | |
steps: | |
- name: Setup Node.js | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
- name: Download Artefact | |
uses: actions/download-artifact@v2 | |
with: | |
name: angular_auth_oidc_client_artefact | |
path: angular-auth-oidc-client-artefact | |
- name: Install AngularCLI globally | |
run: sudo npm install -g @angular/cli@16 | |
- name: Show ng Version | |
run: ng version | |
- name: Create Angular Project | |
run: sudo ng new angular-auth-oidc-client-test --skip-git --standalone | |
- name: Npm Install & Install Library from local artefact | |
run: | | |
sudo cp -R angular-auth-oidc-client-artefact angular-auth-oidc-client-test/ | |
cd angular-auth-oidc-client-test | |
sudo npm install --unsafe-perm=true | |
sudo ng add ./angular-auth-oidc-client-artefact --authority-url-or-tenant-id "my-authority-url" --flow-type "OIDC Code Flow PKCE using refresh tokens" --use-local-package=true --skip-confirmation | |
- name: Test Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: npm test -- --watch=false --browsers=ChromeHeadless | |
- name: Build Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: sudo npm run build | |
AngularLatestVersionWithRxJs6: | |
needs: build_job | |
runs-on: ubuntu-latest | |
name: Angular latest & RxJs 6 | |
steps: | |
- name: Setup Node.js | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
- name: Download Artefact | |
uses: actions/download-artifact@v2 | |
with: | |
name: angular_auth_oidc_client_artefact | |
path: angular-auth-oidc-client-artefact | |
- name: Install AngularCLI globally | |
run: sudo npm install -g @angular/cli@16 | |
- name: Show ng Version | |
run: ng version | |
- name: Create Angular Project | |
run: sudo ng new angular-auth-oidc-client-test --skip-git | |
- name: npm install RxJs 6 | |
working-directory: ./angular-auth-oidc-client-test | |
run: sudo npm install rxjs@6.5.3 | |
- name: Npm Install & Install Library from local artefact | |
run: | | |
sudo cp -R angular-auth-oidc-client-artefact angular-auth-oidc-client-test/ | |
cd angular-auth-oidc-client-test | |
sudo npm install --unsafe-perm=true | |
sudo ng add ./angular-auth-oidc-client-artefact --authority-url-or-tenant-id "my-authority-url" --flow-type "OIDC Code Flow PKCE using refresh tokens" --use-local-package=true --skip-confirmation | |
- name: Test Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: npm test -- --watch=false --browsers=ChromeHeadless | |
- name: Build Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: sudo npm run build | |
LibWithAngularV15: | |
needs: build_job | |
runs-on: ubuntu-latest | |
name: Angular V15 | |
steps: | |
- name: Setup Node.js | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16 | |
- name: Download Artefact | |
uses: actions/download-artifact@v2 | |
with: | |
name: angular_auth_oidc_client_artefact | |
path: angular-auth-oidc-client-artefact | |
- name: Install AngularCLI globally | |
run: sudo npm install -g @angular/cli@15 | |
- name: Show ng Version | |
run: ng version | |
- name: Create Angular Project | |
run: sudo ng new angular-auth-oidc-client-test --skip-git | |
- name: Npm Install & Install Library from local artefact | |
run: | | |
sudo cp -R angular-auth-oidc-client-artefact angular-auth-oidc-client-test/ | |
cd angular-auth-oidc-client-test | |
sudo npm install --unsafe-perm=true | |
sudo ng add ./angular-auth-oidc-client-artefact --authority-url-or-tenant-id "my-authority-url" --flow-type "OIDC Code Flow PKCE using refresh tokens" --use-local-package=true --skip-confirmation | |
- name: Test Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: npm test -- --watch=false --browsers=ChromeHeadless | |
- name: Build Angular Application | |
working-directory: ./angular-auth-oidc-client-test | |
run: sudo npm run build |