IAP GITLAB
Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
C
corsika
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Issue 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
Pranav Sampathkumar
corsika
Commits
dd01d38f
Commit
dd01d38f
authored
3 years ago
by
ralfulrich
Browse files
Options
Downloads
Patches
Plain Diff
w/o caching
parent
7cead270
No related branches found
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
.gitlab-ci.yml
+61
-109
61 additions, 109 deletions
.gitlab-ci.yml
.gitlab-ci.yml-cache
+581
-0
581 additions, 0 deletions
.gitlab-ci.yml-cache
with
642 additions
and
109 deletions
.gitlab-ci.yml
+
61
−
109
View file @
dd01d38f
...
...
@@ -105,25 +105,16 @@ check-clang-format:
expire_in
:
3 days
paths
:
-
${CI_PROJECT_DIR}/build/CMakeFiles/CMakeOutput.log
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull-push
# config for gcc
config-u-18_04
:
extends
:
.config
image
:
corsika/devel:u-18.04
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
# config for clang
config-clang-8
:
extends
:
.config
image
:
corsika/devel:clang-8
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-clang"
...
...
@@ -138,7 +129,9 @@ config-clang-8:
tags
:
-
corsika
script
:
-
mkdir -p build
-
cd build
-
cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_BUILD_TYPE=Debug -DUSE_Pythia8_C8=C8
-
cmake --build . -- -j4
rules
:
-
if
:
$CI_MERGE_REQUEST_ID
...
...
@@ -148,30 +141,22 @@ config-clang-8:
-
if
:
$CI_COMMIT_BRANCH
when
:
manual
allow_failure
:
true
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull-push
# build for gcc
build-u-18_04
:
extends
:
.build
image
:
corsika/devel:u-18.04
dependencies
:
-
config-u-18_04
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
needs
:
-
job
:
config-u-18_04
artifacts
:
false
# build for clang
build-clang-8
:
extends
:
.build
image
:
corsika/devel:clang-8
dependencies
:
-
config-clang-8
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-clang"
needs
:
-
job
:
config-clang-8
artifacts
:
false
...
...
@@ -185,7 +170,9 @@ build-clang-8:
tags
:
-
corsika
script
:
-
mkdir -p build
-
cd build
-
cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_BUILD_TYPE=Debug -DUSE_Pythia8_C8=C8
-
set -o pipefail
-
ctest -j4
rules
:
...
...
@@ -202,29 +189,22 @@ build-clang-8:
reports
:
junit
:
-
${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull-push
# test for gcc
test-u-18_04
:
extends
:
.test
image
:
corsika/devel:u-18.04
dependencies
:
-
build-u-18_04
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
needs
:
-
job
:
build-u-18_04
artifacts
:
false
# test for clang
test-clang-8
:
extends
:
.test
image
:
corsika/devel:clang-8
dependencies
:
-
build-clang-8
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-clang"
needs
:
-
job
:
build-clang-8
artifacts
:
false
...
...
@@ -239,7 +219,9 @@ test-clang-8:
tags
:
-
corsika
script
:
-
mkdir -p build
-
cd build
-
cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_BUILD_TYPE=Debug -DUSE_Pythia8_C8=C8
-
cmake --build . -- -j4
-
set -o pipefail
-
ctest -j4
...
...
@@ -257,29 +239,22 @@ test-clang-8:
reports
:
junit
:
-
${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull-push
# build_test for gcc
build_test-u-18_04
:
extends
:
.build_test
image
:
corsika/devel:u-18.04
dependencies
:
-
config-u-18_04
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
needs
:
-
job
:
config-u-18_04
artifacts
:
false
# build_test for clang
build_test-clang-8
:
extends
:
.build_test
image
:
corsika/devel:clang-8
dependencies
:
-
config-clang-8
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-clang"
needs
:
-
job
:
config-clang-8
artifacts
:
false
...
...
@@ -295,7 +270,9 @@ build_test-clang-8:
tags
:
-
corsika
script
:
-
mkdir -p build
-
cd build
-
cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_BUILD_TYPE=Debug -DUSE_Pythia8_C8=C8
-
cmake --build . -- -j4
-
set -o pipefail
-
ctest -j4
...
...
@@ -323,29 +300,23 @@ build_test-clang-8:
paths
:
-
${CI_PROJECT_DIR}/build/build_examples/examples.log.gz
-
${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull
# build_test_example for gcc
build_test_example-u-18_04
:
extends
:
.build_test_example
image
:
corsika/devel:u-18.04
dependencie
s
:
-
config-u-18_04
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
need
s
:
-
job
:
config-u-18_04
artifacts
:
false
# build_test_example for clang
build_test_example-clang-8
:
extends
:
.build_test_example
image
:
corsika/devel:clang-8
dependencies
:
-
config-clang-8
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-clang"
needs
:
-
job
:
config-clang-8
artifacts
:
false
...
...
@@ -360,7 +331,9 @@ build_test_example-clang-8:
tags
:
-
corsika
script
:
-
mkdir -p build
-
cd build
-
cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_BUILD_TYPE=Debug -DUSE_Pythia8_C8=C8
-
set -o pipefail
-
make -j2 install
rules
:
...
...
@@ -374,29 +347,22 @@ build_test_example-clang-8:
-
if
:
$CI_COMMIT_TAG
when
:
manual
allow_failure
:
true
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull
# install for gcc
install-u-18_04
:
extends
:
.install
image
:
corsika/devel:u-18.04
dependencies
:
-
build-u-18_04
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
needs
:
-
job
:
build-u-18_04
artifacts
:
false
# install for clang
install-clang-8
:
extends
:
.install
image
:
corsika/devel:clang-8
dependencies
:
-
build-clang-8
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-clang"
needs
:
-
job
:
build-clang-8
artifacts
:
false
...
...
@@ -411,6 +377,7 @@ install-clang-8:
tags
:
-
corsika
script
:
-
mkdir -p build
-
cd build
-
cmake .. -DCMAKE_BUILD_TYPE=Release -DUSE_Pythia8_C8=C8
-
cmake --build . -- -j4
...
...
@@ -433,11 +400,6 @@ install-clang-8:
-
if
:
$CI_COMMIT_TAG
when
:
manual
allow_failure
:
true
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull
artifacts
:
when
:
always
expire_in
:
3 days
...
...
@@ -452,19 +414,17 @@ install-clang-8:
release-full-u-18_04
:
extends
:
.release
image
:
corsika/devel:u-18.04
dependencies
:
-
config-u-18_04
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
needs
:
-
job
:
config-u-18_04
artifacts
:
false
# release for clang
release-full-clang-8
:
extends
:
.release
image
:
corsika/devel:clang-8
dependencies
:
-
config-clang-8
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-clang"
needs
:
-
job
:
config-clang-8
artifacts
:
false
...
...
@@ -474,12 +434,14 @@ release-full-clang-8:
coverage
:
image
:
corsika/devel:u-18.04
dependencies
:
-
config-u-18_04
needs
:
-
job
:
config-u-18_04
artifacts
:
false
stage
:
optional
tags
:
-
corsika
script
:
-
mkdir -p build
-
cd build
-
cmake .. -DCMAKE_BUILD_TYPE=Coverage -DUSE_Pythia8_C8=C8
-
cmake --build . -- -j4
...
...
@@ -501,12 +463,6 @@ coverage:
expire_in
:
1 year
paths
:
-
${CI_PROJECT_DIR}/build/coverage-report.tar.gz
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
...
...
@@ -517,14 +473,17 @@ coverage:
##########################################################
sanity
:
image
:
corsika/devel:u-18.04
dependencies
:
-
config-u-18_04
needs
:
-
job
:
config-u-18_04
artifacts
:
false
stage
:
optional
tags
:
-
corsika
script
:
-
mkdir -p build
-
cd build
-
cmake .. -DWITH_CORSIKA_SANITIZERS_ENABLED=ON
-
cmake .. -DWITH_CORSIKA_SANITIZERS_ENABLED=ON
-DCMAKE_BUILD_TYPE=Debug -DUSE_Pythia8_C8=C8
-
cmake --build . -- -j4
rules
:
-
if
:
'
$CI_MERGE_REQUEST_LABELS
=~
/Ready
for
code
review/'
# run on merge requests, if label 'Ready for code review' is set
...
...
@@ -537,12 +496,6 @@ sanity:
-
if
:
$CI_COMMIT_TAG
when
:
manual
allow_failure
:
true
cache
:
paths
:
-
${CI_PROJECT_DIR}/build/
untracked
:
true
policy
:
pull
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
##########################################################
# template for all Python jobs
...
...
@@ -569,10 +522,9 @@ sanity:
python-3.8
:
extends
:
.python
image
:
corsika/devel:u-18.04
dependencies
:
-
build-u-18_04
cache
:
key
:
"
${CI_COMMIT_REF_SLUG}-gcc"
needs
:
-
job
:
build-u-18_04
artifacts
:
false
artifacts
:
when
:
always
expire_in
:
1 year
...
...
This diff is collapsed.
Click to expand it.
.gitlab-ci.yml-cache
0 → 100644
+
581
−
0
View file @
dd01d38f
variables:
GIT_STRATEGY: $CORSIKA8_GIT_STRATEGY # clone: fresh clone, fetch: update
GIT_SSL_NO_VERIFY: "1"
GIT_DEPTH: "1"
# to re-use clones also in different forks
GIT_CLONE_PATH: $CI_BUILDS_DIR/$CI_CONCURRENT_ID/$CI_PROJECT_NAME
## Runtime options for sanitizers
# (detect_leaks=0 because leak detection doesn't work in CI, but you can
# try to test with leak detection locally by using detect_leaks=1)
UBSAN_OPTIONS: "print_stacktrace=1"
LSAN_OPTIONS: "log_threads=1"
ASAN_OPTIONS: "detect_leaks=0:detect_stack_use_after_return=1"
# location of AirShowerPhysics/corsika-data
CORSIKA_DATA: "${CI_PROJECT_DIR}/modules/data" # the git submodule
corsika_DIR: "${CI_PROJECT_DIR}/build/install" # for cmake to find corsikaConfig.cmake
# _alternatively_ corsika-data can be downloaded as submodule:
GIT_SUBMODULE_STRATEGY: normal # none: we get the submodules in before_script,
# normal: get submodules automatically
CTEST_OUTPUT_ON_FAILURE: 1
#
# multi-step pipeline for each commit
#
# Mote: "Draft:" merge request, non-Draft merge requests and "Ready for Code Review" MR are all
# handled explicitly
#
stages:
- quality
- config
- build
- test
- build_test
- example
- build_test_example
- python
- install
- optional
####### CODE QUALITY CHECK ##############
##########################################################
check-copyrights:
image: corsika/devel:u-18.04
stage: quality
tags:
- corsika
script:
- ./do-copyright.py
rules:
- if: $CI_MERGE_REQUEST_ID
- if: $CI_COMMIT_TAG
- if: $CI_COMMIT_BRANCH
allow_failure: true
##########################################################
check-clang-format:
image: corsika/devel:clang-8
stage: quality
tags:
- corsika
script:
- ./do-clang-format.py --all
rules:
- if: $CI_MERGE_REQUEST_ID
- if: $CI_COMMIT_TAG
- if: $CI_COMMIT_BRANCH
allow_failure: true
### CodeQuality tool ####
#include:
# - template: Code-Quality.gitlab-ci.yml
#
#code_quality:
# stage: quality
# rules:
# - if: '$CODE_QUALITY_DISABLED'
# when: never
# - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' # Run code quality job in merge request pipelines
# - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' # Run code quality job in pipelines on the master branch (but not in other branch pipelines)
# - if: '$CI_COMMIT_TAG' # Run code quality job in pipelines for tags
####### CONFIG ##############
##########################################################
# the generic config template job
# job/stage to just prepare cmake
.config:
stage: config
tags:
- corsika
script:
- mkdir -p build
- cd build
- cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_BUILD_TYPE=Debug -DUSE_Pythia8_C8=C8
rules:
- if: $CI_MERGE_REQUEST_ID
- if: $CI_COMMIT_TAG
- if: $CI_COMMIT_BRANCH
artifacts:
when: on_failure
expire_in: 3 days
paths:
- ${CI_PROJECT_DIR}/build/CMakeFiles/CMakeOutput.log
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull-push
# config for gcc
config-u-18_04:
extends: .config
image: corsika/devel:u-18.04
cache:
key: "${CI_COMMIT_REF_SLUG}-gcc"
# config for clang
config-clang-8:
extends: .config
image: corsika/devel:clang-8
cache:
key: "${CI_COMMIT_REF_SLUG}-clang"
####### BUILD (only manual) ##############
##########################################################
# the generic build template job
# normal pipeline for each commit
.build:
stage: build
tags:
- corsika
script:
- cd build
- cmake --build . -- -j4
rules:
- if: $CI_MERGE_REQUEST_ID
when: manual
- if: $CI_COMMIT_TAG
when: manual
- if: $CI_COMMIT_BRANCH
when: manual
allow_failure: true
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull-push
# build for gcc
build-u-18_04:
extends: .build
image: corsika/devel:u-18.04
dependencies:
- config-u-18_04
cache:
key: "${CI_COMMIT_REF_SLUG}-gcc"
# build for clang
build-clang-8:
extends: .build
image: corsika/devel:clang-8
dependencies:
- config-clang-8
cache:
key: "${CI_COMMIT_REF_SLUG}-clang"
####### TEST (only manual) ##############
##########################################################
# generic test template job
# normal pipeline for each commit
.test:
stage: test
tags:
- corsika
script:
- cd build
- set -o pipefail
- ctest -j4
rules:
- if: $CI_MERGE_REQUEST_ID
when: manual
- if: $CI_COMMIT_TAG
when: manual
- if: $CI_COMMIT_BRANCH
when: manual
allow_failure: true
artifacts:
when: always
expire_in: 3 days
reports:
junit:
- ${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull-push
# test for gcc
test-u-18_04:
extends: .test
image: corsika/devel:u-18.04
dependencies:
- build-u-18_04
cache:
key: "${CI_COMMIT_REF_SLUG}-gcc"
# test for clang
test-clang-8:
extends: .test
image: corsika/devel:clang-8
dependencies:
- build-clang-8
cache:
key: "${CI_COMMIT_REF_SLUG}-clang"
####### BUILD-TEST (all builds <= Draft, default) ##############
##########################################################
# the generic build_test template job
# normal pipeline for each commit
.build_test:
stage: build_test
tags:
- corsika
script:
- cd build
- cmake --build . -- -j4
- set -o pipefail
- ctest -j4
rules:
- if: '$CI_MERGE_REQUEST_ID && $CI_MERGE_REQUEST_TITLE =~ /^Draft:/'
allow_failure: false
- if: $CI_MERGE_REQUEST_ID
when: manual
allow_failure: true
artifacts:
when: always
expire_in: 3 days
paths:
- ${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
reports:
junit:
- ${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull-push
# build_test for gcc
build_test-u-18_04:
extends: .build_test
image: corsika/devel:u-18.04
dependencies:
- config-u-18_04
cache:
key: "${CI_COMMIT_REF_SLUG}-gcc"
# build_test for clang
build_test-clang-8:
extends: .build_test
image: corsika/devel:clang-8
dependencies:
- config-clang-8
cache:
key: "${CI_COMMIT_REF_SLUG}-clang"
####### BUILD-TEST-EXAMPLE (only non-Draft) ##############
##########################################################
# generic example template job
# normal pipeline for each commit
.build_test_example:
stage: build_test_example
tags:
- corsika
script:
- cd build
- cmake --build . -- -j4
- set -o pipefail
- ctest -j4
- make install
- mkdir -p build_examples
- cd build_examples
- cmake ../install/share/corsika/examples
- make -j4
- make -j4 run_examples | gzip -v -9 > examples.log.gz
rules:
- if: '$CI_MERGE_REQUEST_ID && $CI_MERGE_REQUEST_TITLE =~ /^Draft:/'
when: manual
allow_failure: true
- if: $CI_COMMIT_BRANCH
- if: $CI_MERGE_REQUEST_ID
- if: $CI_COMMIT_TAG
when: manual
allow_failure: true
artifacts:
when: always
expire_in: 3 days
reports:
junit:
- ${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
paths:
- ${CI_PROJECT_DIR}/build/build_examples/examples.log.gz
- ${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull
# build_test_example for gcc
build_test_example-u-18_04:
extends: .build_test_example
image: corsika/devel:u-18.04
dependencies:
- config-u-18_04
cache:
key: "${CI_COMMIT_REF_SLUG}-gcc"
# build_test_example for clang
build_test_example-clang-8:
extends: .build_test_example
image: corsika/devel:clang-8
dependencies:
- config-clang-8
cache:
key: "${CI_COMMIT_REF_SLUG}-clang"
####### INSTALL ##############
##########################################################
# generic install template job
# make install
.install:
stage: install
tags:
- corsika
script:
- cd build
- set -o pipefail
- make -j2 install
rules:
- if: '$CI_MERGE_REQUEST_LABELS =~ /Ready for code review/' # run on merge requests, if label 'Ready for code review' is set
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
when: manual
allow_failure: true
- if: $CI_MERGE_REQUEST_ID
when: manual
allow_failure: true
- if: $CI_COMMIT_TAG
when: manual
allow_failure: true
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull
# install for gcc
install-u-18_04:
extends: .install
image: corsika/devel:u-18.04
dependencies:
- build-u-18_04
cache:
key: "${CI_COMMIT_REF_SLUG}-gcc"
# install for clang
install-clang-8:
extends: .install
image: corsika/devel:clang-8
dependencies:
- build-clang-8
cache:
key: "${CI_COMMIT_REF_SLUG}-clang"
####### OPTIONAL ##############
##########################################################
# generic release template job
# optional release pipeline for each commit
.release:
stage: optional
tags:
- corsika
script:
- cd build
- cmake .. -DCMAKE_BUILD_TYPE=Release -DUSE_Pythia8_C8=C8
- cmake --build . -- -j4
- set -o pipefail
- ctest -j4
- make install
- mkdir -p build_examples
- cd build_examples
- cmake ../install/share/corsika/examples
- make -j4
- make -j4 run_examples | gzip -v -9 > examples.log.gz
rules:
- if: '$CI_MERGE_REQUEST_LABELS =~ /Ready for code review/' # run on merge requests, if label 'Ready for code review' is set
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
when: manual
allow_failure: true
- if: $CI_MERGE_REQUEST_ID
when: manual
allow_failure: true
- if: $CI_COMMIT_TAG
when: manual
allow_failure: true
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull
artifacts:
when: always
expire_in: 3 days
reports:
junit:
- ${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
paths:
- ${CI_PROJECT_DIR}/build/build_examples/examples.log.gz
- ${CI_PROJECT_DIR}/build/test_outputs/junit*.xml
# release for gcc
release-full-u-18_04:
extends: .release
image: corsika/devel:u-18.04
dependencies:
- config-u-18_04
cache:
key: "${CI_COMMIT_REF_SLUG}-gcc"
# release for clang
release-full-clang-8:
extends: .release
image: corsika/devel:clang-8
dependencies:
- config-clang-8
cache:
key: "${CI_COMMIT_REF_SLUG}-clang"
##########################################################
# the coverage generation should either run when manually requested, OR always on the master
coverage:
image: corsika/devel:u-18.04
dependencies:
- config-u-18_04
stage: optional
tags:
- corsika
script:
- cd build
- cmake .. -DCMAKE_BUILD_TYPE=Coverage -DUSE_Pythia8_C8=C8
- cmake --build . -- -j4
- ctest -j4
- cmake --build . --target coverage
- tar czf coverage-report.tar.gz coverage-report
coverage: '/^.*lines\.+:\s(.*\%)\s/'
rules:
- if: '$CI_MERGE_REQUEST_LABELS =~ /Ready for code review/' # run on merge requests, if label 'Ready for code review' is set
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
- if: $CI_MERGE_REQUEST_ID
when: manual
allow_failure: true
- if: $CI_COMMIT_TAG
when: manual
allow_failure: true
artifacts:
when: always
expire_in: 1 year
paths:
- ${CI_PROJECT_DIR}/build/coverage-report.tar.gz
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull
key: "${CI_COMMIT_REF_SLUG}-gcc"
##########################################################
sanity:
image: corsika/devel:u-18.04
dependencies:
- config-u-18_04
stage: optional
tags:
- corsika
script:
- cd build
- cmake .. -DWITH_CORSIKA_SANITIZERS_ENABLED=ON
- cmake --build . -- -j4
rules:
- if: '$CI_MERGE_REQUEST_LABELS =~ /Ready for code review/' # run on merge requests, if label 'Ready for code review' is set
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
when: manual
allow_failure: true
- if: $CI_MERGE_REQUEST_ID
when: manual
allow_failure: true
- if: $CI_COMMIT_TAG
when: manual
allow_failure: true
cache:
paths:
- ${CI_PROJECT_DIR}/build/
untracked: true
policy: pull
key: "${CI_COMMIT_REF_SLUG}-gcc"
##########################################################
# template for all Python jobs
.python:
stage: python
tags:
- corsika
before_script:
- apt-get update && apt-get install -y python3-pip
- pip3 install --upgrade cython
script:
- cd ${CI_PROJECT_DIR}/python # change into the Python directory
- pip3 install --user -e '.[test]' # install the package + test deps
- python3 --version
- python3 -m mypy corsika
- python3 -m isort --atomic --check-only corsika tests
- python3 -m black -t py37 corsika tests
- python3 -m flake8 corsika tests
- python3 -m pytest --cov=corsika tests
- cd ${CI_PROJECT_DIR} # reset the directory
coverage: '/^TOTAL\s*\d+\s*\d+\s*(.*\%)/'
# the default Python version Ubuntu 18.04 is Python3.8
python-3.8:
extends: .python
image: corsika/devel:u-18.04
dependencies:
- build-u-18_04
cache:
key: "${CI_COMMIT_REF_SLUG}-gcc"
artifacts:
when: always
expire_in: 1 year
paths:
- ${CI_PROJECT_DIR}/Python/python-test.log
allow_failure: true
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