Browse Source

Allow specifying the maven local repository path and use it in the CI

pipelines/135724
Nicolas Pomepuy 5 years ago
parent
commit
7a6420283f
  1. 33
      buildsystem/compile.sh
  2. 4
      buildsystem/gitlab/.gitlab-ci.yml

33
buildsystem/compile.sh

@ -60,6 +60,7 @@ while [ $# -gt 0 ]; do
echo "Use -c to get a ChromeOS build"
echo "Use -l to build only LibVLC"
echo "Use -b to bypass libvlc source checks (vlc custom sources)"
echo "Use -m2 to set the maven local repository path to use"
exit 0
;;
a|-a)
@ -81,6 +82,10 @@ while [ $# -gt 0 ]; do
PASSWORD_KEYSTORE=$2
shift
;;
-m2|--local-maven)
M2_REPO=$2
shift
;;
-l)
BUILD_LIBVLC=1
NO_ML=1
@ -100,10 +105,6 @@ while [ $# -gt 0 ]; do
--no-ml)
NO_ML=1
;;
--publish)
RELEASE=1
PUBLISH=1
;;
--init)
GRADLE_SETUP=1
;;
@ -148,6 +149,16 @@ else
exit 1
fi
if [ -z "$M2_REPO" ]; then
M2_REPO=""
else
if test -d "$M2_REPO"; then
echo "Custom local maven repository found"
else
diagnostic "Invalid local maven repository path: $M2_REPO"
exit 1
fi
fi
####################
# Configure gradle #
####################
@ -383,17 +394,11 @@ elif [ "$RELEASE" = 1 ]; then
fi
if [ "$BUILD_LIBVLC" = 1 ];then
GRADLE_VLC_SRC_DIRS="$GRADLE_VLC_SRC_DIRS" GRADLE_ABI=$GRADLE_ABI ./gradlew -p libvlc assemble${BUILDTYPE}
GRADLE_VLC_SRC_DIRS="$GRADLE_VLC_SRC_DIRS" GRADLE_ABI=$GRADLE_ABI ./gradlew -Dmaven.repo.local=$M2_REPO -p libvlc assemble${BUILDTYPE}
RUN=0
if [ "$PUBLISH" = 1 ];then
GRADLE_VLC_SRC_DIRS="$GRADLE_VLC_SRC_DIRS" GRADLE_ABI=$GRADLE_ABI ./gradlew -p libvlc install bintrayUpload
fi
elif [ "$BUILD_MEDIALIB" = 1 ]; then
GRADLE_ABI=$GRADLE_ABI ./gradlew -p medialibrary assemble${BUILDTYPE}
GRADLE_ABI=$GRADLE_ABI ./gradlew -Dmaven.repo.local=$M2_REPO -p medialibrary assemble${BUILDTYPE}
RUN=0
if [ "$PUBLISH" = 1 ];then
GRADLE_ABI=$GRADLE_ABI ./gradlew -p medialibrary install bintrayUpload
fi
else
if [ "$TEST" = 1 -o "$RUN" = 1 ]; then
ACTION="install"
@ -401,11 +406,11 @@ else
ACTION="assemble"
fi
TARGET="${ACTION}${BUILDTYPE}"
GRADLE_VLC_SRC_DIRS="$GRADLE_VLC_SRC_DIRS" CLI="" GRADLE_ABI=$GRADLE_ABI ./gradlew $TARGET
GRADLE_VLC_SRC_DIRS="$GRADLE_VLC_SRC_DIRS" CLI="" GRADLE_ABI=$GRADLE_ABI ./gradlew -Dmaven.repo.local=$M2_REPO $TARGET
if [ "$TEST" = 1 ]; then
TARGET="application:vlc-android:install${BUILDTYPE}AndroidTest"
GRADLE_VLC_SRC_DIRS="$GRADLE_VLC_SRC_DIRS" CLI="" GRADLE_ABI=$GRADLE_ABI ./gradlew $TARGET
GRADLE_VLC_SRC_DIRS="$GRADLE_VLC_SRC_DIRS" CLI="" GRADLE_ABI=$GRADLE_ABI ./gradlew -Dmaven.repo.local=$M2_REPO $TARGET
echo -e "\n===================================\nRun following for UI tests:"
echo "adb shell am instrument -w -e package org.videolan.vlc.gui org.videolan.vlc.debug.test/org.videolan.vlc.MultidexTestRunner 1> result_UI_test.txt"

4
buildsystem/gitlab/.gitlab-ci.yml

@ -157,9 +157,9 @@ publish_libs:
M2_REPO: "$CI_PROJECT_DIR/aars/repository"
script:
- mkdir -p $M2_REPO
- ./buildsystem/compile.sh -l -a ${ARCH} release
- ./buildsystem/compile.sh -l -a ${ARCH} -m2 $M2_REPO release
- GRADLE_ABI=ALL RELEASE_SIGNING_ENABLED=false ./gradlew -Dmaven.repo.local=$M2_REPO -p libvlc publishToMavenLocal
- ./buildsystem/compile.sh -ml -a ${ARCH} release
- ./buildsystem/compile.sh -ml -a ${ARCH} -m2 $M2_REPO release
- GRADLE_ABI=ALL RELEASE_SIGNING_ENABLED=false ./gradlew -Dmaven.repo.local=$M2_REPO -p medialibrary publishToMavenLocal
artifacts:
name: "${CI_COMMIT_TAG}.dbg"

Loading…
Cancel
Save