initial build/test steps for nodejs

This commit is contained in:
2024-02-20 22:08:07 -07:00
parent f20c2b24f0
commit 6ac1015718
2 changed files with 72 additions and 5 deletions

View File

@ -10,6 +10,11 @@ executors:
- image: cimg/python:3.11
resource_class: small
nodejs:
docker:
- image: node:18
resource_class: small
jobs:
python-test:
@ -29,13 +34,76 @@ jobs:
- python/dist
- run: pip install twine && twine upload dist/*
nodesjs-test:
executor: nodejs
working_directory: ./zx/lib
steps:
- checkout
- restore_cache:
name: restore pnpm cache
keys:
- pnpm-packages-{{ checksum "pnpm-lock.yaml" }}
- run:
name: pnpm install
command: |
corepack enable
corepack prepare pnpm@latest-8 --activate
pnpm config set store-dir .pnpm-store
pnpm install
- save_cache:
name: save pnpm cache
key: pnpm-packages-{{ checksum "pnpm-lock.yaml" }}
paths:
- .pnpm-store
- run: pnpm test
- run: pnpm lint
nodesjs-publish:
executor: nodejs
working_directory: ./zx/lib
steps:
- checkout
- restore_cache:
name: restore pnpm cache
keys:
- pnpm-packages-{{ checksum "pnpm-lock.yaml" }}
- run:
name: pnpm install
command: |
corepack enable
corepack prepare pnpm@latest-8 --activate
pnpm config set store-dir .pnpm-store
pnpm install
- save_cache:
name: save pnpm cache
key: pnpm-packages-{{ checksum "pnpm-lock.yaml" }}
paths:
- .pnpm-store
- run: pnpm build
- run: pnpm version $(git describe --tags)
workflows:
build:
jobs:
- python-test
- publish:
requires: [test]
- python-publish:
requires: [python-test]
filters:
branches:
only: main
- nodejs-test
- nodejs-publish:
requires: [nodejs-test]
filters:
branches:
only: main