From 91571d5dc7eaebb8c7f216771b4e9cb3a1063195 Mon Sep 17 00:00:00 2001 From: bom Date: Fri, 20 May 2022 10:01:53 +0200 Subject: [PATCH] updated ci and build scripts --- .gitlab-ci.yml | 17 +++++++++++++++++ infrastructure/clojure/build.py | 13 ++++++++++--- infrastructure/devops-build/build.py | 13 ++++++++++--- 3 files changed, 37 insertions(+), 6 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 447d473..1b05153 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,6 +7,7 @@ before_script: stages: - lint + - image - upload flake8: @@ -48,3 +49,19 @@ pypi-stable: - if: '$CI_COMMIT_TAG =~ /^[0-9]+\.[0-9]+\.[0-9]+$/' script: - pyb -P version=$CI_COMMIT_TAG publish upload + +clojure-image-test-publish: + image: domaindrivenarchitecture/devops-build:latest + stage: image + rules: + - if: '$CI_COMMIT_TAG != null' + script: + - cd infrastructure/clojure && pyb image test publish + +devops-build-image-test-publish: + image: domaindrivenarchitecture/devops-build:latest + stage: image + rules: + - if: '$CI_COMMIT_TAG != null' + script: + - cd infrastructure/devops-build && pyb image test publish diff --git a/infrastructure/clojure/build.py b/infrastructure/clojure/build.py index ab4bf86..eef4f67 100644 --- a/infrastructure/clojure/build.py +++ b/infrastructure/clojure/build.py @@ -16,10 +16,17 @@ class MyBuild(DevopsDockerBuild): def initialize(project): project.build_depends_on('ddadevops>=0.13.0') stage = 'notused' - dockerhub_user = gopass_field_from_path('meissa/web/docker.com', 'login') - dockerhub_password = gopass_password_from_path('meissa/web/docker.com') + dockerhub_user = environ.get('DOCKERHUB_USER') + if not dockerhub_user: + dockerhub_user = gopass_field_from_path('meissa/web/docker.com', 'login') + dockerhub_password = environ.get('DOCKERHUB_PASSWORD') + if not dockerhub_password: + dockerhub_password = gopass_password_from_path('meissa/web/docker.com') + tag = environ.get('CI_COMMIT_TAG') + if not tag: + tag = get_tag_from_latest_commit() config = create_devops_docker_build_config( - stage, PROJECT_ROOT_PATH, MODULE, dockerhub_user, dockerhub_password) + stage, PROJECT_ROOT_PATH, MODULE, dockerhub_user, dockerhub_password, docker_publish_tag=tag) build = MyBuild(project, config) build.initialize_build_dir() diff --git a/infrastructure/devops-build/build.py b/infrastructure/devops-build/build.py index 335f808..bd3ba87 100644 --- a/infrastructure/devops-build/build.py +++ b/infrastructure/devops-build/build.py @@ -16,10 +16,17 @@ class MyBuild(DevopsDockerBuild): def initialize(project): project.build_depends_on('ddadevops>=0.13.0') stage = 'notused' - dockerhub_user = gopass_field_from_path('meissa/web/docker.com', 'login') - dockerhub_password = gopass_password_from_path('meissa/web/docker.com') + dockerhub_user = environ.get('DOCKERHUB_USER') + if not dockerhub_user: + dockerhub_user = gopass_field_from_path('meissa/web/docker.com', 'login') + dockerhub_password = environ.get('DOCKERHUB_PASSWORD') + if not dockerhub_password: + dockerhub_password = gopass_password_from_path('meissa/web/docker.com') + tag = environ.get('CI_COMMIT_TAG') + if not tag: + tag = get_tag_from_latest_commit() config = create_devops_docker_build_config( - stage, PROJECT_ROOT_PATH, MODULE, dockerhub_user, dockerhub_password) + stage, PROJECT_ROOT_PATH, MODULE, dockerhub_user, dockerhub_password, docker_publish_tag=tag) build = MyBuild(project, config) build.initialize_build_dir()