Fix NPM audit issues #201
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: Continuous Integration | |
on: | |
pull_request: | |
branches: ["*"] | |
push: | |
branches: ["*"] | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
build: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: "Install node & npm" | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 18.x | |
- name: "Install repository dependencies" | |
run: npm ci | |
- name: "Acceptance tests (start web server)" | |
run: npm run start & | |
env: | |
NODE_OPTIONS: --openssl-legacy-provider | |
- name: "Check code style" | |
run: find . -type f \( -iname \*.js -o -iname \*.jsx -o -iname \*.ts -o -iname \*.tsx \) | grep -v node_modules | grep -v /dist/ | xargs ./node_modules/.bin/prettier --check | |
# Note: we put other steps between the 'npm start' and the test runs, just to make time for the server to spin-up. | |
- name: "Tests" | |
run: npm test | |
- name: "Publish" | |
if: github.ref == 'refs/heads/main' | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
AWS_EC2_METADATA_DISABLED: true | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Automatically generated by GitHub / is not in our secrets. | |
NPM_AUTH_TOKEN: ${{ secrets.BYTESCALE_NPM_AUTH_TOKEN }} | |
NODE_OPTIONS: --openssl-legacy-provider | |
run: | | |
npm set //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN} | |
npm run publish:executeIfReleaseCommit | |
- name: "Notification on success" | |
if: github.ref == 'refs/heads/main' | |
uses: rtCamp/action-slack-notify@v2 | |
env: | |
SLACK_CHANNEL: deployments | |
SLACK_COLOR: "#17BB5E" | |
SLACK_TITLE: "Built: @bytescale/upload-widget-vue :rocket:" | |
SLACK_FOOTER: "This package was successfully built." | |
MSG_MINIMAL: true | |
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} | |
- name: "Notification on failure" | |
if: github.ref == 'refs/heads/main' && failure() | |
uses: rtCamp/action-slack-notify@v2 | |
env: | |
SLACK_CHANNEL: deployments | |
SLACK_COLOR: "#BB1717" | |
SLACK_TITLE: "Failed: @bytescale/upload-widget-vue :boom:" | |
SLACK_FOOTER: "No packages published." | |
MSG_MINIMAL: true | |
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} |