diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 396a29b7bf0d8d282e37416b1224ec6d592170da..4f99d127ddd22f6133c5942d4c8e46c6af1a725e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -28,6 +28,7 @@ stages: - cert - style - test + - deploy # During the test stage the CI pipeline (which runs in a "root" docker) starts @@ -123,6 +124,11 @@ test: - cd .docker # here the server and the mysql backend docker are being started - CAOSDB_TAG=$CAOSDB_TAG docker-compose up -d + # store versions of CaosDB parts + - docker exec -u 0 -t docker_caosdb-server_1 cat /opt/caosdb/git/caosdb_pylib_commit > hash_pylib + - docker exec -u 0 -t docker_caosdb-server_1 cat /opt/caosdb/git/caosdb_webui_commit > hash_webui + - docker exec -u 0 -t docker_caosdb-server_1 cat /opt/caosdb/git/caosdb_server_commit > hash_server + - docker exec -u 0 -t docker_caosdb-server_1 cat /opt/caosdb/git/caosdb_mysqlbackend_commit > hash_mysql # the pyinttest docker writes the return value of the tests into the # file result - /bin/sh ./run.sh @@ -138,7 +144,7 @@ test: paths: - caosdb_log.txt - mariadb_log.txt - when: on_failure + - .docker/hash_* expire_in: 1 week build-testenv: @@ -193,3 +199,25 @@ style: script: - autopep8 -r --diff --exit-code . allow_failure: true + + +store-version: + tags: [docker] + stage: deploy + dependencies: [test] + image: $CI_REGISTRY_IMAGE + script: + - curl -u gitlab:$REVISONSTOREPW + --data server=$(cat .docker/hash_server) + --data mysql=$(cat .docker/hash_mysql) + --data pylib=$(cat .docker/hash_pylib) + --data webui=$(cat .docker/hash_webui) + --data save=1 https://caosdb.org/revisions/saverev.php + allow_failure: true + only: + - dev + - master + # TODO remove + - f-versions + - web +