Skip to content

GHPR Permissions

GHPR Permissions #9

name: Super DevSecOps Pipeline
on:
push:
branches: ["main"]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.x, 18.x]
steps:
- name: Checkout Repository to Runner Context
uses: actions/checkout@v4
- name: Use Node version ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: "yarn"
- name: Install Dependencies
run: |
yarn install
test:
runs-on: ubuntu-latest
needs: build
strategy:
matrix:
node-version: [16.x, 18.x]
steps:
- name: Checkout Repository to Runner Context
uses: actions/checkout@v4
- name: Use Node version ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: "yarn"
- name: Test with Jest
run: |
yarn install
yarn test
package-binary:
runs-on: ubuntu-latest
needs: test
permissions:
contents: read
packages: write
strategy:
matrix:
node-version: [16.x, 18.x]
steps:
- name: Checkout Repository to Runner Context
uses: actions/checkout@v4
- name: Use Node version ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
registry-url: "https://npm.pkg.github.com"
cache: "yarn"
scope: "@nishkarshraj"
- name: Publish Binary to GitHub Packages
run: |
yarn install
yarn publish
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}