[Android] Add CI configurations

Hugo Beauzée-Luyssen git at videolan.org
Mon Jan 21 15:11:46 CET 2019


vlc-android | branch: master | Hugo Beauzée-Luyssen <hugo at beauzee.fr> | Fri Jan 11 12:50:24 2019 +0100| [6ba294c9c44eabc44406a5b70ea8557e42cbdee8] | committer: Hugo Beauzée-Luyssen

Add CI configurations

> https://code.videolan.org/videolan/vlc-android/commit/6ba294c9c44eabc44406a5b70ea8557e42cbdee8
---

 .gitlab-ci.yml | 146 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 build-common   |   4 +-
 2 files changed, 149 insertions(+), 1 deletion(-)

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



More information about the Android mailing list