From 4bb124b76c5f86c5283ff0823d47298f22fc3273 Mon Sep 17 00:00:00 2001 From: Saalim Quadri Date: Tue, 4 Nov 2025 10:23:30 +0530 Subject: [PATCH] ci: Add systemAppsUpdateInfo Signed-off-by: Saalim Quadri --- .gitlab-ci.yml | 240 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 240 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3ebb04fb..8ceaff10 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,9 +3,11 @@ workflow: - if: $CI_PIPELINE_SOURCE == "merge_request_event" - if: $CI_COMMIT_BRANCH == "master" - if: $CI_COMMIT_TAG + stages: - build - filters + - gitlab_release .build-cromite: image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:chromium-latest @@ -77,3 +79,241 @@ deploy_rsync: - chmod 644 ~/.ssh/known_hosts ~/.ssh/id_ed25519.pub script: - rsync -avz --chown=$REMOTE_USER:www-data --chmod=F644 filters.dat $REMOTE_USER@$IMAGES_HOSTNAME:$BROWSER_PATH + +init-submodules: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + needs: [] + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: on_success + script: + - git clone https://gitlab.e.foundation/e/os/system-apps-update-info.git systemAppsUpdateInfo + artifacts: + paths: + - systemAppsUpdateInfo/scripts/ + +generate-apks-browser: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: on_success + needs: + - job: init-submodules + artifacts: true + - job: build-cromite-arm + artifacts: true + - job: build-cromite-arm64 + artifacts: true + - job: build-cromite-x86 + artifacts: true + - job: build-cromite-x64 + artifacts: true + variables: + APK_PATH: "release_apks_browser" + SOURCE_APK: "ChromePublic.apk" + UNSIGNED_APK: "Browser-release.apk" + COMMUNITY_APK: "Browser-community.apk" + OFFICIAL_APK: "Browser-official.apk" + TEST_APK: "Browser-test.apk" + script: &generate_script | + mkdir -p "$APK_PATH" + echo "Processing ARM64 APKs..." + cp apks/arm64/$SOURCE_APK $APK_PATH/community-arm64-v8a.apk + cp apks/arm64/$SOURCE_APK $APK_PATH/official-arm64-v8a.apk + cp apks/arm64/$SOURCE_APK $APK_PATH/test-arm64-v8a.apk + + echo "Processing ARM32 APKs..." + cp apks/arm/$SOURCE_APK $APK_PATH/community-armeabi-v7a.apk + cp apks/arm/$SOURCE_APK $APK_PATH/official-armeabi-v7a.apk + cp apks/arm/$SOURCE_APK $APK_PATH/test-armeabi-v7a.apk + + echo "Processing X86 APKs..." + cp apks/x86/$SOURCE_APK $APK_PATH/community-x86.apk + cp apks/x86/$SOURCE_APK $APK_PATH/official-x86.apk + cp apks/x86/$SOURCE_APK $APK_PATH/test-x86.apk + + echo "Processing X86_64 APKs..." + cp apks/x64/$SOURCE_APK $APK_PATH/community-x86_64.apk + cp apks/x64/$SOURCE_APK $APK_PATH/official-x86_64.apk + cp apks/x64/$SOURCE_APK $APK_PATH/test-x86_64.apk + ls -lh "$APK_PATH"/ + artifacts: + paths: + - $APK_PATH/ + +create-json-files-browser: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: on_success + needs: + - job: init-submodules + artifacts: true + - job: generate-apks-browser + artifacts: true + variables: + APK_PATH: "release_apks_browser" + UNSIGNED_APK: "Browser-release.apk" + COMMUNITY_APK: "Browser-community.apk" + OFFICIAL_APK: "Browser-official.apk" + TEST_APK: "Browser-test.apk" + script: &json_script | + export AUTHOR="e Foundation" + ./systemAppsUpdateInfo/scripts/create-json-files.sh \ + "$APK_PATH" "$UNSIGNED_APK" "$COMMUNITY_APK" "$OFFICIAL_APK" "$TEST_APK" + ls -lh *.json + for json in *.json; do + echo "--- $json ---" + cat "$json" | jq '.' + echo "" + done + artifacts: + paths: + - community.json + - official.json + - test.json + +create-test-release-browser: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: manual + allow_failure: true + needs: + - job: init-submodules + artifacts: true + - job: create-json-files-browser + artifacts: true + - job: generate-apks-browser + artifacts: true + variables: + APK_PATH: "release_apks_browser" + TEST_APK: "Browser-test.apk" + script: | + ./systemAppsUpdateInfo/scripts/create-test-release.sh \ + "$APK_PATH" "$TEST_APK" + +create-release-browser: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: manual + allow_failure: true + needs: + - job: init-submodules + artifacts: true + - job: create-json-files-browser + artifacts: true + - job: generate-apks-browser + artifacts: true + variables: + APK_PATH: "release_apks_browser" + UNSIGNED_APK: "Browser-release.apk" + COMMUNITY_APK: "Browser-community.apk" + OFFICIAL_APK: "Browser-official.apk" + script: | + ./systemAppsUpdateInfo/scripts/create-release.sh \ + "$APK_PATH" "$UNSIGNED_APK" "$COMMUNITY_APK" "$OFFICIAL_APK" + + +generate-apks-webview: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: on_success + needs: + - job: init-submodules + artifacts: true + - job: build-cromite-arm + artifacts: true + - job: build-cromite-arm64 + artifacts: true + - job: build-cromite-x86 + artifacts: true + - job: build-cromite-x64 + artifacts: true + variables: + APK_PATH: "release_apks_webview" + SOURCE_APK: "SystemWebView.apk" + UNSIGNED_APK: "WebView-release.apk" + COMMUNITY_APK: "WebView-community.apk" + OFFICIAL_APK: "WebView-official.apk" + TEST_APK: "WebView-test.apk" + script: *generate_script + artifacts: + paths: + - $APK_PATH/ + +create-json-files-webview: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: on_success + needs: + - job: init-submodules + artifacts: true + - job: generate-apks-webview + artifacts: true + variables: + APK_PATH: "release_apks_webview" + UNSIGNED_APK: "WebView-release.apk" + COMMUNITY_APK: "WebView-community.apk" + OFFICIAL_APK: "WebView-official.apk" + TEST_APK: "WebView-test.apk" + script: *json_script + artifacts: + paths: + - community.json + - official.json + - test.json + +create-test-release-webview: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: manual + allow_failure: true + needs: + - job: init-submodules + artifacts: true + - job: create-json-files-webview + artifacts: true + - job: generate-apks-webview + artifacts: true + variables: + APK_PATH: "release_apks_webview" + TEST_APK: "WebView-test.apk" + script: | + ./systemAppsUpdateInfo/scripts/create-test-release.sh \ + "$APK_PATH" "$TEST_APK" + +create-release-webview: + stage: gitlab_release + image: registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:slim-latest + rules: + - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' + when: manual + allow_failure: true + needs: + - job: init-submodules + artifacts: true + - job: create-json-files-webview + artifacts: true + - job: generate-apks-webview + artifacts: true + variables: + APK_PATH: "release_apks_webview" + UNSIGNED_APK: "WebView-release.apk" + COMMUNITY_APK: "WebView-community.apk" + OFFICIAL_APK: "WebView-official.apk" + script: | + ./systemAppsUpdateInfo/scripts/create-release.sh \ + "$APK_PATH" "$UNSIGNED_APK" "$COMMUNITY_APK" "$OFFICIAL_APK" -- GitLab