diff --git a/.circleci/config.yml b/.circleci/config.yml index 4be16be12997b..c1735f674f668 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -40,3 +40,6 @@ jobs: key: v1-node-{{ arch }}-{{ .Branch }}-{{ checksum "yarn.lock" }} paths: - node_modules + + - store_artifacts: + path: ./node_modules.tgz \ No newline at end of file diff --git a/scripts/circleci/pack_and_store_artifact.sh b/scripts/circleci/pack_and_store_artifact.sh new file mode 100755 index 0000000000000..0475feeba229f --- /dev/null +++ b/scripts/circleci/pack_and_store_artifact.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +set -e + +# NPM pack all modules to ensure we archive the correct set of files +for dir in ./build/node_modules/* ; do + npm pack "$dir" +done + +# Wrap everything in a single zip file for easy download by the publish script +tar -zcvf ./node_modules.tgz ./*.tgz \ No newline at end of file diff --git a/scripts/circleci/test_entry_point.sh b/scripts/circleci/test_entry_point.sh index 6167ed8d8fe82..c452eebc00c45 100755 --- a/scripts/circleci/test_entry_point.sh +++ b/scripts/circleci/test_entry_point.sh @@ -30,6 +30,7 @@ if [ $((2 % CIRCLE_NODE_TOTAL)) -eq "$CIRCLE_NODE_INDEX" ]; then COMMANDS_TO_RUN+=('yarn test-build-prod --maxWorkers=2') COMMANDS_TO_RUN+=('node ./scripts/tasks/danger') COMMANDS_TO_RUN+=('./scripts/circleci/upload_build.sh') + COMMANDS_TO_RUN+=('./scripts/circleci/pack_and_store_artifact.sh') fi if [ $((3 % CIRCLE_NODE_TOTAL)) -eq "$CIRCLE_NODE_INDEX" ]; then