1 include: "gitlab/ci_template.yml"
9 # use the binaries in some way
15 image: 'registry.freedesktop.org/gstreamer/gst-ci/amd64/test-manifest:2019-10-23-793476'
18 - pytest-3 --junitxml=junit.xml --cov=build_manifest gitlab/build_manifest.py
19 coverage: '/TOTAL.*\s+(\d+%)$/'
26 image: "docker:stable"
31 # When using dind, it's wise to use the overlayfs driver for
32 # improved performance.
33 DOCKER_DRIVER: "overlay2"
36 - export DATE=$(date +"%Y-%m-%d")
37 - export IMAGE="${CI_REGISTRY_IMAGE}/${ARCH}/${TAG}"
38 - export _UID="${IMAGE}:${DATE}-${CI_JOB_ID}"
39 - export LATEST="${IMAGE}:latest"
41 - docker build --pull --build-arg DEFAULT_BRANCH=${GST_UPSTREAM_BRANCH} -f ${DOCKERFILE} -t ${LATEST} ${CONTEXT_DIR}
43 # If we are in a fork, push the image to the reigstry regardless the branch
45 if [ "$CI_PROJECT_NAMESPACE" != "gstreamer" ]; then
46 docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
50 # Push the images to the upstream registry
52 if [ "$CI_PROJECT_NAMESPACE" = "gstreamer" ]; then
53 # Tag the image with the git ref
54 docker image tag ${LATEST} ${_UID}-${CI_COMMIT_REF_NAME}
56 docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
57 docker push ${_UID}-${CI_COMMIT_REF_NAME}
61 alpine amd64 manifest builder docker:
66 CONTEXT_DIR: "docker/build_manifest/"
67 DOCKERFILE: "docker/build_manifest/Dockerfile"
70 test manifest amd64 docker:
75 CONTEXT_DIR: "docker/test_manifest/"
76 DOCKERFILE: "docker/test_manifest/Dockerfile"
79 gst-indent amd64 docker:
84 CONTEXT_DIR: "docker/indent/"
85 DOCKERFILE: "docker/indent/Dockerfile"
93 CONTEXT_DIR: "docker/fedora/"
94 DOCKERFILE: "docker/fedora/Dockerfile"
97 cerbero fedora amd64 docker:
101 TAG: "cerbero-fedora"
102 CONTEXT_DIR: "docker/cerbero/"
103 DOCKERFILE: "docker/cerbero/Dockerfile-fedora"
107 stage: "build docker"
111 CONTEXT_DIR: "docker/android/"
112 DOCKERFILE: "docker/android/Dockerfile"
118 - if: '$CI_COMMIT_REF_NAME == "master" && $CI_PROJECT_PATH == "gstreamer/gst-ci"'
124 # Test the build job against the latest build image tag and the local manifest
125 build fedora x86_64 local:
126 extends: '.build local'
128 image: "${CI_REGISTRY_IMAGE}/amd64/fedora:latest"
136 build cerbero fedora x86_64 local:
137 extends: '.cerbero fedora x86_64'
138 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
140 build cerbero cross-android universal local:
141 extends: '.cerbero cross-android universal'
142 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
144 build cerbero cross win32 local:
145 extends: '.cerbero cross win32'
146 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
148 build cerbero cross win64 local:
149 extends: '.cerbero cross win64'
150 image: "${CI_REGISTRY_IMAGE}/amd64/cerbero-fedora:latest"
152 .test fedora x86_64 local:
153 image: '${CI_REGISTRY_IMAGE}/amd64/fedora:latest'
156 - 'build fedora x86_64 local'
159 extends: '.test fedora x86_64 local'
161 TEST_SUITE: 'check.gst*'
163 cross-android universal examples local:
164 extends: '.cross-android universal examples'
165 image: "${CI_REGISTRY_IMAGE}/amd64/android:latest"
167 - "build cerbero cross-android universal local"
169 integration testsuites fedora local:
170 extends: '.test fedora x86_64 local'
172 - rm -f gst-build/build/subprojects/gstreamer-vaapi/gst/vaapi/libgstvaapi.so
174 EXTRA_VALIDATE_ARGS: "--timeout-factor=2 --retry-on-failures"
175 TEST_SUITE: "validate ges"