14 - dnf install -y python3-pytest python3-pytest-cov python3-requests
16 - pytest-3 --junitxml=junit.xml --cov=build_manifest gitlab/build_manifest.py
19 - "gitlab/build_manifest.py"
20 coverage: '/TOTAL.*\s+(\d+%)$/'
27 - gitlab/build_manifest.py
30 image: "docker:stable"
34 # When using dind, it's wise to use the overlayfs driver for
35 # improved performance.
36 DOCKER_DRIVER: "overlay2"
39 - export IMAGE="${CI_REGISTRY_IMAGE}/${ARCH}/${TAG}"
40 - export REF="${IMAGE}:${CI_COMMIT_SHA}"
41 - export LATEST="${IMAGE}:latest"
43 - docker build --pull -f ${DOCKERFILE} -t ${REF} ${CONTEXT_DIR}
44 - docker image tag ${REF} ${LATEST}
46 # If we are in a fork, push the image to the reigstry regardless the branch
48 if [ "$CI_PROJECT_NAMESPACE" != "gstreamer" ]; then
49 docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
54 # Push the images to the upstream registry
56 if [ "$CI_COMMIT_REF_NAME" = "master" -a "$CI_PROJECT_NAMESPACE" = "gstreamer" ]; then
57 docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
62 alpine amd64 manifest builder docker:
63 stage: "build runtime"
66 TAG: "alpine-manifest-build"
67 CONTEXT_DIR: "docker/runtime-images/"
68 DOCKERFILE: "docker/runtime-images/Dockerfile-manifest-builder"
72 - 'docker/runtime-images/Dockerfile-manifest-builder'
73 - 'gitlab/build_manifest.py'
75 fedora amd64 run docker:
76 stage: "build runtime"
80 CONTEXT_DIR: "docker/runtime-images/"
81 DOCKERFILE: "docker/runtime-images/Dockerfile-fedora"
85 - 'docker/runtime-images/Dockerfile-fedora'
87 fedora amd64 build docker:
92 CONTEXT_DIR: "docker/build-base-images/"
93 DOCKERFILE: "docker/build-base-images/Dockerfile-fedora"
97 - 'docker/build-base-images/Dockerfile-fedora'
99 include: "gitlab/ci_template.yml"
101 # Test the build job against the latest build image tag and the local manifest
102 build fedora x86_64 local:
104 image: "${CI_REGISTRY_IMAGE}/amd64/fedora-build:latest"