-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Co-authored-by: Jakob Silbereisen <[email protected]>
- Loading branch information
1 parent
db25cae
commit 5a47c2e
Showing
1 changed file
with
61 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
# To contribute improvements to CI/CD templates, please follow the Development guide at: | ||
# https://docs.gitlab.com/ee/development/cicd/templates.html | ||
# This specific template is located at: | ||
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Maven.gitlab-ci.yml | ||
|
||
# Build JAVA applications using Apache Maven (http://maven.apache.org) | ||
# For docker image tags see https://hub.docker.com/_/maven/ | ||
# | ||
# For general lifecycle information see https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html | ||
|
||
# This template will build and test your projects | ||
# * Caches downloaded dependencies and plugins between invocation. | ||
# * Verify but don't deploy merge requests. | ||
# * Deploy built artifacts from master branch only. | ||
|
||
variables: | ||
# `showDateTime` will show the passed time in milliseconds. You need to specify `--batch-mode` to make this work. | ||
MAVEN_OPTS: >- | ||
-Dhttps.protocols=TLSv1.2 | ||
-Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository | ||
-Dorg.slf4j.simpleLogger.showDateTime=true | ||
-Djava.awt.headless=true | ||
# As of Maven 3.3.0 instead of this you MAY define these options in `.mvn/maven.config` so the same config is used | ||
# when running from the command line. | ||
# As of Maven 3.6.1, the use of `--no-tranfer-progress` (or `-ntp`) suppresses download and upload messages. The use | ||
# of the `Slf4jMavenTransferListener` is no longer necessary. | ||
# `installAtEnd` and `deployAtEnd` are only effective with recent version of the corresponding plugins. | ||
MAVEN_CLI_OPTS: >- | ||
--batch-mode | ||
--errors | ||
--fail-at-end | ||
--show-version | ||
--no-transfer-progress | ||
-DinstallAtEnd=true | ||
# This template uses the latest Maven 3 release, e.g., 3.8.6, and OpenJDK 8 (LTS) | ||
# for verifying and deploying images | ||
# Maven 3.8.x REQUIRES HTTPS repositories. | ||
# See https://maven.apache.org/docs/3.8.1/release-notes.html#how-to-fix-when-i-get-a-http-repository-blocked for more. | ||
image: maven:3.8.3-openjdk-17 | ||
|
||
# Cache downloaded dependencies and plugins between builds. | ||
# To keep cache across branches add 'key: "$CI_JOB_NAME"' | ||
# Be aware that `mvn deploy` will install the built jar into this repository. If you notice your cache size | ||
# increasing, consider adding `-Dmaven.install.skip=true` to `MAVEN_OPTS` or in `.mvn/maven.config` | ||
cache: | ||
paths: | ||
- .m2/repository | ||
|
||
# For merge requests do not `deploy` but only run `verify`. | ||
# See https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html | ||
.verify: | ||
stage: test | ||
script: | ||
- 'mvn $MAVEN_CLI_OPTS verify' | ||
|
||
# Verify merge requests using JDK17 | ||
verify:jdk17: | ||
extends: | ||
- .verify |