rpm-icinga2/.gitlab-ci.yml

199 lines
3.1 KiB
YAML

stages:
- build
- test
- upload
variables:
DOCKER_IMAGE_BASE: registry.icinga.com/build-docker
ICINGA_BUILD_TYPE: snapshot
#ICINGA_BUILD_TYPE: release
#ICINGA_BUILD_RELEASE_TYPE:
#ICINGA_BUILD_UPSTREAM_BRANCH:
.build: &build
stage: build
tags:
- docker
image: ${DOCKER_IMAGE_BASE}/${DOCKER_IMAGE}
script:
- icinga-build-package
cache:
key: "${CI_JOB_NAME}"
paths:
- ccache/
- 'icinga2.git'
artifacts:
paths:
- build/*
expire_in: 1 week
.test: &test
stage: test
tags:
- docker
image: ${DOCKER_IMAGE_BASE}/${DOCKER_IMAGE}
script:
- find build/
- icinga-build-test
.upload: &upload
stage: upload
tags:
- docker
image: ${DOCKER_IMAGE_BASE}/upload
script:
- find build/
- icinga-build-upload-aptly
only:
- master
- tags
###################################
# EPEL
###################################
build/centos/8:
<<: *build
variables:
DOCKER_IMAGE: centos/8
test/centos/8:
<<: *test
variables:
DOCKER_IMAGE: centos/8
dependencies:
- build/centos/8
upload/epel/8:
<<: *upload
dependencies:
- build/centos/8
build/centos/7:
<<: *build
variables:
DOCKER_IMAGE: centos/7
test/centos/7:
<<: *test
variables:
DOCKER_IMAGE: centos/7
dependencies:
- build/centos/7
upload/epel/7:
<<: *upload
dependencies:
- build/centos/7
###################################
# Fedora
###################################
build/fedora/33:
<<: *build
variables:
DOCKER_IMAGE: fedora/33
RPM_BUILD_NCPUS: '1'
test/fedora/33:
<<: *test
variables:
DOCKER_IMAGE: fedora/33
dependencies:
- build/fedora/33
upload/fedora/33:
<<: *upload
dependencies:
- build/fedora/33
build/fedora/32:
<<: *build
variables:
DOCKER_IMAGE: fedora/32
test/fedora/32:
<<: *test
variables:
DOCKER_IMAGE: fedora/32
dependencies:
- build/fedora/32
upload/fedora/32:
<<: *upload
dependencies:
- build/fedora/32
###################################
# SLES
###################################
build/sles/15.2:
<<: *build
variables:
DOCKER_IMAGE: sles/15.2
test/sles/15.2:
<<: *test
variables:
DOCKER_IMAGE: sles/15.2
dependencies:
- build/sles/15.2
upload/SUSE/15.2:
<<: *upload
dependencies:
- build/sles/15.2
build/sles/15.1:
<<: *build
variables:
DOCKER_IMAGE: sles/15.1
test/sles/15.1:
<<: *test
variables:
DOCKER_IMAGE: sles/15.1
dependencies:
- build/sles/15.1
upload/SUSE/15.1:
<<: *upload
dependencies:
- build/sles/15.1
build/sles/12.5:
<<: *build
variables:
DOCKER_IMAGE: sles/12.5
test/sles/12.5:
<<: *test
variables:
DOCKER_IMAGE: sles/12.5
dependencies:
- build/sles/12.5
upload/SUSE/12.5:
<<: *upload
dependencies:
- build/sles/12.5
###################################
# openSUSE
###################################
build/opensuse/15.2:
<<: *build
variables:
DOCKER_IMAGE: opensuse/15.2
test/opensuse/15.2:
<<: *test
variables:
DOCKER_IMAGE: opensuse/15.2
dependencies:
- build/opensuse/15.2
upload/openSUSE/15.2:
<<: *upload
dependencies:
- build/opensuse/15.2