summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml11
-rwxr-xr-xbuild.sh5
-rwxr-xr-xbuild_deps.sh22
3 files changed, 27 insertions, 11 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 664b31f5..91ee6c3d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -98,7 +98,8 @@ build:
stage: build
script:
- ./cleanProject.sh
- - ./build.sh
+ - ./build_deps.sh
+ - ./gradlew clean assembleDebug --stacktrace
artifacts:
paths:
- app/build/outputs/
@@ -108,11 +109,9 @@ build_release:
stage: build
script:
- ./cleanProject.sh
- - cd ./ics-openvpn
- - ./gradlew clean main:externalNativeBuildCleanNoovpn3Release main:externalNativeBuildNoovpn3Release
- - cd ..
- - ./gradlew assembleProductionRelease
- - ./gradlew assembleProductionBeta
+ - ./build_deps.sh
+ - ./gradlew assembleProductionRelease --stacktrace
+ - ./gradlew assembleProductionBeta --stacktrace
artifacts:
paths:
- app/build/outputs/
diff --git a/build.sh b/build.sh
deleted file mode 100755
index 070ba686..00000000
--- a/build.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/bash
-cd ./ics-openvpn
-./gradlew clean main:externalNativeBuildCleanNoovpn3Release main:externalNativeBuildNoovpn3Release
-cd ..
-./gradlew clean assembleDebug --stacktrace
diff --git a/build_deps.sh b/build_deps.sh
new file mode 100755
index 00000000..d9bcb265
--- /dev/null
+++ b/build_deps.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+function quit {
+ echo "Task failed. Exit value: $?."
+ exit 1
+}
+
+
+DIR_OVPNASSETS=./ics-openvpn/main/build/ovpnassets
+DIR_OVPNLIBS=./ics-openvpn/main/build/intermediates/cmake/noovpn3/release/obj
+# init
+# look for empty dir
+
+if [[ $(ls -A ${DIR_OVPNASSETS}) && $(ls -A ${DIR_OVPNLIBS}) ]]
+then
+ echo "Dirty build: skipped externalNativeBuild - reusing existing libs"
+else
+ echo "Clean build: starting externalNativeBuild"
+ cd ./ics-openvpn || quit
+ ./gradlew clean main:externalNativeBuildCleanNoovpn3Release main:externalNativeBuildNoovpn3Release || quit
+ cd ..
+fi \ No newline at end of file