You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This patch allows the `mavenCI{}` to over maven command in order
to allow `mavenIntegrationTes{}` to pass specific command to execute.
It has added a util method to retrive default test namespace.
Fixes: openshiftio/openshift.io#763Fixes: openshiftio/openshift.io#3134
Related to: fabric8io#412
Note: All other flags are ignored if `mavenIntegrationTest` has `integrationTestCmd` parameter.
215
222
#### Merge and Wait for Pull Request
216
223
217
224
- adds a [merge] comment to a github pull request
@@ -248,7 +255,7 @@ NOTE: if `cmd` is set, `goal`, `profile`, `skipTests` will have no effect.
248
255
}
249
256
```
250
257
#### Update Maven Property Version
251
-
During a release involving multiple java projects we often need to update downstream maven poms with new versions of a dependency. In a release pipeline we want to automate this, set up a pull request and let CI run to make sure there's no conflicts.
258
+
During a release involving multiple java projects we often need to update downstream maven poms with new versions of a dependency. In a release pipeline we want to automate this, set up a pull request and let CI run to make sure there's no conflicts.
252
259
253
260
- performs a search and replace in the maven pom
254
261
- finds the latest version available in maven central (repo is configurable)
@@ -274,7 +281,7 @@ Automating this has saved us a lot of time during the release pipeline
274
281
}
275
282
```
276
283
#### Wait Until Artifact Synced With Maven Central
277
-
When working with open source java projects we need to stage artifacts with OSS Sonatype in order to promote them into maven central. This can take 10-30 mins depending on the size of the artifacts being synced.
284
+
When working with open source java projects we need to stage artifacts with OSS Sonatype in order to promote them into maven central. This can take 10-30 mins depending on the size of the artifacts being synced.
278
285
279
286
A useful thing is to be notified in chat when artifacts are available in maven central as blocking the pipeine until we're sure the promote has worked.
280
287
@@ -324,7 +331,7 @@ When a project is staged an array is returned and passed around functions furthe
324
331
}
325
332
```
326
333
327
-
One other important note is on the fabric8 project we don't use the maven release plugin or update to next SNAPSHOT versions as it causes unwanted noise and commits to our many github repos. Instead we use a fixed development `x.x-SNAPSHOT` version so we can easily work in development on multiple projects that have maven dependencies with each other.
334
+
One other important note is on the fabric8 project we don't use the maven release plugin or update to next SNAPSHOT versions as it causes unwanted noise and commits to our many github repos. Instead we use a fixed development `x.x-SNAPSHOT` version so we can easily work in development on multiple projects that have maven dependencies with each other.
328
335
329
336
Now that we don't store the next release version in the poms we need to figure it out during the release. Rather than store the version number in the repo which involves a commit and not too CD friendly (i.e. would trigger another release just for the version update) we use the `git tag`. From this we can get the previous release version, increment it and push it back without triggering another release. This seems a bit strange but it has been holding up and has significantly reduced unwanted SCM commits related to maven releases.
330
337
@@ -389,8 +396,8 @@ Now that we don't store the next release version in the poms we need to figure i
389
396
```
390
397
#### Git Tag
391
398
392
-
- tags the current git repo with the provided version
393
-
- pushes the tag to the remote repository
399
+
- tags the current git repo with the provided version
400
+
- pushes the tag to the remote repository
394
401
395
402
```groovy
396
403
gitTag {
@@ -415,9 +422,9 @@ __NOTE__ in order for images to be found by the remote OpenShift instance it mus
415
422
416
423
#### Deploy Remote Kubernetes
417
424
418
-
Deploys the staged fabric8 release to a remote Kubernetes cluster
425
+
Deploys the staged fabric8 release to a remote Kubernetes cluster
419
426
420
-
__NOTE__ in order for images to be found by the remote OpenShift instance it must be able to pull images from the staging docker registry. Noting private networks and insecure-registry flags.
427
+
__NOTE__ in order for images to be found by the remote OpenShift instance it must be able to pull images from the staging docker registry. Noting private networks and insecure-registry flags.
421
428
422
429
```groovy
423
430
node {
@@ -587,7 +594,7 @@ For this case you can combine add the docker template and the maven template tog
587
594
node('maven-and-docker') {
588
595
container(name: 'maven') {
589
596
sh 'mvn clean package fabric8:build fabric8:push'
590
-
}
597
+
}
591
598
}
592
599
}
593
600
}
@@ -598,7 +605,7 @@ The above is equivalent to:
598
605
mavenNode(label: 'maven-and-docker') {
599
606
container(name: 'maven') {
600
607
sh 'mvn clean package fabric8:build fabric8:push'
601
-
}
608
+
}
602
609
}
603
610
}
604
611
@@ -613,7 +620,7 @@ In the example above we can add release capabilities too, by adding the releaseT
0 commit comments