Wir haben Gitlab neu in unserer Umgebung und versuchen, einige CI-CD-Pipelines mit Gitlab CI zu erstellen. Ich habe einige bessere Fortschritte beim Ausführen einiger Maven-Ziele, beim Erstellen von Pipelines und beim Archivieren von Artefakten mit meiner .gitlab-ci.yml (siehe unten) erzielt. Ich habe versucht, Give-Tags nach dem Skript zu geben, was nicht funktioniert. Jetzt versuche ich herauszufinden, wie ich Git-Tags für meinen Quellcode automatisieren kann. Ich möchte ein Tag für den Quellcode erstellen, nachdem der Master-Zweig erfolgreich erstellt wurde. Wir verwenden semantische Versionen, um unseren Quellcode zu kennzeichnen. Wenn der Master erfolgreich erstellt wurde, möchte ich ein Tag für meinen Master-Zweig erstellen.
image: maven:3.5-jdk-8-alpine
stages:
- build
- deploy
- tag
maven_build:
stage: build
script:
- mvn clean package
artifacts:
paths:
- target/*.jar
after_script:
- ls -a
- cd target && ls -a
- git --version
- git tag -a 1.0.15 -m "Version created by gitlab-ci Build"
- git push origin 1.0.15
only:
- master
Protokolle:
Running after script...
$ ls -a
.
..
.git
.gitignore
.gitlab-ci.yml
LICENSE
README.md
pom.xml
src
target
$ cd target && ls -a
.
..
apidocs
classes
generated-sources
generated-test-sources
javadoc-bundle-options
maven-archiver
maven-simple-0.2-SNAPSHOT-javadoc.jar
maven-simple-0.2-SNAPSHOT-sources.jar
maven-simple-0.2-SNAPSHOT.jar
maven-status
surefire-reports
test-classes
Uploading artifacts...
target/maven-simple-0.2-SNAPSHOT-javadoc.jar: found 1 matching files
Uploading artifacts to coordinator... ok id=60598296
responseStatus=201 Created token=Gu-eH1es
Job war erfolgreich