Select Git revision
.gitlab-ci.yml
.gitlab-ci.yml 6.52 KiB
include:
- remote: https://open.greenhost.net/stackspin/stackspin/raw/main/.gitlab/ci_templates/kaniko.yml
stages:
- build
# TODO: Re-enable after fixing #82
- lint
# TODO: Re-enable after fixing #73
# - application-test
- integration-test
#login_test:
# image: python:3.8
# stage: unittest
# needs: []
# variables:
# HYDRA_ADMIN_URL: http://localhost/ignored
# KRATOS_PUBLIC_URL: http://localhost/ignored
# PUBLIC_URL: http://localhost/ignored
# cache:
# paths:
# - "$CI_PROJECT_DIR/pip-cache"
# key: "$CI_PROJECT_ID"
# before_script:
# - cd login
# - python -V
# - pip install -r requirements.txt
# script:
# - pytest -v --cov=login --cov-report=term --cov-report=xml tests
# artifacts:
# reports:
# cobertura: login/coverage.xml
# coverage: '/^TOTAL.+?(\d+\%)$/'
# Stackspin login panel
login:
stage: build
needs: []
extends: .kaniko_build
variables:
KANIKO_CONTEXT: "login"
KANIKO_BUILD_IMAGENAME: $CI_JOB_NAME
before_script:
- ls -l ${CI_PROJECT_DIR}/${KANIKO_CONTEXT:-.}/Dockerfile
only:
changes:
- login/**/*
# For full integration testing we need to build the full stack in CI/CD
#
# - postgres : Backend database, the Dockerfile is based on the upstream
# with a small addition to create inital databases
# - kratos : Identity manager, based on the upstream. We set the DSN
# in the Dockerimage, as its different from hydra's DSN,
# however, gitlab-ci will apply the same enviroment for all
# services.
# - hydra : See above, the identiy provider
# - login : Our login panel
# - sso_testapp : A test app which implements OIDC for testing
# - behave : Image to do behave testing
# Build our own postgres image, which is based on upstream
postgres:
stage: build
needs: []
variables:
KANIKO_CONTEXT: ".gitlab/ci/postgres"