Skip to content

blui-5050 github actions #52

blui-5050 github actions

blui-5050 github actions #52

Workflow file for this run

name: CI Run
on:
push:
branches: [ "dev", "master" ]
pull_request:
branches: [ "dev", "master" ]
pull_request_target:
types:
- opened
branches:
- '*/*'
permissions:
pull-requests: write
contents: read
jobs:
prettier_lint:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'
- run: yarn initialize
- run: yarn install:dependencies
- run: yarn prettier
working-directory: components
- run: yarn prettier
working-directory: demos/showcase
- run: yarn prettier
working-directory: docs
- run: yarn lint
working-directory: components
- run: yarn lint
working-directory: demos/showcase
- run: yarn lint
working-directory: docs
unit_test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'
- run: yarn install:dependencies
- run: yarn test --coverage
- name: Upload to Codecov
uses: codecov/codecov-action@v3
with:
directory: ./components/coverage/
files: clover.xml
flags: unittests
name: codecov-report
verbose: true
build_library:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'
- run: yarn --frozen-lockfile
working-directory: components
- run: yarn build
- name: Save build
uses: actions/upload-artifact@v4
with:
name: dist
if-no-files-found: error
path: dist
test_artifacts:
runs-on: ubuntu-latest
needs: build_library
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Download the dist folder
uses: actions/download-artifact@v3
with:
name: dist
path: dist
- run: yarn test:artifacts
npm_pack:
runs-on: ubuntu-latest
needs: build_library
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Download the dist folder
uses: actions/download-artifact@v3
with:
name: dist
path: dist
- run: npm pack
working-directory: dist
- name: Save npm pack
uses: actions/upload-artifact@v4
with:
name: tarball
if-no-files-found: error
path: dist
build_showcase:
runs-on: ubuntu-latest
needs: npm_pack
strategy:
matrix:
node-version: [18.x]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'
- run: git submodule init && git submodule update
- run: yarn --frozen-lockfile
working-directory: demos/showcase
- name: Download tarball
uses: actions/download-artifact@v3
with:
name: tarball
path: tarball
- run: |
PACKAGED_VERSION=`node -p "require('./tarball/package.json').version"`
yarn add ./tarball/brightlayer-ui-react-components-$PACKAGED_VERSION.tgz
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'
- run: yarn build
working-directory: demos/showcase
build_reactdev:
runs-on: ubuntu-latest
needs: npm_pack
strategy:
matrix:
node-version: [18.x]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Check branch ref
run: |
if [ ${{ github.event.pull_request.base.ref == 'dev' }} ]; then
export PUBLIC_URL=/react-dev
export REACT_APP_BRANCH=dev
export REACT_APP_GAID=G-JY7JTQ87MB
echo "dev branch"
elif [ ${{ github.event.pull_request.base.ref == 'master' }} ]; then
export PUBLIC_URL=/react
export REACT_APP_BRANCH=master
export REACT_APP_GAID=G-Y2TXKYRFM0
echo "master branch"
else
echo "error exporting config"
fi
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'
- run: yarn --frozen-lockfile
working-directory: docs
- name: Download tarball
uses: actions/download-artifact@v3
with:
name: tarball
path: tarball
- run: |
PACKAGED_VERSION=`node -p "require('./tarball/package.json').version"`
yarn add ./tarball/brightlayer-ui-react-components-$PACKAGED_VERSION.tgz
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'
- run: yarn && yarn build
working-directory: docs
- name: Save build
uses: actions/upload-artifact@v4
with:
name: build
if-no-files-found: error
path: docs/build