Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
D
DARIAH-DE OAI-PMH Services
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
DARIAH-DE
DARIAH-DE OAI-PMH Services
Commits
12ab3cab
Commit
12ab3cab
authored
2 years ago
by
Stefan E. Funk
Browse files
Options
Downloads
Patches
Plain Diff
Add gitlab templates
parent
5426a8f6
No related branches found
No related tags found
No related merge requests found
Pipeline
#291075
passed
2 years ago
Stage: build_version
Stage: deploy_java
Stage: deploy_deb
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
.gitlab-ci.yml
+28
-50
28 additions, 50 deletions
.gitlab-ci.yml
with
28 additions
and
50 deletions
.gitlab-ci.yml
+
28
−
50
View file @
12ab3cab
###
# PREPARATIONS
###
# Some variables
# TODO: Apply also as a template!
variables
:
# defaults to java 11 (https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#configuring-specific-analyzers-used-by-dependency-scanning)
DS_JAVA_VERSION
:
8
# This will suppress 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
:
"
-Dhttps.protocols=TLSv1.2
-Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository
-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=WARN
-Dorg.slf4j.simpleLogger.showDateTime=true
-Djava.awt.headless=true"
...
...
@@ -14,30 +18,14 @@ variables:
# File for storing the POM project.version
VARIABLES_FILE
:
./variables.txt
# Include Java settings from Gitlab templates repo.
include
:
-
template
:
Dependency-Scanning.gitlab-ci.yml
###################
### TEMPLATES ###
###################
.webapp
:
&webapp
image
:
alpine:3.14
stage
:
deploy_deb
script
:
-
source $VARIABLES_FILE
-
'
apk
add
--no-cache
bash'
-
'
apk
add
--no-cache
curl'
-
export PLOC="$(ls ./${PPATH}/*.deb)"
-
DEB_NAME=$PNAME-$PVERSION.deb
-
'
if
[[
$PVERSION
=~
.*${PKEY}$
]];
then'
-
echo "---AN APTLY DEPLOYMENT IS BEING PERFORMED for $DEB_NAME in $PLOC into ${APTLY_TARGET}---"
-
'
curl
-u
${APTLY_USER}:${APTLY_PASSWORD}
-X
POST
--header
"Content-Type:multipart/form-data"
-F
file=@${PLOC}
${APTLY_URL}/files/${DEB_NAME}'
-
'
curl
-u
${APTLY_USER}:${APTLY_PASSWORD}
-X
POST
${APTLY_URL}/repos/${APTLY_TARGET}/file/${DEB_NAME}'
-
'
curl
-u
${APTLY_USER}:${APTLY_PASSWORD}
-X
PUT
-H
"Content-Type:
application/json"
--data
"{}"
${APTLY_URL}/publish/:./indy'
-
fi
-
project
:
'
dariah-de/gitlab-templates'
ref
:
'
main'
file
:
'
/templates/.java.gitlab-ci.yml'
# Stages...
stages
:
-
test
-
build_version
-
deploy_java
-
deploy_deb
...
...
@@ -49,25 +37,21 @@ cache:
paths
:
-
.m2/repository
###
# JOBS
###
# Get the project version from main POM file and store it to artifact.
get_version
:
image
:
maven:3.8.3-jdk-8
Get POM version
:
only
:
-
develop
-
main
-
branches
stage
:
build_version
script
:
-
'
PVERSION=$(mvn
org.apache.maven.plugins:maven-help-plugin:3.1.1:evaluate
-Dexpression=project.version
-q
-DforceStdout)'
-
echo "export PVERSION=$PVERSION" > $VARIABLES_FILE
-
echo "Project version from main pom file is $PVERSION"
artifacts
:
name
:
POM_VERSION
paths
:
-
$VARIABLES_FILE
extends
:
-
.get-pom-version
# Build and deploy all the JARs to GWDG Nexus, and build all the DEBs and store DEBs to artifacts.
b
uild
_
and
_d
eploy
:
B
uild
and
D
eploy
JARs
:
image
:
maven:3.8.3-jdk-8
only
:
-
develop
...
...
@@ -80,17 +64,9 @@ build_and_deploy:
paths
:
-
./oaipmh-webapp/target/*.deb
# Just build any branch and test. NO JAR, NO DEB deployed hrer!
#build_and_deploy:
# image: maven:3.8.3-jdk-8
# only:
# - branches
# stage: deploy_java
# script:
# - 'mvn $MAVEN_OPTS $MAVEN_CLI_OPTS $MAVEN_DEPLOY_OPTS -U clean verify'
# Deploy SNAPSHOT DEB file to APTLY repository.
deploy_oaipmh-webapp_dev
:
# Deploy DEB files to APTLY repository.
Deploy develop DEBs
:
stage
:
deploy_deb
only
:
-
develop
variables
:
...
...
@@ -98,10 +74,11 @@ deploy_oaipmh-webapp_dev:
PPATH
:
'
${PNAME}/target'
PKEY
:
'
SNAPSHOT'
APTLY_TARGET
:
'
indy-snapshots'
<<
:
*webapp
extends
:
-
.deploy-deb
#
Deploy
RELEASE DEB file to APTLY repository.
deploy_oaipmh-webapp_prd
:
Deploy
productive DEBs
:
stage
:
deploy_deb
only
:
-
main
variables
:
...
...
@@ -109,4 +86,5 @@ deploy_oaipmh-webapp_prd:
PPATH
:
'
${PNAME}/target'
PKEY
:
'
${PVERSION}'
APTLY_TARGET
:
'
indy-releases'
<<
:
*webapp
extends
:
-
.deploy-deb
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment