Skip to content

Release Artifact

Release Artifact #15

Workflow file for this run

name: Release Artifact
env:
NODE_VERSION: 18.0.0
RUNID_VERSION_SUFFIX: ${{ github.run_id }}.${{ github.run_attempt }}
on:
release:
types: [created]
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Use Node.js v${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
always-auth: true
- name: Checkout
uses: actions/checkout@v3
- name: Enable Corepack
run: corepack enable
- name: Prepare Yarn 3.4.1
run: corepack prepare [email protected] --activate
- name: Install package dependencies
run: |
cd package
yarn install --frozen-lockfile
- name: Build
run: |
cd package
yarn build
- name: Cache workspace
uses: actions/cache@v3
with:
path: ${{ github.workspace }}
key: ${{ runner.os }}-${{ env.RUNID_VERSION_SUFFIX }}
- name: Archive failure data
if: ${{ failure() }}
uses: actions/upload-artifact@v3
with:
name: failure-data
path: |
/home/runner/.npm/_logs
publish_github:
runs-on: ubuntu-latest
needs: [build]
permissions:
contents: read
packages: write
steps:
- name: Use Node.js v${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
registry-url: 'https://npm.pkg.github.com'
always-auth: true
- name: Fetch cached workspace
uses: actions/cache@v3
with:
path: ${{ github.workspace }}
key: ${{ runner.os }}-${{ env.RUNID_VERSION_SUFFIX }}
- name: Publish to GitHub packages
run: yarn publish --access=public
working-directory: ./package
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Archive failure data
if: ${{ failure() }}
uses: actions/upload-artifact@v3
with:
name: failure-data
path: |
/home/runner/.npm/_logs
publish_npmjs:
runs-on: ubuntu-latest
needs: [build]
permissions:
contents: read
packages: write
steps:
- name: Use Node.js v${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
registry-url: 'https://registry.npmjs.org'
always-auth: true
- name: Fetch cached workspace
uses: actions/cache@v3
with:
path: ${{ github.workspace }}
key: ${{ runner.os }}-${{ env.RUNID_VERSION_SUFFIX }}
- name: Publish to npmjs
run: npm publish --access=public
working-directory: ./package
env:
NODE_AUTH_TOKEN: ${{ secrets.NPMJS_UPLOAD_TOKEN }}
- name: Archive failure data
if: ${{ failure() }}
uses: actions/upload-artifact@v3
with:
name: failure-data
path: |
/home/runner/.npm/_logs