Resolve NPM audit issues #265
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: "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-react :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-react :boom:" | |
SLACK_FOOTER: "No packages published." | |
MSG_MINIMAL: true | |
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} |