From 2c1e5d2b223a267179954cfe54592a7ba102de10 Mon Sep 17 00:00:00 2001 From: Brian Vaughn Date: Wed, 1 Jan 2020 07:58:47 -0800 Subject: [PATCH] Build and store DevTools artifacts in Circle CI (#17746) --- .circleci/config.yml | 23 +++++++++++++++-- .../pack_and_store_devtools_artifacts.sh | 25 +++++++++++++++++++ 2 files changed, 46 insertions(+), 2 deletions(-) create mode 100755 scripts/circleci/pack_and_store_devtools_artifacts.sh diff --git a/.circleci/config.yml b/.circleci/config.yml index 21b878024a..584f8c1113 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -193,6 +193,22 @@ jobs: - dist - sizes/*.json + build_devtools_and_process_artifacts: + docker: *docker + environment: *environment + parallelism: 20 + steps: + - checkout + - attach_workspace: *attach_workspace + - *restore_yarn_cache + - *run_yarn + - run: + environment: + RELEASE_CHANNEL: experimental + command: ./scripts/circleci/pack_and_store_devtools_artifacts.sh + - store_artifacts: + path: ./build/devtools.tgz + # These jobs are named differently so we can distinguish the stable and # and experimental artifacts process_artifacts: *process_artifacts @@ -267,7 +283,7 @@ jobs: RELEASE_CHANNEL: experimental command: yarn test-build --maxWorkers=2 - test_build_devtools: + test_devtools: docker: *docker environment: *environment steps: @@ -402,7 +418,10 @@ workflows: - lint_build: requires: - build_experimental - - test_build_devtools: + - test_devtools: + requires: + - build_experimental + - build_devtools_and_process_artifacts: requires: - build_experimental diff --git a/scripts/circleci/pack_and_store_devtools_artifacts.sh b/scripts/circleci/pack_and_store_devtools_artifacts.sh new file mode 100755 index 0000000000..77a36fc299 --- /dev/null +++ b/scripts/circleci/pack_and_store_devtools_artifacts.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +set -e + +mkdir -p build/devtools + +cd packages/react-devtools +npm pack +mv ./react-devtools*.tgz ../../build/devtools/ + +cd ../react-devtools-core +npm pack +mv ./react-devtools-core*.tgz ../../build/devtools/ + +cd ../react-devtools-inline +npm pack +mv ./react-devtools-inline*.tgz ../../build/devtools/ + +cd ../react-devtools-extensions +yarn build +mv ./chrome/build/ReactDevTools.zip ../../build/devtools/chrome-extension.zip +mv ./firefox/build/ReactDevTools.zip ../../build/devtools/firefox-extension.zip + +# Compress all DevTools artifacts into a single tarball for easy download +tar -zcvf ../../build/devtools.tgz ../../build/devtools \ No newline at end of file