Skip to content

Commit b1bc2fe

Browse files
committed
ci(config.yml): create workflow of multiple jobs
Add separate jobs for building library, building storybook and running tests. This allows to run certain jobs for pull requests in Github
1 parent a2dcaf2 commit b1bc2fe

File tree

2 files changed

+86
-8
lines changed

2 files changed

+86
-8
lines changed

.circleci/config.yml

Lines changed: 84 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,94 @@
11
version: 2
22
jobs:
3-
build:
3+
install:
44
docker:
5-
- image: 'circleci/node:latest'
5+
- image: 'circleci/node:8'
6+
working_directory: ~/repo
67
steps:
78
- checkout
9+
- restore_cache:
10+
keys:
11+
- v1-npm-deps-{{ checksum "package-lock.json" }}
12+
- v1-npm-deps-
813
- run:
9-
name: install
10-
command: npm install
14+
name: 'Install dependencies'
15+
command: npm ci
16+
- save_cache:
17+
key: v1-npm-deps-{{ checksum "package-lock.json" }}
18+
paths:
19+
- node_modules
20+
- persist_to_workspace:
21+
root: ~/repo
22+
paths:
23+
- node_modules
24+
test:
25+
docker:
26+
- image: 'circleci/node:8'
27+
working_directory: ~/repo
28+
steps:
29+
- checkout
30+
- attach_workspace:
31+
at: ~/repo
32+
- run:
33+
name: 'Tests'
34+
command: npm run test
35+
build-library:
36+
docker:
37+
- image: 'circleci/node:8'
38+
working_directory: ~/repo
39+
steps:
40+
- checkout
41+
- attach_workspace:
42+
at: ~/repo
1143
- run:
12-
name: 'build React95'
44+
name: 'Build library'
1345
command: npm run build
46+
- persist_to_workspace:
47+
root: ~/repo
48+
paths:
49+
- dist
50+
build-storybook:
51+
docker:
52+
- image: 'circleci/node:8'
53+
working_directory: ~/repo
54+
steps:
55+
- checkout
56+
- attach_workspace:
57+
at: ~/repo
58+
- run:
59+
name: 'Build Storybook'
60+
command: npm run build:storybook
61+
- persist_to_workspace:
62+
root: ~/repo
63+
paths:
64+
- docs
65+
deploy:
66+
docker:
67+
- image: 'circleci/node:8'
68+
working_directory: ~/repo
69+
steps:
70+
- checkout
71+
- attach_workspace:
72+
at: ~/repo
1473
- run:
15-
name: release
74+
name: 'Deploy via Semantic Release'
1675
command: npm run semantic-release || true
76+
workflows:
77+
version: 2
78+
build-and-deploy:
79+
jobs:
80+
- install
81+
- test:
82+
requires:
83+
- install
84+
- build-library:
85+
requires:
86+
- install
87+
- build-storybook:
88+
requires:
89+
- install
90+
- deploy:
91+
requires:
92+
- test
93+
- build-library
94+
- build-storybook

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
<h1 align="center">React95</h1>
22

33
<p align="center">
4-
<a href="https://www.npmjs.com/package/react95"><img src="https://flat.badgen.net/npm/dt/react95" alt="NPM"></a>
54
<a href="https://www.npmjs.com/package/react95"><img src="https://flat.badgen.net/npm/v/react95" alt="React95 version"></a>
5+
<a href="https://circleci.com/gh/arturbien/React95"><img src="https://flat.badgen.net/circleci/github/arturbien/React95/master" alt="circleCI build"></a>
6+
<a href="https://www.npmjs.com/package/react95"><img src="https://flat.badgen.net/npm/dt/react95" alt="NPM"></a>
67
<a href="https://www.npmjs.com/package/react95"><img src="https://flat.badgen.net/npm/license/react95" alt="React95 license"></a>
7-
88
</p>
99
<h3 align="center">
1010
<a href="https://arturbien.github.io/React95/?path=/story/select--fixed-width">Components</a> -

0 commit comments

Comments
 (0)