Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
C
caosdb-cpplib
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review 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
caosdb
Software
caosdb-cpplib
Commits
3f9a0886
Verified
Commit
3f9a0886
authored
3 years ago
by
Timm Fitschen
Browse files
Options
Downloads
Patches
Plain Diff
WIP: pipeline
parent
b983b7f1
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Pipeline
#8323
failed
3 years ago
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
.gitlab-ci.yml
+53
-15
53 additions, 15 deletions
.gitlab-ci.yml
with
53 additions
and
15 deletions
.gitlab-ci.yml
+
53
−
15
View file @
3f9a0886
...
...
@@ -21,33 +21,55 @@
#
variables
:
CI_REGISTRY_IMAGE
:
$CI_REGISTRY/caosdb/src/caosdb-cpplib/testenv:latest
CPP_INT_TEST_REPO
:
https://gitlab.indiscale.com/api/v4/projects/111/trigger/pipeline
INT_TEST_REPO
:
$CPP_INT_TEST_REPO
CPPLIB_TESTENV_IMAGE_SUFFIX
:
$CI_COMMIT_REF_NAME
CPPLIB_REPO_PATH
:
caosdb/src/caosdb-cpplib
CPPLIB_TESTENV_IMAGE_TAG
:
${CPPLIB_REPO_PATH}/testenv:${CPPLIB_IMAGE_SUFFIX}
CPPLIB_REGISTRY_IMAGE
:
${CI_REGISTRY}/${CPPLIB_IMAGE_TAG}
CPPLIB_IMAGE_CACHE
:
${CPPLIB_IMAGE_TAG}.tar
CPPINTTEST_REPO
:
https://gitlab.indiscale.com/api/v4/projects/111
CPPINTTEST_PIPELINE
:
$CPPINTTEST_REPO/trigger/pipeline
CPPINTTEST_BRANCHES
:
$CPPINTTEST_REPO/branches
GIT_SUBMODULE_STRATEGY
:
normal
image
:
$CI_REGISTRY_IMAGE
## FOR DEBUGGING
TRIGGERED_BY_REPO
:
CPPINTTEST
TRIGGERED_BY_REF
:
$CI_COMMIT_REF_NAME
TRIGGERED_BY_HASH
:
$CI_COMMIT_SHORT_SHA
image
:
$CPPLIB_REGISTRY_IMAGE
stages
:
-
info
-
setup
-
test
-
deploy
info
:
tags
:
[
cached-dind
]
image
:
docker:20.10
stage
:
setup_tests
timeout
:
1 minutes
needs
:
[]
script
:
-
echo "Pipeline triggered by $TRIGGERED_BY_REPO@$TRIGGERED_BY_REF ($TRIGGERED_BY_HASH)"
# Build a docker image in which tests for this repository can run
build-testenv
:
tags
:
[
cached-dind
]
tags
:
[
docker
]
image
:
docker:20.10
stage
:
setup
script
:
-
docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
# use here general latest or specific branch latest...
-
docker pull $C
I
_REGISTRY_IMAGE||
true
-
docker pull $C
PPLIB
_REGISTRY_IMAGE||
true
-
docker build
-f .docker/Dockerfile
--pull
--cache-from $C
I
_REGISTRY_IMAGE
-t $C
I
_REGISTRY_IMAGE .
-
docker push $C
I
_REGISTRY_IMAGE
--cache-from $C
PPLIB
_REGISTRY_IMAGE
-t $C
PPLIB
_REGISTRY_IMAGE .
-
docker push $C
PPLIB
_REGISTRY_IMAGE
# formatting with clang-format
code_style
:
...
...
@@ -70,21 +92,37 @@ test:
# trigger the integration tests
trigger_inttest
:
image
:
docker:20.10
tags
:
[
docker
]
stage
:
deploy
script
:
-
CPPINT_REF=main
-
TRIGGERED_BY_REPO=${TRIGGERED_BY_REPO:-CPPLIB}
-
TRIGGERED_BY_REF=${TRIGGERED_BY_REF:-$CI_COMMIT_REF_NAME}
-
TRIGGERED_BY_HASH=${TRIGGERED_BY_HASH:-$CI_COMMIT_SHORT_SHA}
-
curl google.de
## Determine the cppinttest branch...
-
command -v wget
# ... use an f-branch if posible...
-
if echo "$CI_COMMIT_REF_NAME" | grep -c "^f-" ; then
echo "Check if caosdb_cppinttest has branch $CI_COMMIT_REF_NAME" ;
if wget ${CPPINTTEST_BRANCHES}/${CI_COMMIT_REF_NAME} ; then
# caosdb-cppinttest has this f-branch
CPPINT_REF=$CI_COMMIT_REF_NAME ;
fi;
fi;
# ... or use main if possible...
-
if [[ "$CI_COMMIT_REF_NAME" == "main" ]] ; then
CPPINT_REF=main ;
fi
# ... and fall-back to dev
-
CPPINT_REF=${CPPINT_REF:-dev}
-
echo "Triggering caosdb-cppinttest@${CPPINT_REF}"
-
curl -w "%{stderr}HTTPCODE=%{http_code}" -X POST
-F token=$CI_JOB_TOKEN
-F "variables[TRIGGERED_BY_REPO]=$TRIGGERED_BY_REPO"
-F "variables[TRIGGERED_BY_REF]=$TRIGGERED_BY_REF"
-F "variables[TRIGGERED_BY_HASH]=$TRIGGERED_BY_HASH"
-F ref=${CPPINT_REF} $INT_TEST_REPO 2>HTTPCODE
-F ref=${CPPINT_REF} $CPPINTTEST_PIPELINE 2>HTTPCODE
# fail if the request failed
-
grep -c "HTTPCODE=2" HTTPCODE
# Build the sphinx documentation and make it ready for deployment by Gitlab Pages
...
...
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