From 6ba294c9c44eabc44406a5b70ea8557e42cbdee8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20Beauz=C3=A9e-Luyssen?= Date: Fri, 11 Jan 2019 12:50:24 +0100 Subject: [PATCH] Add CI configurations --- .gitlab-ci.yml | 146 +++++++++++++++++++++++++++++++++++++++++++++++++ build-common | 4 +- 2 files changed, 149 insertions(+), 1 deletion(-) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 000000000..fbf74b254 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,146 @@ +cache: + paths: + - .gradle/ + - gradle-4.10.1/ + - gradle/ + - gradlew + +.build-all-base: + image: registry.videolan.org:5000/vlc-debian-android:20190110154331 + tags: + - debian + - android + stage: build + script: + - ./compile.sh ${EXTRA_BUILD_PARAM} -a ${ARCH} + variables: + MAKEFLAGS: -j8 + +# Rebuilds libvlc JNI +.build-libvlc-base: + extends: .build-all-base + only: + refs: + - master + changes: + - libvlc/* + variables: + EXTRA_BUILD_PARAM: -l + +# rebuild the medialibrary JNI component +# This implies rebuilding VLC beforehand +.build-ml-base: + extends: .build-all-base + only: + refs: + - master/* + changes: + - medialibrary/* + variables: + EXTRA_BUILD_PARAM: -ml + +# vlc-android app only: don't rebuild everything but use a published artifact +# We can't filter by changes for MRs, so this is the only accepted configuration +# for those, regardless of what changed +continuous-app-build: + extends: .build-all-base + script: + - ./compile.sh --init + - ./gradlew assembleDebug + only: + changes: + - vlc-android + - assets + - .gitlab-ci.yml + except: + - schedules + +################################# +# Template config instantiation # +################################# + +build-libvlc-arm64: + extends: .build-libvlc-base + variables: + ARCH: arm64 + +build-libvlc-armv7: + extends: .build-libvlc-base + variables: + ARCH: arm + +build-libvlc-x86: + extends: .build-libvlc-base + variables: + ARCH: x86 + +build-libvlc-x86_64: + extends: .build-libvlc-base + variables: + ARCH: x86_64 + +build-ml-arm64: + extends: .build-ml-base + variables: + ARCH: arm64 + +build-ml-armv7: + extends: .build-ml-base + variables: + ARCH: arm + +build-ml-x86: + extends: .build-ml-base + variables: + ARCH: x86 + +build-ml-x86_64: + extends: .build-ml-base + variables: + ARCH: x86_64 + +# Nightly builds: build native & app code, and ship the APK as artifact +nightly-arm64: + extends: .build-all-base + only: + - schedules + variables: + ARCH: arm64 + artifacts: + paths: + - vlc-android/build/outputs/apk/dev/VLC-Android-*.apk + expire_in: 2 weeks + +nightly-armv7: + extends: .build-all-base + only: + - schedules + variables: + ARCH: arm + artifacts: + paths: + - vlc-android/build/outputs/apk/dev/VLC-Android-*.apk + expire_in: 2 weeks + +nightly-x86: + extends: .build-all-base + only: + - schedules + variables: + ARCH: x86 + artifacts: + paths: + - vlc-android/build/outputs/apk/dev/VLC-Android-*.apk + expire_in: 2 weeks + +nightly-x86_64: + extends: .build-all-base + only: + - schedules + variables: + ARCH: x86_64 + artifacts: + paths: + - vlc-android/build/outputs/apk/dev/VLC-Android-*.apk + expire_in: 2 weeks + diff --git a/build-common b/build-common index 8dc7eea55..c42568aa9 100755 --- a/build-common +++ b/build-common @@ -11,6 +11,8 @@ if [ -z "$MAKEFLAGS" ]; then fi fi +echo "MAKEFLAGS: ${MAKEFLAGS}" + ######### # FLAGS # ######### @@ -181,4 +183,4 @@ echo "EXTRA_CFLAGS: ${EXTRA_CFLAGS}" echo "VLC_CFLAGS: ${VLC_CFLAGS}" echo "VLC_CXXFLAGS: ${VLC_CXXFLAGS}" -echo ok \ No newline at end of file +echo ok