diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..58eb1f9 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,49 @@ +# JavaScript Node CircleCI 2.0 configuration file +# +# Check https://circleci.com/docs/2.0/language-javascript/ for more details +# +version: 2 + +commands: + create_concatenated_package_lock: + description: "Concatenate all package-lock.json files recognized by lerna.js into single file. File is used as checksum source for part of caching key." +parameters: + filename: + type: string + steps: + - run: + name: Combine package-lock.json files to single file + command: npx lerna list -p -a | awk -F packages '{printf "\"packages%s/package-lock.json\" ", $2}' | xargs cat > << parameters.filename >> +jobs: + build: + docker: + # specify the version you desire here + - image: circleci/node:7.10 + + # Specify service dependencies here if necessary + # CircleCI maintains a library of pre-built images + # documented at https://circleci.com/docs/2.0/circleci-images/ + # - image: circleci/mongo:3.4.4 + + working_directory: ~/node-go + + steps: + - checkout + + # Download and cache dependencies + - restore_cache: + keys: + - v1-dependencies-{{ checksum "package-lock.json" }} + # fallback to using the latest cache if no exact match is found + + + - run: yarn install + + - save_cache: + paths: + - node_modules + key: + v1-dependencies-{{ checksum "package-lock.json" }} + + # run tests! + - run: yarn test \ No newline at end of file