Skip to content

Commit dd90676

Browse files
authored
Build and test AAR in 5.x. (#135)
1 parent d07d640 commit dd90676

File tree

1 file changed

+41
-6
lines changed

1 file changed

+41
-6
lines changed

.github/workflows/OCV-PR-5.x-Android.yaml

Lines changed: 41 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,25 +74,60 @@ jobs:
7474
cd ${{ env.OPENCV_DOCKER_WORKDIR }}
7575
git pull -v "https://github.com/${{ env.PR_AUTHOR_FORK }}" "${{ env.SOURCE_BRANCH_NAME }}"
7676
- name: Build OpenCV for Android SDK
77-
timeout-minutes: 120
77+
timeout-minutes: 180
7878
run: |
7979
mkdir -p /home/ci/build
8080
cd /home/ci/build
8181
sed -i 's+https\\://services.gradle.org/distributions/gradle-@[email protected]+file\\:/opt/gradle/gradle-@[email protected]+g' ${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/gradle-wrapper/gradle/wrapper/gradle-wrapper.properties.in
8282
python3 "${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/build_sdk.py" --build_doc --config "${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/ndk-18-api-level-21.config.py" --sdk_path "$ANDROID_HOME" --ndk_path "$ANDROID_NDK_HOME" /home/ci/build
83+
- name: Build local repo from SDK
84+
timeout-minutes: 60
85+
run: cd /home/ci/build && "${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/build_aar.sh" OpenCV-android-sdk
86+
- name: Build AAR
87+
timeout-minutes: 60
88+
run: |
89+
cd /home/ci/build
90+
sed -i 's+https\\://services.gradle.org/distributions/gradle-7.6.3-bin.zip+file\\:/opt/gradle/gradle-7.6.3-bin.zip+g' ${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/aar-template/gradle/wrapper/gradle-wrapper.properties
91+
python3 "${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/build_java_shared_aar.py" --ndk_location="$ANDROID_NDK_HOME" --cmake_location=$(dirname $(dirname $(which cmake))) /home/ci/build/OpenCV-android-sdk
92+
- name: Build Static AAR
93+
timeout-minutes: 60
94+
run: |
95+
cd /home/ci/build
96+
sed -i 's+https\\://services.gradle.org/distributions/gradle-7.6.3-bin.zip+file\\:/opt/gradle/gradle-7.6.3-bin.zip+g' ${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/aar-template/gradle/wrapper/gradle-wrapper.properties
97+
python3 "${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/build_static_aar.py" --ndk_location="$ANDROID_NDK_HOME" --cmake_location=$(dirname $(dirname $(which cmake))) /home/ci/build/OpenCV-android-sdk
8398
- name: Test CMake
8499
timeout-minutes: 60
85100
run: cd /home/ci/build && python3 "${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/build-tests/test_cmake_build.py" --sdk_path "$ANDROID_HOME" --ndk_path "$ANDROID_NDK_HOME" OpenCV-android-sdk/sdk/native/jni
86-
- name: Test Gradle
101+
- name: Test Gradle for Local SDK
87102
timeout-minutes: 60
88103
run: cd /home/ci/build && "${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/build-tests/test_gradle.sh" OpenCV-android-sdk
89-
- name: Create Package
104+
- name: Test Gradle for AAR from Py Script
90105
timeout-minutes: 60
91-
run: cd /home/ci/build && zip -r -9 -y OpenCV5Android.zip OpenCV-android-sdk
106+
run: |
107+
cd /home/ci/build
108+
"${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/build-tests/test_gradle_aar.sh" OpenCV-android-sdk /home/ci/build/outputs/maven_repo
109+
- name: Test Gradle for AAR from SDK
110+
timeout-minutes: 60
111+
run: |
112+
cd /home/ci/build
113+
"${{ env.OPENCV_DOCKER_WORKDIR }}/platforms/android/build-tests/test_gradle_aar.sh" OpenCV-android-sdk /home/ci/build/maven_repo
114+
- name: Create Packages
115+
timeout-minutes: 60
116+
run: |
117+
cd /home/ci/build
118+
# revert hacked Gradle URL to the original one
119+
sed -i 's+file\\:/opt/gradle/gradle-7.6.3-bin.zip+https\\://services.gradle.org/distributions/gradle-7.6.3-bin.zip+g' OpenCV-android-sdk/samples/gradle/wrapper/gradle-wrapper.properties
120+
zip -r -9 -y OpenCV4Android.zip OpenCV-android-sdk
121+
zip -r -9 -y sdk-maven-repo.zip maven_repo
122+
cd /home/ci/build/outputs
123+
zip -r -9 -y python-maven-repo.zip maven_repo
92124
- name: Release Package
93125
timeout-minutes: 60
94126
uses: actions/upload-artifact@v3
95127
if: ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || env.RUNNER_DEBUG == 1 }}
96128
with:
97-
name: OpenCV5AndroidSDK
98-
path: /home/ci/build/OpenCV5Android.zip
129+
name: OpenCV4AndroidSDK
130+
path: |
131+
/home/ci/build/OpenCV4Android.zip
132+
/home/ci/build/sdk-maven-repo.zip
133+
/home/ci/build/outputs/python-maven-repo.zip

0 commit comments

Comments
 (0)