From: Matthew Waters Date: Sun, 24 Mar 2019 06:56:01 +0000 (+1100) Subject: add CI for gst-examples android build X-Git-Tag: 1.19.3~497^2~373 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c4a3df759d65fafdc9932935dbbc8e6638e4d6d0;p=platform%2Fupstream%2Fgstreamer.git add CI for gst-examples android build --- diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 60c9cf5..fe6844a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,6 +7,8 @@ stages: # Run multiple builds and tests, multi-distro, multi-arch - "full builds" - "full tests" + # build some apps to check that cross-platform binaries are usable + - "apps" test manifest: variables: @@ -172,3 +174,13 @@ check fedora local: extends: '.test fedora x86_64 local' variables: TEST_SUITE: 'check.gst*' + +android universal examples local: + extends: '.android universal examples' + image: "${CI_REGISTRY_IMAGE}/amd64/android:latest" + dependencies: + - "build cerbero android universal local" + when: 'manual' + except: + refs: + - "master@gstreamer/gst-ci" diff --git a/gitlab/build_manifest.py b/gitlab/build_manifest.py index 0619847..ec8901a 100755 --- a/gitlab/build_manifest.py +++ b/gitlab/build_manifest.py @@ -28,6 +28,7 @@ GSTREAMER_MODULES: List[str] = [ 'gst-rtsp-server', 'gstreamer-vaapi', 'gst-integration-testsuites', + 'gst-examples', ] MANIFEST_TEMPLATE: str = """ diff --git a/gitlab/ci_template.yml b/gitlab/ci_template.yml index 5abde30..dea8fe1 100644 --- a/gitlab/ci_template.yml +++ b/gitlab/ci_template.yml @@ -6,8 +6,11 @@ stages: # Run multiple builds and tests, multi-distro, multi-arch - 'full builds' - 'full tests' + # build some apps to check that cross-platform binaries are usable + - 'apps' variables: + ANDROID_IMAGE: 'registry.freedesktop.org/gstreamer/gst-ci/amd64/android:2019-03-26-196225' CERBERO_IMAGE: 'registry.freedesktop.org/gstreamer/gst-ci/amd64/cerbero-fedora:7ed820aa1fcf95938cc161e397b1bf455f1f5b74' FEDORA_IMAGE: 'registry.freedesktop.org/gstreamer/gst-ci/amd64/fedora:fb91ee18309ab981289aa818ab2a7824ef0567a1' INDENT_IMAGE: 'registry.freedesktop.org/gstreamer/gst-ci/amd64/gst-indent:6f7e01e1e30a73efa880acdc8e911f1f20c58dbb' @@ -637,3 +640,53 @@ build cerbero cross win64: except: variables: - $CI_PROJECT_NAME == "cerbero" + +# +# Build an Android App using the android binaries +# +.android universal examples: + image: $ANDROID_IMAGE + stage: 'apps' + variables: + EXAMPLES_HOME: ${CI_PROJECT_DIR}/examples + GSTREAMER_ROOT_ANDROID: ${CI_PROJECT_DIR}/examples/cerbero-android-universal + script: + - mkdir -p ${EXAMPLES_HOME} + - curl -o clone_manifest_ref.py https://gitlab.freedesktop.org/gstreamer/gst-ci/raw/master/gitlab/clone_manifest_ref.py + - chmod +x clone_manifest_ref.py + - ./clone_manifest_ref.py --manifest manifest.xml --project gst-examples --destination ${EXAMPLES_HOME}/gst-examples + - rm clone_manifest_ref.py + + # extract our binaries + - rm -f gstreamer-1.0-android-universal-*-runtime.tar.bz2 + - mkdir ${GSTREAMER_ROOT_ANDROID} + - tar -C ${GSTREAMER_ROOT_ANDROID} -xf gstreamer-1.0-android-universal-*.tar.bz2 + + - chmod +x ${EXAMPLES_HOME}/gst-examples/playback/player/android/gradlew + - ${EXAMPLES_HOME}/gst-examples/playback/player/android/gradlew --no-search-upward --no-daemon --project-dir ${EXAMPLES_HOME}/gst-examples/playback/player/android assembleDebug + after_script: + - rm -rf ${GSTREAMER_ROOT_ANDROID} + - mv gstreamer-1.0-android-universal-*.tar.bz2 ${EXAMPLES_HOME}/ + artifacts: + name: "${CI_JOB_NAME}_${CI_COMMIT_SHA}" + expire_in: '5 days' + when: 'always' + paths: + - "manifest.xml" + - "${EXAMPLES_HOME}" + +android universal examples: + extends: ".android universal examples" + dependencies: + - "build cerbero android universal" + except: + variables: + - $CI_PROJECT_NAME == "cerbero" + +cerbero android universal examples: + extends: ".android universal examples" + dependencies: + - "cerbero android universal" + only: + variables: + - $CI_PROJECT_NAME == "cerbero"