UNPKG

shades

Version:

Lens-like functionality with a lodash-style interface.

107 lines (101 loc) 2.67 kB
version: 2.1 commands: with_cache: description: Run a set of steps with JS dependencies cached. parameters: steps: type: steps cache_key: default: v1 description: >- Add a custom suffix to your cache key in the event you need to work with multiple caches. type: string steps: - restore_cache: key: >- << parameters.cache_key>>-deps-{{ checksum "package-lock.json" }} - restore_cache: key: >- << parameters.cache_key>>-deps-{{ checksum "lens-gen/bower.json" }} - restore_cache: key: >- << parameters.cache_key>>-deps-$CIRCLE_BUILD_NUMBER - steps: << parameters.steps >> - save_cache: key: >- << parameters.cache_key>>-deps-{{ checksum "package-lock.json" }} paths: - node_modules - save_cache: key: >- << parameters.cache_key>>-deps-{{ checksum "lens-gen/bower.json" }} paths: - lens-gen/bower_components - save_cache: key: >- << parameters.cache_key>>-deps-$CIRCLE_BUILD_NUMBER paths: - types - test jobs: build: docker: - image: cimg/node:18.7.0 steps: - checkout - with_cache: steps: - run: name: 'Build JS resources' command: 'npm ci' - run: name: 'Install bower components for purescript' command: 'cd lens-gen; npx bower install' - run: name: 'Compile types' command: 'npm run doc-dev' unit_test: docker: - image: cimg/node:18.7.0 steps: - checkout - with_cache: steps: - run: name: 'Run unit tests' command: 'npm run test:mocha' test_types: docker: - image: cimg/node:18.7.0 steps: - checkout - with_cache: steps: - run: name: 'Run type tests' command: 'npm run test:types' test_lens_generator: docker: - image: cimg/node:18.7.0 steps: - checkout - with_cache: steps: - run: name: 'Run lens generator' command: 'npm run test:lens-generator' # Orchestrate our job run sequence workflows: build_and_test: jobs: - build - unit_test: requires: - build - test_types: requires: - build - test_lens_generator: requires: - build