4 # Test just one basic build, if succeds procced to test the rest
7 # Run multiple builds and tests, multi-distro, multi-arch
14 image: "registry.freedesktop.org/gstreamer/gst-ci/amd64/test-manifest:5856b05f3010136cebcaa9a90058572e008ae3f6"
17 - pytest-3 --junitxml=junit.xml --cov=build_manifest gitlab/build_manifest.py
18 coverage: '/TOTAL.*\s+(\d+%)$/'
25 image: "docker:stable"
30 # When using dind, it's wise to use the overlayfs driver for
31 # improved performance.
32 DOCKER_DRIVER: "overlay2"
35 - export IMAGE="${CI_REGISTRY_IMAGE}/${ARCH}/${TAG}"
36 - export REF="${IMAGE}:${CI_COMMIT_SHA}"
37 - export LATEST="${IMAGE}:latest"
39 - docker build --pull -f ${DOCKERFILE} -t ${LATEST} ${CONTEXT_DIR}
41 # If we are in a fork, push the image to the reigstry regardless the branch
43 if [ "$CI_PROJECT_NAMESPACE" != "gstreamer" ]; then
44 docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
48 # Push the images to the upstream registry
50 if [ "$CI_COMMIT_REF_NAME" = "master" -a "$CI_PROJECT_NAMESPACE" = "gstreamer" ]; then
51 # Tag the image with the git ref
52 docker image tag ${LATEST} ${REF}
54 docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
59 alpine amd64 manifest builder docker:
64 CONTEXT_DIR: "docker/build_manifest/"
65 DOCKERFILE: "docker/build_manifest/Dockerfile"
68 test manifest amd64 docker:
73 CONTEXT_DIR: "docker/test_manifest/"
74 DOCKERFILE: "docker/test_manifest/Dockerfile"
77 gst-indent amd64 docker:
82 CONTEXT_DIR: "docker/indent/"
83 DOCKERFILE: "docker/indent/Dockerfile"
91 CONTEXT_DIR: "docker/fedora/"
92 DOCKERFILE: "docker/fedora/Dockerfile"
100 CONTEXT_DIR: "docker/ubuntu/"
101 DOCKERFILE: "docker/ubuntu/Dockerfile"
104 cerbero fedora amd64 docker:
105 stage: "build docker"
108 TAG: "cerbero-fedora"
109 CONTEXT_DIR: "docker/cerbero/"
110 DOCKERFILE: "docker/cerbero/Dockerfile-fedora"
113 include: "gitlab/ci_template.yml"
119 # Test the build job against the latest build image tag and the local manifest
120 build fedora x86_64 local:
121 extends: '.build local'
123 image: "${CI_REGISTRY_IMAGE}/amd64/fedora:latest"
126 - "master@gstreamer/gst-ci"
128 build android 28 local:
129 extends: '.build local'
133 -Dbad:androidmedia=enabled
134 --cross-file cross-files/android_arm64_api28.txt
135 image: "${CI_REGISTRY_IMAGE}/amd64/ubuntu:latest"
138 - "master@gstreamer/gst-ci"
140 build cerbero fedora x86_64 local:
141 extends: '.build cerbero fedora x86_64'
142 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
146 - "master@gstreamer/gst-ci"
148 .test fedora x86_64 local:
149 image: '${CI_REGISTRY_IMAGE}/amd64/fedora:latest'
152 - build fedora x86_64 local
156 - "master@gstreamer/gst-ci"
159 extends: '.test fedora x86_64 local'
161 TEST_SUITE: 'check.gst*'