Skip to content

docs(release): design system packages #2095

docs(release): design system packages

docs(release): design system packages #2095

name: Continuous Deployment
on:
push:
branches:
- main
pull_request:
jobs:
continuous-integration:
name: Continuous integration
runs-on: ubuntu-latest
steps:
- name: Download code from GitHub
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Install pnpm package manager
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- name: Set up Node.js version
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4.0.3
with:
node-version-file: .nvmrc
cache: pnpm
- name: Install dependencies specified in package.json
run: |
pnpm install
pnpm ls --recursive
- name: Run the lint script in package.json scripts
run: |
pnpm run --if-present lint
# - name: "Continuous Integration: public code validator"
# uses: nl-design-system/publiccode-parser-action@latest
- name: Run the build script in package.json scripts
run: |
pnpm run --if-present build
- name: Run the test script in package.json scripts
run: |
pnpm run --if-present test
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@e28ff129e5465c2c0dcc6f003fc735cb6ae0c673 # v4.0.1
with:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Publish to Chromatic
uses: chromaui/action@fdbe7756d4dbf493e2fbb822df73be7accd07e1c # v11.7.0
if: |
github.event.pull_request.draft == false &&
github.actor != 'dependabot[bot]'
with:
autoAcceptChanges: main
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
storybookBuildDir: packages/storybook/dist/
- name: Upload the Storybook artifact from the build step
uses: actions/upload-artifact@0b2256b8c012f0828dc542b3febcab082c67f72b # v4.3.4
with:
name: storybook
path: packages/storybook/dist/
retention-days: 1
publish-storybook:
runs-on: ubuntu-latest
needs: continuous-integration
if: github.ref == 'refs/heads/main'
steps:
- name: Download code from GitHub
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Download the Storybook artifact from the "Build" job
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: storybook
path: packages/storybook/dist/
- name: Continuous Deployment to GitHub Pages
uses: JamesIves/github-pages-deploy-action@94f3c658273cf92fb48ef99e5fbc02bd2dc642b2 # v4.6.3
with:
branch: gh-pages
folder: packages/storybook/dist/
publish-npm:
runs-on: ubuntu-latest
needs: continuous-integration
if: github.ref == 'refs/heads/main'
steps:
- name: Download code from GitHub
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
token: ${{ secrets.GH_TOKEN }}
- name: Install pnpm package manager
uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- name: Set up Node.js version
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4.0.3
with:
node-version-file: .nvmrc
- name: Install dependencies specified in package.json
run: |
pnpm install
pnpm ls --recursive
- name: Run the build script in package.json
run: |
pnpm run --if-present build
- name: Publish to GitHub repository
uses: changesets/action@aba318e9165b45b7948c60273e0b72fce0a64eb9 # v1.4.7
id: changeset
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
GIT_AUTHOR_EMAIL: ${{ secrets.GIT_AUTHOR_EMAIL }}
GIT_AUTHOR_NAME: "NL Design System"
GIT_COMMITTER_EMAIL: ${{ secrets.GIT_COMMITTER_EMAIL }}
GIT_COMMITTER_NAME: "NL Design System"
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
with:
commit: "docs(release): design system packages"
setupGitUser: false
title: "docs(release): design system packages"
publish: "pnpm run publish"