(feat) O3-3367 Add support for person attributes #1570
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: OpenMRS CI | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
release: | |
types: | |
- created | |
env: | |
ESM_NAME: 'openmrs-esm-form-engine-lib' | |
JS_NAME: 'openmrs-esm-form-engine-lib.js' | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
env: | |
TURBO_API: 'http://127.0.0.1:9080' | |
TURBO_TOKEN: ${{ secrets.TURBO_SERVER_TOKEN }} | |
TURBO_TEAM: ${{ github.repository_owner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '18' | |
- name: Cache dependencies | |
id: cache | |
uses: actions/cache@v4 | |
with: | |
path: '**/node_modules' | |
key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
- name: Install dependencies | |
if: steps.cache.outputs.cache-hit != 'true' | |
run: yarn | |
- name: Setup local cache server for Turborepo | |
uses: felixmosh/turborepo-gh-artifacts@v3 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
server-token: ${{ secrets.TURBO_SERVER_TOKEN }} | |
- name: Run tests, lint and typechecking | |
run: yarn verify | |
- name: Run build | |
run: yarn turbo run build --concurrency=5 | |
- name: Upload Artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: dist | |
path: | | |
dist | |
overwrite: true | |
pre_release: | |
runs-on: ubuntu-latest | |
needs: build | |
if: ${{ github.event_name == 'push' }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download Artifacts | |
uses: actions/download-artifact@v4 | |
- name: Use Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '18' | |
registry-url: 'https://registry.npmjs.org' | |
- run: yarn install | |
- run: sed -i -e "s/\(\"version\":\\s\+\"\([0-9]\+\.\?\)\+\)/\1-pre.${{ github.run_number }}/" 'package.json' | |
- run: | | |
yarn config set npmAlwaysAuth true | |
yarn config set npmAuthToken ${{ secrets.NPM_AUTH_TOKEN }} | |
- run: yarn npm publish --tag next | |
release: | |
runs-on: ubuntu-latest | |
needs: build | |
if: ${{ github.event_name == 'release' }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download Artifacts | |
uses: actions/download-artifact@v4 | |
- name: Use Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '18' | |
registry-url: 'https://registry.npmjs.org' | |
- run: yarn | |
- run: yarn config set npmAuthToken "${NODE_AUTH_TOKEN}" && yarn npm publish --access public --tag latest | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }} |