Skip to content

Commit 3037df3

Browse files
Merge pull request #4 from downplay/continuous-deployment
Continuous deployment, tagged commits get published to npm (?)
2 parents 07edbe4 + 1630613 commit 3037df3

13 files changed

Lines changed: 10139 additions & 23024 deletions

File tree

.circleci/config.yml

Lines changed: 76 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
docker:
99
# specify the version you desire here
1010
- image: cypress/base:8
11-
11+
1212
# Specify service dependencies here if necessary
1313
# CircleCI maintains a library of pre-built images
1414
# documented at https://circleci.com/docs/2.0/circleci-images/
@@ -22,54 +22,53 @@ jobs:
2222
# Download and cache dependencies
2323
- restore_cache:
2424
keys:
25-
- v2a-dependencies-{{ checksum "package.json" }}
25+
- v3a-dependencies-{{ checksum "package.json" }}
2626
# fallback to using the latest cache if no exact match is found
27-
- v2a-dependencies-
27+
- v3a-dependencies-
2828
- restore_cache:
2929
keys:
30-
- v2b-dependencies-{{ checksum "demo/package.json" }}
30+
- v3b-dependencies-{{ checksum "demo/package.json" }}
3131
# fallback to using the latest cache if no exact match is found
32-
- v2b-dependencies-
32+
- v3b-dependencies-
3333
- restore_cache:
3434
keys:
35-
- v2c-dependencies-{{ checksum "packages/jarl-react/package.json" }}
35+
- v3c-dependencies-{{ checksum "packages/jarl-react/package.json" }}
3636
# fallback to using the latest cache if no exact match is found
37-
- v2c-dependencies-
37+
- v3c-dependencies-
3838
- restore_cache:
3939
keys:
40-
- v2d-dependencies-{{ checksum "packages/jarl-react-native/package.json" }}
40+
- v3d-dependencies-{{ checksum "packages/jarl-react-native/package.json" }}
4141
# fallback to using the latest cache if no exact match is found
42-
- v2d-dependencies-
42+
- v3d-dependencies-
4343
- restore_cache:
4444
keys:
45-
- v2e-dependencies-{{ checksum "packages/jarl-react-redux/package.json" }}
45+
- v3e-dependencies-{{ checksum "packages/jarl-react-redux/package.json" }}
4646
# fallback to using the latest cache if no exact match is found
47-
- v2e-dependencies-
47+
- v3e-dependencies-
4848

49-
- run: yarn install
50-
- run: yarn bootstrap
49+
- run: yarn
5150

5251
- save_cache:
5352
paths:
5453
- node_modules
55-
key: v2a-dependencies-{{ checksum "package.json" }}
54+
key: v3a-dependencies-{{ checksum "package.json" }}
5655
- save_cache:
5756
paths:
5857
- demo/node_modules
59-
key: v2b-dependencies-{{ checksum "demo/package.json" }}
58+
key: v3b-dependencies-{{ checksum "demo/package.json" }}
6059
- save_cache:
6160
paths:
6261
- packages/jarl-react/node_modules
63-
key: v2c-dependencies-{{ checksum "packages/jarl-react/package.json" }}
62+
key: v3c-dependencies-{{ checksum "packages/jarl-react/package.json" }}
6463
- save_cache:
6564
paths:
6665
- packages/jarl-react-native/node_modules
67-
key: v2d-dependencies-{{ checksum "packages/jarl-react-native/package.json" }}
66+
key: v3d-dependencies-{{ checksum "packages/jarl-react-native/package.json" }}
6867
- save_cache:
6968
paths:
7069
- packages/jarl-react-redux/node_modules
71-
key: v2e-dependencies-{{ checksum "packages/jarl-react-redux/package.json" }}
72-
70+
key: v3e-dependencies-{{ checksum "packages/jarl-react-redux/package.json" }}
71+
7372
# run tests!
7473
- run: yarn lint
7574
- run: yarn build
@@ -87,3 +86,61 @@ jobs:
8786
- run:
8887
command: yarn ci-stop
8988
working_directory: demo
89+
90+
# Deploy this bad boy
91+
# - setup_remote_docker
92+
93+
publish:
94+
docker:
95+
- image: cypress/base:8
96+
# Could use a different image but caches will match (?) the cypress image
97+
# - image: circleci/node:8.11.1
98+
working_directory: ~/repo
99+
steps:
100+
- checkout
101+
# Download and cache dependencies
102+
- restore_cache:
103+
keys:
104+
- v3a-dependencies-{{ checksum "package.json" }}
105+
# fallback to using the latest cache if no exact match is found
106+
- v3a-dependencies-
107+
- restore_cache:
108+
keys:
109+
- v3b-dependencies-{{ checksum "demo/package.json" }}
110+
# fallback to using the latest cache if no exact match is found
111+
- v3b-dependencies-
112+
- restore_cache:
113+
keys:
114+
- v3c-dependencies-{{ checksum "packages/jarl-react/package.json" }}
115+
# fallback to using the latest cache if no exact match is found
116+
- v3c-dependencies-
117+
- restore_cache:
118+
keys:
119+
- v3d-dependencies-{{ checksum "packages/jarl-react-native/package.json" }}
120+
# fallback to using the latest cache if no exact match is found
121+
- v3d-dependencies-
122+
- restore_cache:
123+
keys:
124+
- v3e-dependencies-{{ checksum "packages/jarl-react-redux/package.json" }}
125+
# fallback to using the latest cache if no exact match is found
126+
- v3e-dependencies-
127+
128+
- run: yarn
129+
- run: yarn build
130+
- run: echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc
131+
- run: yarn ci-publish
132+
133+
workflows:
134+
version: 2
135+
tagged-build:
136+
jobs:
137+
- build
138+
# Publish successful builds only on master with version tag
139+
- publish:
140+
requires:
141+
- build
142+
filters:
143+
branches:
144+
only: master
145+
tags:
146+
only: /^v[0-9]+(\.[0-9]+)*/

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
* Added new E2E tests and fixed all the broken ones
1212
* Started adding tests to RN package
1313
* Improved some of the local dev scripts
14+
* Moved to Yarn workspaces
15+
* Continuous deployment to npm
1416

1517
### Bugs
1618

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# JARL React
1+
# JARL
22

33
Just Another Router Library for React.
44

demo/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
"cypress": "^2.1.0",
5454
"documentation": "^6.1.0",
5555
"extract-text-webpack-plugin": "^4.0.0-beta.0",
56+
"fs-extra": "^5.0.0",
5657
"npm-run-all": "^4.1.2",
5758
"opn": "^5.2.0",
5859
"postcss-loader": "^2.1.3",

lerna.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
2-
"lerna": "2.5.1",
3-
"packages": [
4-
"packages/jarl-react",
5-
"packages/jarl-react-redux",
6-
"packages/jarl-react-native",
7-
"demo"
8-
],
9-
"version": "1.0.0-alpha.4"
2+
"lerna": "2.5.1",
3+
"version": "1.0.0-alpha.4",
4+
"packages": [
5+
"packages/jarl-react",
6+
"packages/jarl-react-redux",
7+
"packages/jarl-react-native",
8+
"demo"
9+
]
1010
}

package.json

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,10 @@
88
"test": "lerna run test --stream",
99
"ci-test": "lerna run ci-test --stream",
1010
"ci-e2e": "lerna run ci-e2e --stream",
11+
"ci-publish": "lerna exec -- npm publish",
1112
"lint": "lerna run lint --stream",
12-
"bootstrap": "lerna bootstrap"
13+
"bootstrap": "lerna bootstrap",
14+
"tag-version": "lerna publish --skip-npm"
1315
},
1416
"devDependencies": {
1517
"babel-eslint": "^8.2.2",
@@ -20,5 +22,15 @@
2022
"eslint-plugin-jsx-a11y": "^6.0.2",
2123
"eslint-plugin-react": "^7.3.0",
2224
"lerna": "^2.10.0"
23-
}
25+
},
26+
"workspaces": {
27+
"packages": [
28+
"packages/jarl-react",
29+
"packages/jarl-react-redux",
30+
"packages/jarl-react-native",
31+
"demo"
32+
],
33+
"nohoist": ["**"]
34+
},
35+
"version": "1.0.0-alpha-5"
2436
}

0 commit comments

Comments
 (0)