Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
adapt
ace
Commits
14474a22
Commit
14474a22
authored
Feb 21, 2017
by
Michael Ritter
Browse files
Add gitlabci config
parent
d4f328f8
Changes
1
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
0 → 100644
View file @
14474a22
---
# This file is a template, and might need editing before it works on your project.
# 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 as well as create the documentation.
#
# * Caches downloaded dependencies and plugins between invocation.
# * Does only verify merge requests but deploy built artifacts of the
# master branch.
# * Shows how to use multiple jobs in test stage for verifying functionality
# with multiple JDKs.
# * Uses site:stage to collect the documentation for multi-module projects.
# * Publishes the documentation for `master` branch.
variables
:
# This will supress any download for dependencies and plugins or upload messages which would clutter the console log.
# `showDateTime` will show the passed time in milliseconds. You need to specify `--batch-mode` to make this work.
MAVEN_OPTS
:
"
-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=WARN
-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.
# `installAtEnd` and `deployAtEnd`are only effective with recent version of the corresponding plugins.
MAVEN_CLI_OPTS
:
"
--batch-mode
--errors
--fail-at-end
--show-version
-DinstallAtEnd=true
-DdeployAtEnd=true"
# Cache downloaded dependencies and plugins between builds.
cache
:
paths
:
-
/root/.m2/repository/
# This will only validate and compile stuff and run e.g. maven-enforcer-plugin.
# Because some enforcer rules might check dependency convergence and class duplications
# we use `test-compile` here instead of `validate`, so the correct classpath is picked up.
.validate
:
&validate
stage
:
build
script
:
-
'
mvn
$MAVEN_CLI_OPTS
test-compile'
# For merge requests do not `deploy` but only run `verify`.
# See https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
.verify
:
&verify
stage
:
test
script
:
-
'
mvn
$MAVEN_CLI_OPTS
verify'
except
:
-
master
# Validate merge requests using JDK8
validate:jdk8:
<<
:
*validate
image
:
maven:3.3.9-jdk-8
# Verify merge requests using JDK8
verify:jdk8:
<<
:
*verify
image
:
maven:3.3.9-jdk-8
# For `master` branch run `mvn deploy` automatically.
# Here you need to decide whether you want to use JDK7 or 8.
# To get this working you need to define a volume while configuring your gitlab-ci-multi-runner.
# Mount your `settings.xml` as `/root/.m2/settings.xml` which holds your secrets.
# See https://maven.apache.org/settings.html
deploy:jdk8:
# Use stage test here, so the pages job may later pickup the created site.
stage
:
test
script
:
-
'
mvn
$MAVEN_CLI_OPTS
deploy'
only
:
-
master
# Archive up the built documentation site.
image
:
maven:3.3.9-jdk-8
upload
:
image
:
maven:3.3.9-jdk-8
stage
:
deploy
only
:
-
master
-
develop
script
:
-
'
mvn
package'
-
'
for
f
in
`find
ace-am/src/main/sql
-type
f`;
do
curl
-X
POST
-H
"Authorization:
token
$BUILD_TOKEN"
--data-binary
@$f
$SERVER/artifacts/ace/$CI_BUILD_REF_NAME/$(echo
$CI_BUILD_REF
|
cut
-c
-7)/$(basename
$f);
done'
-
'
for
f
in
`find
ace-am/target
-type
f
-name
"*.war"`;
do
curl
-X
POST
-H
"Authorization:
token
$BUILD_TOKEN"
--data-binary
@$f
$SERVER/artifacts/ace/$CI_BUILD_REF_NAME/$(echo
$CI_BUILD_REF
|
cut
-c
-7)/$(basename
$f);
done'
-
'
for
f
in
`find
ace-ims-ear/target
-type
f
-name
"*.ear"`;
do
curl
-X
POST
-H
"Authorization:
token
$BUILD_TOKEN"
--data-binary
@$f
$SERVER/artifacts/ace/$CI_BUILD_REF_NAME/$(echo
$CI_BUILD_REF
|
cut
-c
-7)/$(basename
$f);
done'
# release:
# only:
# - master
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment