X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=.gitlab-ci.yml;h=0d0ab9d343a90ca642cb5cb72f83e163d8d596d9;hb=HEAD;hp=984111df8031110b3a9131c7c5c1e58bcf5394de;hpb=a680514d5f86d02df81f0735d46908c3cfcb392f;p=open-adventure.git diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 984111d..b8f4b91 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,15 +1,28 @@ -image: opensuse:tumbleweed - +# SPDX-FileCopyrightText: (C) Eric S. Raymond +# SPDX-License-Identifier: BSD-2-Clause stages: + - ci-build - build - test - deploy +default: + image: $CI_REGISTRY_IMAGE:ci + +# build and push Docker image to be used in subsequent steps +ci-build: + stage: ci-build + image: + name: gcr.io/kaniko-project/executor:debug + entrypoint: [""] + script: + - mkdir -p /kaniko/.docker + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json + - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile.ci --destination $CI_REGISTRY_IMAGE:ci --cache=true + # build advent itself binary:debug: stage: build - before_script: - - zypper install -y make gcc libedit-devel libasan3 libubsan0 python python2-PyYAML lcov script: - make debug artifacts: @@ -19,12 +32,9 @@ binary:debug: - "*.o" - dungeon.c - dungeon.h - - "*.gcno" binary:release: stage: build - before_script: - - zypper install -y make gcc libedit-devel python python2-PyYAML script: - make advent cheat artifacts: @@ -37,8 +47,6 @@ binary:release: manpage: stage: build - before_script: - - zypper install -y make asciidoc script: - make advent.6 artifacts: @@ -47,8 +55,6 @@ manpage: html: stage: build - before_script: - - zypper install -y make asciidoc libxslt script: - make html artifacts: @@ -57,8 +63,6 @@ html: dist: stage: build - before_script: - - zypper install -y make asciidoc tar script: - export VERS=${CI_COMMIT_REF_NAME} - make dist -e @@ -69,24 +73,16 @@ dist: # run tests using the binary built before test:debug: stage: test - before_script: - - zypper install -y make gcc libedit-devel libasan3 libubsan0 python python2-PyYAML lcov script: - - make debug - - make check - - lcov -t "advent" -o advent.info -c -d . - - genhtml -o coverage advent.info - - cd tests - - ./coverage_dungeon.py - - cd .. + - make coverage artifacts: paths: - coverage + dependencies: + - binary:debug test:release: stage: test - before_script: - - zypper install -y make libedit script: - cd tests - make