@@ -3,148 +3,131 @@ version: 2
33# Adapted from https://github.com/circleci/circleci-docs/blob/master/.circleci/config.yml
44# I'd love to find docs on this syntax.
55references :
6- js_deps_paths : &js_deps_paths
7- - node_modules/
8- - gatsby-theme-patternfly-org/node_modules/
9- - patternfly-org-demo/node_modules/
10- - patternfly-org-demo/patternfly-next/node_modules/
11- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-docs/node_modules/
12- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-docs/plugins/gatsby-transformer-react-docgen-typescript/node_modules/
13- build_cache_paths : &build_cache_paths
14- - patternfly-org-demo/patternfly-react/.cache/
15- - patternfly-org-demo/patternfly-react/packages/patternfly-3/patternfly-react-extensions/dist/
16- - patternfly-org-demo/patternfly-react/packages/patternfly-3/patternfly-react-wooden-tree/dist/
17- - patternfly-org-demo/patternfly-react/packages/patternfly-3/patternfly-react/dist/
18- - patternfly-org-demo/patternfly-react/packages/patternfly-3/react-console/dist/
19- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-charts/dist/
20- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-core/dist/
21- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-inline-edit-extension/dist/
22- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-styled-system/dist/
23- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-styles/css/
24- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-styles/dist/
25- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-table/dist/
26- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-tokens/dist/
27- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-topology/dist/
28- - patternfly-org-demo/patternfly-react/packages/patternfly-4/react-virtualized-extension/dist/
29- - patternfly-org-demo/patternfly-react/packages/react-icons/dist/
30- js_deps_cache_key : &js_deps_cache_key
31- js-deps-v{{.Environment.CACHE_VERSION}}-{{checksum "yarn.lock"}}
32- build_cache_key : &build_cache_key
33- build-cache-v{{.Environment.CACHE_VERSION}}-{{checksum "yarn.lock"}}
346 attach_workspace : &attach_workspace
357 attach_workspace :
368 at : ~/project
37-
389workflows :
3910 version : 2
4011 install_build_deploy :
4112 jobs :
4213 - install
14+ - build_next :
15+ requires :
16+ - install
4317 - build_react :
4418 requires :
4519 - install
46- - build_next :
20+ - build_org :
4721 requires :
4822 - install
49- - upload_docs :
23+ - upload_previews :
5024 requires :
5125 - build_react
5226 - build_next
27+ - build_org
5328 - deploy :
5429 requires :
5530 - build_react
5631 - build_next
32+ - build_org
5733 filters :
5834 branches :
5935 only : master
6036jobs :
6137 install :
6238 docker :
63- - image : circleci/node:10
39+ - image : circleci/node:12
6440 steps :
6541 - checkout
6642 - run :
6743 name : Pull Submodules
6844 command : |
6945 git submodule init
7046 git submodule update --remote
47+ - run :
48+ name : Install
49+ command : yarn install
7150 - persist_to_workspace :
7251 root : ~/project
7352 paths :
7453 - " *"
75- - restore_cache :
76- keys :
77- - *js_deps_cache_key
54+ build_next :
55+ docker :
56+ - image : circleci/node:12
57+ steps :
58+ - *attach_workspace
7859 - run :
79- name : Conditional install
80- command : if [ ! -d node_modules ]; then yarn install --frozen-lockfile; fi
81- - save_cache :
82- paths : *js_deps_paths
83- key : *js_deps_cache_key
60+ name : Build patternfly-next docs
61+ command : yarn build:next
62+ - persist_to_workspace :
63+ root : ~/project
64+ paths :
65+ - patternfly-org-demo/patternfly-next/public/
8466 build_react :
8567 docker :
86- - image : circleci/node:10
68+ - image : circleci/node:12
8769 steps :
8870 - *attach_workspace
89- - restore_cache :
90- keys :
91- - *js_deps_cache_key
92- - restore_cache :
93- keys :
94- - *build_cache_key
9571 - run :
96- name : Incremental Build Dist
72+ name : Build patternfly-react docs
9773 command : yarn build:react
98- - save_cache :
99- paths : *build_cache_paths
100- key : *build_cache_key
101- - run :
102- name : Build Docs
103- command : yarn build:react:docs
10474 - persist_to_workspace :
10575 root : ~/project
10676 paths :
107- - patternfly-org-demo/patternfly-react/packages/react-docs/public/
108- build_next :
109- docker :
110- - image : circleci/node:10
77+ - patternfly-org-demo/patternfly-react/packages/patternfly-4/ react-docs/public/
78+ build_org :
79+ machine :
80+ image : circleci/classic:latest
11181 steps :
11282 - *attach_workspace
113- - restore_cache :
114- keys :
115- - *js_deps_cache_key
11683 - run :
117- name : Build Dist
118- command : yarn build:next
84+ name : Install node@12 (need right version for `yarn`)
85+ command : |
86+ set +e
87+ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.5/install.sh | bash
88+ export NVM_DIR="/opt/circleci/.nvm"
89+ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
90+ nvm install v12
91+ nvm alias default v12
92+
93+ # Each step uses the same `$BASH_ENV`, so need to modify it
94+ echo 'export NVM_DIR="/opt/circleci/.nvm"' >> $BASH_ENV
95+ echo "[ -s \"$NVM_DIR/nvm.sh\" ] && . \"$NVM_DIR/nvm.sh\"" >> $BASH_ENV
96+ - run :
97+ name : Install yarn
98+ command : curl -o- -L https://yarnpkg.com/install.sh | bash
11999 - run :
120- name : Build Docs
121- command : yarn build:next:docs
100+ name : Build patternfly.org docs
101+ command : PATH="$HOME/. yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH" yarn build:org
122102 - persist_to_workspace :
123103 root : ~/project
124104 paths :
125- - patternfly-org-demo/patternfly-next/ public/
126- upload_docs :
105+ - patternfly-org-demo/public/
106+ upload_previews :
127107 docker :
128108 - image : circleci/node:10
129109 steps :
130110 - *attach_workspace
131- - restore_cache :
132- keys :
133- - *js_deps_cache_key
134111 - run :
135112 name : Upload docs
136- command : ./ circleci/upload-docs .sh
113+ command : .circleci/upload-preview .sh
137114 deploy :
138115 docker :
139- - image : circleci/node:10
116+ - image : circleci/node:12
140117 steps :
141118 - *attach_workspace
142- - restore_cache :
143- keys :
144- - *js_deps_cache_key
119+ - run :
120+ name : Install AWS CLI
121+ command : |
122+ sudo apt-get update
123+ sudo apt-get install -y -qq python-pip libpython-dev
124+ pip install --user awscli
125+ - run :
126+ name : Sync to staging
127+ command : .circleci/upload-staging.sh
145128 - run :
146129 name : Avoid Unknown Host for github.com
147130 command : mkdir ~/.ssh/ && echo -e "Host github.com\n\tStrictHostKeyChecking no\n" > ~/.ssh/config
148131 - run :
149132 name : Deploy to NPM
150- command : echo "You wish."
133+ command : npx semantic-release
0 commit comments