Initial commit
This commit is contained in:
commit
b7d90b9afe
16245 files changed
+3396666
No files matched your search
Executable
+172
@@ -0,0 +1,172 @@
|
||||
##########################
|
||||
# BASE Pipeline
|
||||
# Adjust
|
||||
# ARTIFACTORY_PATH -> Path where we upload the final RPM zips on the asset repository
|
||||
# PROJECT_BASE_DIR -> this is how the git exports the file its the same as the projects-domain-live/guez/<fork_name>/legatus/ name
|
||||
# cmake_build_flags -> add specific BUILD Params per Project like uas proxy or HLA etc
|
||||
# NON GUEZ
|
||||
# BUILD_IMAGE -> the build images to use there is guez, federates and lynxhu
|
||||
# When used they are tagged: <PROJECT>:<OSVERSION>
|
||||
# Not every <OSVERSION> is available for each Project
|
||||
# guez: 15.4 15.1 42.3
|
||||
# federates: 15.4
|
||||
# lynxhu: 15.5
|
||||
#########################
|
||||
|
||||
default:
|
||||
interruptible: true
|
||||
|
||||
variables:
|
||||
PROJECT_NAME: 'guez'
|
||||
TDS_MAJOR_VERSION: '1.3'
|
||||
BUILD_IMAGE: 'asset-repository.sf.defence-elec.de/docker-rme/livesim/guez'
|
||||
CHECKOUT_IMAGE: 'asset-repository.sf.defence-elec.de/docker-local/docker/docker:git'
|
||||
ARTIFACTORY: 'http://asset-repository.sf.defence-elec.de:80/artifactory'
|
||||
ARTIFACTORY_PATH: 'generic-rme/livesim/guez/master'
|
||||
RUNNER_TAG: ''
|
||||
|
||||
stages:
|
||||
- checkout
|
||||
- workflow
|
||||
- build
|
||||
- test-release
|
||||
|
||||
|
||||
workflow:
|
||||
rules:
|
||||
- if: $CI_COMMIT_REF_NAME == "master"
|
||||
variables:
|
||||
RUNNER_TAG: "ram_20g"
|
||||
- if: $CI_COMMIT_REF_NAME != "master"
|
||||
variables:
|
||||
RUNNER_TAG: "docker"
|
||||
- when: always
|
||||
|
||||
checkout:
|
||||
tags:
|
||||
- docker
|
||||
stage: checkout
|
||||
interruptible: true
|
||||
image: $CHECKOUT_IMAGE
|
||||
script:
|
||||
- git clone http://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab-sg1.defence-elec.de/projects-domain-live/rpmbuild.git
|
||||
artifacts:
|
||||
paths:
|
||||
- rpmbuild/
|
||||
|
||||
build:
|
||||
parallel:
|
||||
matrix:
|
||||
- VERSION: "15.1"
|
||||
- VERSION: "15.4"
|
||||
- VERSION: "42.3"
|
||||
# - VERSION: "15.6"
|
||||
tags: [$RUNNER_TAG]
|
||||
|
||||
rules:
|
||||
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
#- ram_20g
|
||||
timeout: 5h
|
||||
stage: build
|
||||
image: ${BUILD_IMAGE}:${VERSION}
|
||||
dependencies:
|
||||
- checkout
|
||||
#interruptible: true
|
||||
#resource_group: team7
|
||||
variables:
|
||||
BUILD_VERSION: $VERSION
|
||||
VERSION_DATE: $CI_COMMIT_TIMESTAMP
|
||||
PROJECT_BASE_DIR: /builds/projects-domain-live/guez/legatus
|
||||
EMERGE_VERBOSE: 1 # Verbosity level 0:warning 1:info 2:debug
|
||||
script:
|
||||
- export BUILD_NUMBER=$(date +%Y%m%d%H)
|
||||
- echo '%_smp_mflags -j 4' > ~/.rpmmacros # Limit the number of cores used by the build to 4. https://rpm-packaging-guide.github.io/
|
||||
- cp -a rpmbuild /shd/CTC/TOOLS/rpmbuild
|
||||
- mkdir /shd/CTC/TOOLS/rpms
|
||||
- cd /shd/CTC/TOOLS/rpmbuild
|
||||
- |
|
||||
echo "TAG: $RUNNER_TAG"
|
||||
echo "Current Branch: $CI_COMMIT_REF_NAME"
|
||||
if [ $CI_COMMIT_REF_NAME == master ];
|
||||
then
|
||||
echo '%_smp_mflags -j 4' > ~/.rpmmacros # Limit the number of cores used by the build to 4. https://rpm-packaging-guide.github.io/
|
||||
|
||||
if [ $VERSION == 42.3 ];
|
||||
then
|
||||
echo "build 42.3"
|
||||
python ./make_rpmModule.py -c LTS \
|
||||
--project_name $PROJECT_NAME \
|
||||
--version $TDS_MAJOR_VERSION \
|
||||
--output_dir /shd/CTC/TOOLS/rpms/ \
|
||||
-h true \
|
||||
-t false \
|
||||
-w false \
|
||||
--cmake_build_flags='-DUSE_IPO=ON -DBUILD_ALL=OFF -DUSE_UNITY_BUILD=ON -DGUEZ_MODE=ON -DBUILD_SV=OFF -DBUILD_AAR=OFF -DBUILD_HLA=ON -DBUILD_WLS=OFF -DBUILD_SVC_HLA=ON -DBUILD_TOOLSWS=OFF -DBUILD_TOOLSSV=OFF -DPostgreSQL_TYPE_INCLUDE_DIR=/usr/include/pgsql/'
|
||||
else
|
||||
echo "$VERSION"
|
||||
python ./make_rpm.py -c LTS \
|
||||
--project_name $PROJECT_NAME \
|
||||
--version $TDS_MAJOR_VERSION \
|
||||
--output_dir /shd/CTC/TOOLS/rpms/ \
|
||||
--cmake_build_flags='-DUSE_IPO=ON -DUSE_UNITY_BUILD=ON -DGUEZ_MODE=ON -DBUILD_WLS=OFF -DBUILD_SVC_HLA=OFF -DBUILD_TOOLSWS=ON -DBUILD_TOOLSSV=ON -DBUILD_UAS_PROXY=ON -DPostgreSQL_TYPE_INCLUDE_DIR=/usr/include/pgsql/'
|
||||
fi
|
||||
else
|
||||
echo "$VERSION !!!! NO conti Build"
|
||||
fi
|
||||
- |
|
||||
echo "Current Branch: $CI_COMMIT_REF_NAME"
|
||||
if [ $CI_COMMIT_REF_NAME == master ];
|
||||
then
|
||||
echo "BUILD ZIP and UPLOAD"
|
||||
zip -qr $PROJECT_NAME-TDS-$TDS_MAJOR_VERSION-$BUILD_NUMBER-$VERSION.zip /shd/CTC/TOOLS/rpms/$PROJECT_NAME-TDS-$TDS_MAJOR_VERSION-$BUILD_NUMBER
|
||||
curl -sS \
|
||||
-u $RME_CI_GENERIC_WRITER_USER:$RME_CI_GENERIC_WRITER_TOKEN \
|
||||
-H "X-Checksum-Sha256: $(sha256sum $PROJECT_NAME-TDS-$TDS_MAJOR_VERSION-$BUILD_NUMBER-$VERSION.zip | awk '{print $1}')" \
|
||||
-H "X-Checksum-Sha1: $(sha1sum $PROJECT_NAME-TDS-$TDS_MAJOR_VERSION-$BUILD_NUMBER-$VERSION.zip | awk '{print $1}')" \
|
||||
-H "X-Checksum-Md5: $(md5sum $PROJECT_NAME-TDS-$TDS_MAJOR_VERSION-$BUILD_NUMBER-$VERSION.zip | awk '{print $1}')" \
|
||||
-X PUT "$ARTIFACTORY/$ARTIFACTORY_PATH/$VERSION/$PROJECT_NAME-TDS-$TDS_MAJOR_VERSION-$BUILD_NUMBER-$VERSION.zip" \
|
||||
-T $PROJECT_NAME-TDS-$TDS_MAJOR_VERSION-$BUILD_NUMBER-$VERSION.zip
|
||||
else
|
||||
echo "NO BUILD ZIP and UPLOAD"
|
||||
fi
|
||||
|
||||
weekly_release:
|
||||
stage: build
|
||||
image: ${BUILD_IMAGE}:15.1
|
||||
tags:
|
||||
- docker
|
||||
rules:
|
||||
- if: '$WEEKLY_RELEASE == "true"'
|
||||
variables:
|
||||
PROJECT_BASE_DIR: /builds/projects-domain-live/guez/legatus
|
||||
artifacts:
|
||||
paths:
|
||||
- changelog.md
|
||||
before_script:
|
||||
- git config --global --add safe.directory $PROJECT_BASE_DIR
|
||||
- git fetch --tags
|
||||
script:
|
||||
- LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "none")
|
||||
- VER="v$(date +%Y).$(date +%V)"
|
||||
- |
|
||||
if [ "$LAST_TAG" = "none" ]; then
|
||||
RANGE="HEAD"
|
||||
else
|
||||
RANGE="$LAST_TAG..HEAD"
|
||||
fi
|
||||
- echo "Range= $RANGE LastTag= $LAST_TAG Version= $VER"
|
||||
- git log $RANGE --pretty=format:"%s" > jira_tickets.txt
|
||||
|
||||
- echo "Weekly Release $VER" > changelog.md
|
||||
- echo "" >> changelog.md
|
||||
- echo "Commits" >> changelog.md
|
||||
- git log $RANGE --pretty=format:"- %s" >> changelog.md
|
||||
- echo "" >> changelog.md
|
||||
- while read t; do echo "- $t"; done < jira_tickets.txt >> changelog.md
|
||||
- git config --global user.name "schmidt_n"
|
||||
- git config --global user.email "niklas.schmidt@rheinmetall.com"
|
||||
- git tag "$VER"
|
||||
- git push --tags http://root:EYQJTVoFUEdgbb23KSuJ@$CI_SERVER_HOST/$CI_PROJECT_PATH.git HEAD:master
|
||||
|
||||
|
||||
Reference in new issue
Block a user