23
23
version : 2.1
24
24
25
25
commands :
26
- influxdb-restart :
26
+ influxdb-onboarding :
27
27
steps :
28
28
- run :
29
- name : " Start InfluxDB service "
30
- command : ./scripts/influxdb-restart .sh
29
+ name : " Post onBoarding request to InfluxDB 2 "
30
+ command : ./scripts/influxdb-onboarding .sh
31
31
prepare :
32
32
description : " Prepare environment to tests"
33
33
steps :
34
34
- checkout
35
- - influxdb-restart
35
+ - influxdb-onboarding
36
36
client-test :
37
37
description : " Run tests"
38
38
parameters :
39
- maven-container :
39
+ maven-image :
40
40
type : string
41
- default : &default-maven-container "3-jdk-8-slim"
42
41
steps :
43
42
- restore_cache :
44
43
name : Restoring Maven Cache
45
44
keys :
46
- - &cache-key maven-cache -<< parameters.maven-container >>-{{ checksum "pom.xml" }}-{{ checksum "client-core/pom.xml" }}-{{ checksum "client/pom.xml" }}-{{ checksum "client-kotlin/pom.xml" }}-{{ checksum "client-legacy/pom.xml" }}-{{ checksum "client-reactive/pom.xml" }}-{{ checksum "client-scala/pom.xml" }}-{{ checksum "client-test/pom.xml" }}-{{ checksum "spring/pom.xml" }}-{{ checksum "flux-dsl/pom.xml" }}
47
- - maven-cache -<< parameters.maven-container >>-
45
+ - &cache-key maven-cache_v3 -<< parameters.maven-image >>-{{ checksum "pom.xml" }}-{{ checksum "client-core/pom.xml" }}-{{ checksum "client/pom.xml" }}-{{ checksum "client-kotlin/pom.xml" }}-{{ checksum "client-legacy/pom.xml" }}-{{ checksum "client-reactive/pom.xml" }}-{{ checksum "client-scala/pom.xml" }}-{{ checksum "client-test/pom.xml" }}-{{ checksum "spring/pom.xml" }}-{{ checksum "flux-dsl/pom.xml" }}
46
+ - maven-cache_v3 -<< parameters.maven-image >>-
48
47
- run :
49
48
name : " Running tests"
50
49
command : |
51
- docker run -it --rm \
52
- --volume ${PWD}:/usr/src/mymaven \
53
- --volume ~/.m2:/root/.m2 \
54
- --workdir /usr/src/mymaven \
55
- --network influx_network \
56
- --env INFLUXDB_IP=192.168.0.2 \
57
- --env INFLUXDB_2_IP=192.168.0.3 \
58
- --env INFLUXDB_2_ONBOARDING_IP=192.168.0.4 \
59
- --env INFLUXDB_2_ONBOARDING_PORT=9999 \
60
- maven:<< parameters.maven-container >> mvn -B -U clean install -Dmaven.javadoc.skip=true -Dmaven.dokka.skip=true -Dbuild.env=CI
50
+ mvn -B -U clean install -Dmaven.javadoc.skip=true -Dmaven.dokka.skip=true -Dbuild.env=CI
61
51
- save_cache :
62
52
name : Saving Maven Cache
63
53
key : *cache-key
64
54
paths :
65
55
- ~/.m2
66
- when : always
67
56
storing-test-results :
68
57
steps :
69
58
- run :
@@ -107,39 +96,39 @@ commands:
107
96
path : artifacts
108
97
109
98
jobs :
110
- tests-jdk-8 :
111
- machine : true
112
- steps :
113
- - prepare
114
- - client-test :
115
- maven-container : *default-maven-container
116
- - storing-test-results
117
- - storing-artifacts
118
- - run :
119
- name : " Collecting coverage reports"
120
- command : bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
121
99
122
- tests-jdk-11 :
123
- machine : true
100
+ tests-java :
124
101
parameters :
125
- influxdb-repository :
102
+ maven-image :
126
103
type : string
127
- default : " influxdb "
128
- influxdb-version :
104
+ default : &default-maven-image "circleci/openjdk:8 "
105
+ influxdb-image :
129
106
type : string
130
- default : " 2.0.0-beta"
107
+ default : &default-influxdb-image "influxdb:2.0.0-beta"
108
+ docker :
109
+ - image : << parameters.maven-image >>
110
+ - image : &influx-image quay.io/influxdb/<< parameters.influxdb-image >>
111
+ - image : &influx-image quay.io/influxdb/<< parameters.influxdb-image >>
112
+ name : influxdb_v2_onboarding
113
+ - image : influxdb:1.8-alpine
114
+ environment :
115
+ INFLUXDB_HTTP_FLUX_ENABLED : true
131
116
environment :
132
- INFLUXDB_V2_REPOSITORY : << parameters.influxdb-repository >>
133
- INFLUXDB_V2_VERSION : << parameters.influxdb-version >>
117
+ INFLUXDB_2_ONBOARDING_IP : influxdb_v2_onboarding
118
+ INFLUXDB_2_ONBOARDING_PORT : 9999
134
119
steps :
135
120
- prepare
136
121
- client-test :
137
- maven-container : " 3-jdk-11-slim "
122
+ maven-image : << parameters.maven-image >>
138
123
- storing-test-results
139
124
- storing-artifacts
125
+ - run :
126
+ name : " Collecting coverage reports"
127
+ command : bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
140
128
141
129
deploy-snapshot :
142
- machine : true
130
+ docker :
131
+ - image : *default-maven-image
143
132
steps :
144
133
- run :
145
134
name : Early return if this build is from a forked repository
@@ -160,52 +149,38 @@ jobs:
160
149
echo "Nothing to do for this build, so marking this step successful"
161
150
circleci step halt
162
151
fi
163
- - influxdb-restart
164
152
- restore_cache :
165
153
name : Restoring Maven Cache
166
154
keys :
167
- - &cache-key-deploy maven-cache-deploy-3-jdk-8-slim-{{ checksum "pom.xml" }}-{{ checksum "client-core/pom.xml" }}-{{ checksum "client/pom.xml" }}-{{ checksum "client-kotlin/pom.xml" }}-{{ checksum "client-legacy/pom.xml" }}-{{ checksum "client-reactive/pom.xml" }}-{{ checksum "client-scala/pom.xml" }}-{{ checksum "client-test/pom.xml" }}-{{ checksum "spring/pom.xml" }}-{{ checksum "flux-dsl/pom.xml" }}
168
- - maven-cache-deploy-3-jdk-8-slim-
169
- - maven-cache-3-jdk-8-slim-
155
+ - &cache-key-deploy maven-cache-deploy_v2-{{ checksum "pom.xml" }}-{{ checksum "client-core/pom.xml" }}-{{ checksum "client/pom.xml" }}-{{ checksum "client-kotlin/pom.xml" }}-{{ checksum "client-legacy/pom.xml" }}-{{ checksum "client-reactive/pom.xml" }}-{{ checksum "client-scala/pom.xml" }}-{{ checksum "client-test/pom.xml" }}-{{ checksum "spring/pom.xml" }}-{{ checksum "flux-dsl/pom.xml" }}
156
+ - maven-cache-deploy_v2-
170
157
- run :
171
158
name : Deploying Snapshot
172
159
command : |
173
- docker run -it --rm \
174
- --volume ${PWD}:/usr/src/mymaven \
175
- --volume ~/.m2:/root/.m2 \
176
- --workdir /usr/src/mymaven \
177
- --network influx_network \
178
- --env INFLUXDB_IP=192.168.0.2 \
179
- --env INFLUXDB_2_IP=192.168.0.3 \
180
- --env INFLUXDB_2_ONBOARDING_IP=192.168.0.4 \
181
- --env INFLUXDB_2_ONBOARDING_PORT=9999 \
182
- --env SONATYPE_USERNAME=${SONATYPE_USERNAME} \
183
- --env SONATYPE_PASSWORD=${SONATYPE_PASSWORD} \
184
- maven:3-jdk-8-slim mvn -s scripts/deploy-settings.xml -DskipTests=true clean package deploy
160
+ mvn -s scripts/deploy-settings.xml -DskipTests=true clean package deploy
185
161
- save_cache :
186
162
name : Saving Maven Cache
187
163
key : *cache-key-deploy
188
164
paths :
189
165
- ~/.m2
190
- when : always
191
166
192
167
workflows :
193
168
version : 2
194
169
build :
195
170
jobs :
196
- - tests-jdk-8 :
197
- name : jdk-8-beta
198
- - tests-jdk-11 :
199
- name : jdk-11-beta
200
- - tests-jdk-11 :
201
- name : jdk-11-nightly
202
- influxdb-repository : " influx "
203
- influxdb-version : " nightly"
171
+ - tests-java :
172
+ name : jdk-8
173
+ - tests-java :
174
+ name : jdk-11
175
+ maven-image : " circleci/openjdk:11 "
176
+ - tests-java :
177
+ name : jdk-8-nightly
178
+ influxdb-image : " influx: nightly"
204
179
- deploy-snapshot :
205
180
requires :
206
- - jdk-8-beta
207
- - jdk-11-beta
208
- - jdk-11 -nightly
181
+ - jdk-8
182
+ - jdk-11
183
+ - jdk-8 -nightly
209
184
filters :
210
185
branches :
211
186
only : master
@@ -219,5 +194,7 @@ workflows:
219
194
only :
220
195
- master
221
196
jobs :
222
- - tests-jdk-8
223
- - tests-jdk-11
197
+ - tests-java
198
+ - tests-java :
199
+ name : jdk-11-beta
200
+ maven-image : " circleci/openjdk:11"
0 commit comments