Skip to content

Export type Options from component as ComponentOptions. #74

Export type Options from component as ComponentOptions.

Export type Options from component as ComponentOptions. #74

Workflow file for this run

name: CI
on: [push]
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 20
- name: Cache Node Modules
id: cache-node
uses: actions/cache@v3
with:
path: "**/node_modules"
key: cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-${{ github.run_id }}
restore-keys: |
cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-${{ github.run_id }}
cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-
- name: Install NPM Dependencies
run: npm ci
- name: Build JavaScript
run: |
npm run build
- name: Upload Package Artifacts
uses: actions/upload-artifact@v3
with:
name: artifacts
path: |
lib/**
if-no-files-found: error
test:
name: "Test: ${{ matrix.os }} (node@${{ matrix.node_version }})"
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
node_version: [20]
fail-fast: false
needs: [build]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup node@${{ matrix.node_version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node_version }}
- name: Cache Node Modules
id: cache-node
uses: actions/cache@v3
with:
path: "**/node_modules"
key: cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-${{ github.run_id }}
restore-keys: |
cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-${{ github.run_id }}
cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-
- name: Install NPM Dependencies
run: npm ci
env:
CI: true
- name: Run tests
run: npm run test
env:
CI: true
changelog:
name: Changelog PR or Release
if: ${{ github.ref_name == 'main' && github.repository_owner == 'pionjs' }}
needs: [test]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 20
- name: Cache Node Modules
id: cache-node
uses: actions/cache@v3
with:
path: "**/node_modules"
key: cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-${{ github.run_id }}
restore-keys: |
cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-${{ github.run_id }}
cache-node_modules-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}-
- name: Install NPM Dependencies
run: npm ci
- name: Build JavaScript
run: |
npm run build
- name: Create Release Pull Request or Publish to npm
id: changesets
uses: changesets/action@v1
with:
publish: npm run changeset publish
commit: "[ci] release"
title: "[ci] release"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}