-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathconfig.yml
More file actions
163 lines (149 loc) · 3.53 KB
/
config.yml
File metadata and controls
163 lines (149 loc) · 3.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
version: 2
reference:
workspace: &workspace ~/project
docker_image: &docker_image circleci/ruby:2.5.1
container_config: &container_config
docker:
- image: *docker_image
working_directory: *workspace
config_environment: &config_environment
run:
name: Set up environment
command: source ci/scripts/install.sh
rake_test: &rake_test
run:
name: Run tests and linter
command: bundle exec rake
build_gem: &build_gem
run:
name: Build gem
command: gem build fastlane-plugin-test_report.gemspec
deploy_beta: &deploy_beta
run:
name: Deploy beta version
command: echo "deploying beta"
release: &release
run:
name: Release
command: echo "running release"
documentation: &documentation
run:
name: Send documentation to gh-pages
command: source ci/scripts/documentation.sh
restore_yarn_cache: &restore_yarn_cache
restore_cache:
keys:
- yarn-dependencies-{{ checksum "yarn.lock" }}
save_yarn_cache: &save_yarn_cache
save_cache:
paths:
- ./node_modules/
key: yarn-dependencies-{{ checksum "yarn.lock" }}
restore_gem_cache: &restore_gem_cache
restore_cache:
keys:
- gem-dependencies-{{ checksum "Gemfile" }}
save_gem_cache: &save_gem_cache
save_cache:
paths:
- ./vendor
key: yarn-dependencies-{{ checksum "Gemfile" }}
jobs:
build:
<<: *container_config
steps:
- checkout
- *restore_gem_cache
- *restore_yarn_cache
- *config_environment
- *save_gem_cache
- *save_yarn_cache
- *build_gem
test:
<<: *container_config
steps:
- checkout
- *restore_gem_cache
- *restore_yarn_cache
- *config_environment
- *save_gem_cache
- *save_yarn_cache
- *rake_test
documentation:
<<: *container_config
steps:
- checkout
- *restore_gem_cache
- *restore_yarn_cache
- *config_environment
- *save_gem_cache
- *save_yarn_cache
- *rake_test
- *documentation
deploy_beta:
<<: *container_config
steps:
- checkout
- *restore_gem_cache
- *restore_yarn_cache
- *config_environment
- *save_gem_cache
- *save_yarn_cache
- *deploy_beta
release:
<<: *container_config
steps:
- checkout
- *restore_gem_cache
- *restore_yarn_cache
- *config_environment
- *save_gem_cache
- *save_yarn_cache
- *build_gem
# - run:
# name: Publish to RubyGems
# command: source ci/scripts/publish.sh
- run:
name: GitHub release
command: source ci/scripts/release.sh
workflows:
version: 2
build-test-deploy:
jobs:
- build
- test:
requires:
- build
filters:
branches:
ignore:
- master
- documentation:
requires:
- test
filters:
branches:
only:
- develop
- master
- deploy_beta:
requires:
- test
filters:
branches:
only:
- develop
- release:
requires:
- build
filters:
branches:
only:
- /ˆrelease/.*/
# - deploy_master:
# requires:
# - build
# filters:
# branches:
# only:
# - master