lion/.github/workflows/release.yml
2022-10-20 10:20:12 +02:00

78 lines
1.9 KiB
YAML

name: Release
on:
push:
branches:
- master
jobs:
browser-tests:
name: Browser tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Node 16.x
uses: actions/setup-node@v1
with:
node-version: 16.x
- name: Install Dependencies
run: npm install --ci
- uses: microsoft/playwright-github-action@v1
- name: Test
run: npm run test:browser
node-tests:
name: Node tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
node-version: [16.x]
os: [ubuntu-latest]
steps:
- uses: actions/checkout@v2
- name: Setup Node ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Install Dependencies
run: npm install --ci
- name: Test
run: npm run test:node
release:
# Prevents changesets action from creating a PR on forks
if: github.repository == 'ing-bank/lion'
name: Release
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@master
with:
# This makes Actions fetch all Git history so that Changesets can generate changelogs with the correct commits
fetch-depth: 0
- name: Setup Node.js 16.x
uses: actions/setup-node@master
with:
node-version: 16.x
registry-url: 'https://registry.npmjs.org'
- name: Install Dependencies
run: npm install --ci
- name: Create Release Pull Request or Publish to npm
id: changesets
uses: changesets/action@v1
with:
# This expects you to have a script called release which does a build for your packages and calls changeset publish
publish: npm run release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}