1 include: "gitlab/ci_template.yml"
9 # use the binaries in some way
17 image: 'registry.freedesktop.org/gstreamer/gst-ci/amd64/test-manifest:2019-10-23-793476'
20 - pytest-3 --junitxml=junit.xml --cov=build_manifest gitlab/build_manifest.py
21 coverage: '/TOTAL.*\s+(\d+%)$/'
28 image: 'registry.fedoraproject.org/fedora:31'
37 BUILDAH_FORMAT: 'docker'
40 - export DATE=$(date +"%Y-%m-%d")
41 - export IMAGE="${CI_REGISTRY_IMAGE}/${ARCH}/${TAG}"
42 - export _UID="${IMAGE}:${DATE}-${CI_JOB_ID}"
43 - export LATEST="${IMAGE}:latest"
45 - dnf install -y buildah runc
46 # Newer versions of podman/buildah try to set overlayfs mount options when
47 # using the vfs driver, and this causes errors.
48 - sed -i '/^mountopt =.*/d' /etc/containers/storage.conf
50 - buildah bud --build-arg DEFAULT_BRANCH=${GST_UPSTREAM_BRANCH} -f ${DOCKERFILE} -t ${LATEST} ${CONTEXT_DIR}
52 # If we are in a fork, push the image to the reigstry regardless the branch
54 if [ "$CI_PROJECT_NAMESPACE" != "gstreamer" ]; then
55 buildah login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
56 buildah push ${LATEST}
59 # Push the images to the upstream registry
61 if [ "$CI_PROJECT_NAMESPACE" = "gstreamer" ]; then
62 # Tag the image with the git ref
63 buildah image tag ${LATEST} ${_UID}-${CI_COMMIT_REF_NAME}
65 buildah login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
66 buildah push ${_UID}-${CI_COMMIT_REF_NAME}
67 buildah push ${LATEST}
70 alpine amd64 manifest builder docker:
75 CONTEXT_DIR: "docker/build_manifest/"
76 DOCKERFILE: "docker/build_manifest/Dockerfile"
79 test manifest amd64 docker:
84 CONTEXT_DIR: "docker/test_manifest/"
85 DOCKERFILE: "docker/test_manifest/Dockerfile"
88 gst-indent amd64 docker:
93 CONTEXT_DIR: "docker/indent/"
94 DOCKERFILE: "docker/indent/Dockerfile"
102 CONTEXT_DIR: "docker/fedora/"
103 DOCKERFILE: "docker/fedora/Dockerfile"
106 cerbero fedora amd64 docker:
107 stage: "build docker"
110 TAG: "cerbero-fedora"
111 CONTEXT_DIR: "docker/cerbero/"
112 DOCKERFILE: "docker/cerbero/Dockerfile-fedora"
116 stage: "build docker"
120 CONTEXT_DIR: "docker/android/"
121 DOCKERFILE: "docker/android/Dockerfile"
124 .local_rules: &local_rules
126 - if: '$CI_COMMIT_REF_NAME == "master" && $CI_PROJECT_PATH == "gstreamer/gst-ci"'
131 .local_template: &local_template
136 # Test the build job against the latest build image tag and the local manifest
137 build fedora x86_64 local:
140 image: "${CI_REGISTRY_IMAGE}/amd64/fedora:latest"
149 build cerbero fedora x86_64 local:
150 extends: '.cerbero fedora x86_64'
151 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
154 build cerbero cross-android universal local:
155 extends: '.cerbero cross-android universal'
156 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
159 build cerbero cross win32 local:
160 extends: '.cerbero cross win32'
161 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
164 build cerbero cross win64 local:
165 extends: '.cerbero cross win64'
166 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
169 # Note: dependencies: will be deprecated in the future, but current manual
170 # jobs with needs: (even if they are allowed to fail) will leave the pipeline
172 .test fedora x86_64 local:
173 image: '${CI_REGISTRY_IMAGE}/amd64/fedora:latest'
177 - 'build fedora x86_64 local'
180 extends: '.test fedora x86_64 local'
182 TEST_SUITE: 'check.gst*'
184 cross-android universal examples local:
185 extends: '.cross-android universal examples'
186 image: "${CI_REGISTRY_IMAGE}/amd64/android:latest"
189 - 'build cerbero cross-android universal local'
191 integration testsuites fedora local:
192 extends: '.test fedora x86_64 local'
194 - rm -f gst-build/build/subprojects/gstreamer-vaapi/gst/vaapi/libgstvaapi.so
196 EXTRA_VALIDATE_ARGS: "--timeout-factor=2 --retry-on-failures"
197 TEST_SUITE: "validate ges"