From a475ab1de583b1fa9a265016d11773ea6cc43d86 Mon Sep 17 00:00:00 2001 From: Tamas Gal <tgal@km3net.de> Date: Sun, 1 Mar 2020 14:05:57 +0100 Subject: [PATCH] Ci upgrade --- .gitlab-ci.yml | 2 +- publish_images.py | 23 ++++++++++++++--------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0a3103c..91337ac 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,7 +17,7 @@ before_script: test: stage: test script: - - git diff-tree --no-commit-id --name-only -r HEAD + - git --no-pager diff --name-only origin/master - python publish_images.py -q tags: - docker diff --git a/publish_images.py b/publish_images.py index bf8d27c..95e93b2 100755 --- a/publish_images.py +++ b/publish_images.py @@ -5,12 +5,15 @@ import sys import time REGISTRY_URL = 'docker.km3net.de' -SKIP_PUSH = '-q' in sys.argv +IS_TEST_BRANCH = '-t' in sys.argv -def get_changed_dockerfiles(): +def get_changed_dockerfiles(vs_master=False): """Checks the last Git commit and returns a list of changed Dockefiles""" - diff_cmd = "git diff-tree --no-commit-id --name-only -r HEAD" + if vs_master: + diff_cmd = "git --no-pager diff --name-only master" + else: + diff_cmd = "git diff-tree --no-commit-id --name-only -r HEAD" child = sp.Popen(diff_cmd, shell=True, stdout=sp.PIPE, stderr=sp.PIPE) out, _ = child.communicate() @@ -20,7 +23,7 @@ def get_changed_dockerfiles(): def main(): - changed_dockerfiles = get_changed_dockerfiles() + changed_dockerfiles = get_changed_dockerfiles(vs_master=IS_TEST_BRANCH) n_files = len(changed_dockerfiles) if n_files == 0: @@ -35,9 +38,9 @@ def main(): steps = [("Building", "docker build --pull -t {0}/{1} -f {1} . ".format( REGISTRY_URL, fname))] - if not SKIP_PUSH: - steps.append(("Pushing", "docker push {0}/{1}".format(REGISTRY_URL, - fname))) + if not IS_TEST_BRANCH: + steps.append( + ("Pushing", "docker push {0}/{1}".format(REGISTRY_URL, fname))) else: print("Skiping push...") @@ -45,8 +48,10 @@ def main(): for step, cmd in steps: print("{} {} '{}'".format(progress, step, fname)) - child = sp.Popen( - cmd, shell=True, stdout=sys.stdout, stderr=sys.stderr) + child = sp.Popen(cmd, + shell=True, + stdout=sys.stdout, + stderr=sys.stderr) child.communicate() -- GitLab