Skip to content

fix: export logger

fix: export logger #35

Workflow file for this run

name: Deployment
on:
push:
branches: [main]
paths-ignore:
- .gitignore
- LICENSE
- README.md
- .github/dependabot.yml
- .github/workflows/ci.yml
- .github/workflows/bump.yml
env:
node_version: "20.x"
jobs:
env:
name: Set Env Vars
runs-on: ubuntu-latest
steps:
- name: Set Env Vars
run: |
matrix='{
"registry":[
{
"token":"NPM_TOKEN",
"url":"https://registry.npmjs.org"
},
{
"token":"GITHUB_TOKEN",
"url":"https://npm.pkg.github.com"
}
]
}'
echo matrix=`echo $matrix | jq -c .` >> $GITHUB_ENV
outputs:
matrix: ${{ env.matrix }}
test:
name: Test Module
runs-on: ubuntu-latest
strategy:
matrix:
node_index: [0, 1]
total_nodes: [2]
fail-fast: false
steps:
- uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.node_version }}
- name: npm install
run: npm install
- name: npm test
run: npm run coverage
env:
CI_NODE_INDEX: ${{ matrix.node_index }}
CI_NODE_TOTAL: ${{ matrix.total_nodes }}
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: true
lint:
name: Lint Module
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.node_version }}
- name: npm install
run: npm install
- name: npm lint
run: npm run lint
publish:
needs: [env, test, lint] # Wait for checks to finish before publishing
name: Publish node package
runs-on: ubuntu-latest
strategy:
matrix: ${{ fromJson(needs.env.outputs.matrix) }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Disallow Concurrent Runs
uses: byu-oit/github-action-disallow-concurrent-runs@v2
with:
token: ${{ github.token }}
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.node_version }}
registry-url: ${{ matrix.registry.url }}
scope: '@byu-oit'
- name: npm install
run: npm install
env:
NODE_AUTH_TOKEN: ${{ secrets[matrix.registry.token] }}
# The prepublishOnly script builds the package before publishing
- name: Publish
run: npm publish --access=public
env:
NODE_AUTH_TOKEN: ${{ secrets[matrix.registry.token] }}
# https://github.com/marketplace/actions/release-drafter
release:
name: Publish Release
runs-on: ubuntu-latest
needs: [publish]
steps:
- uses: actions/checkout@v4
- id: version
run: echo ::set-output name=version::$(node -p 'require("./package.json").version')
- name: Publish Release
uses: release-drafter/release-drafter@v6
with:
publish: true
version: ${{ steps.version.outputs.version }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}