Refactored on dependency / change #1834
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push, pull_request] | |
jobs: | |
setup-compile-test-and-publish: | |
runs-on: ubuntu-latest | |
services: | |
mariadb: | |
image: bitnami/mariadb:10.11 | |
env: | |
MARIADB_ROOT_PASSWORD: my_root_password_for_tests | |
ports: ['3306:3306'] | |
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 | |
strategy: | |
fail-fast: false | |
matrix: | |
node: | |
- 20 | |
- 22 | |
- 23 | |
include: | |
- node: 20 | |
publish: true | |
continue-on-error: false | |
continue-on-error: ${{ matrix.continue-on-error == true }} | |
container: | |
image: node:${{ matrix.node }}-alpine | |
steps: | |
- name: Checkout the code | |
uses: actions/checkout@v4 | |
- name: Install the dependencies | |
run: yarn install --immutable | |
- name: Check the code formatting | |
run: yarn prettier --check . | |
- name: Compile the code | |
run: yarn run compile | |
- name: Test | |
run: yarn run test | |
env: | |
MARIADB_HOST: mariadb | |
MARIADB_PORT: 3306 | |
MARIADB_ROOT_PASSWORD: my_root_password_for_tests | |
- name: Lint package.json | |
run: yarn workspaces foreach --all --no-private run publint --strict | |
- name: Publish to npmjs | |
if: "matrix.publish == true && startsWith(github.ref, 'refs/tags/')" | |
run: | | |
yarn workspaces foreach --all --no-private exec npm version --no-workspaces-update --no-git-tag-version ${GITHUB_REF#refs/tags/} | |
yarn workspaces foreach --all --no-private npm publish --access public | |
env: | |
YARN_NPM_AUTH_TOKEN: ${{ secrets.NPM_REGISTRY_AUTH_TOKEN }} |