diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 32b5de6bdd..7c63323ace 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -61,7 +61,7 @@ android_build: script: - export GRADLE_USER_HOME=/home/gitlab-runner/ci-build-cache/$CI_PROJECT_PATH/.gradle - chmod +x ./gradlew - - ./scripts/jenkins_build.sh -c + - ./scripts/jenkins_build.sh $CI_COMMIT_REF_NAME $BEFORE_COMMIT_SHA $CI_COMMIT_SHA #设置打包后的产物,用于job之间共享 artifacts: paths: diff --git a/scripts/jenkins_build.sh b/scripts/jenkins_build.sh index b0d8d9f668..c50f088421 100755 --- a/scripts/jenkins_build.sh +++ b/scripts/jenkins_build.sh @@ -34,4 +34,22 @@ mv app/build/outputs/apk/internal/release/app-internal-release.apk app/build/tmp git checkout app/build.gradle git checkout module_common/build.gradle git checkout gradle.properties -rm app/src/main/assets/gitlog.txt \ No newline at end of file +rm app/src/main/assets/gitlog.txt + +# 上传 APK 文件 (仅接入 dev 分支) +echo $1 + +if [[ $1 == "dev"* ]]; then + declare startCommitSha="$2" + declare endCommitSha="$3" + declare apkFile="./app/build/tmp/${version}-${versionCode}-test-${build_time}.apk" + declare uploadUrl="https://app-manager.shanqu.cc/app/upload?auth_token=7798334f70358b71a7243892faf97ee0" + echo "uploading apk file: ${apkFile}" + if [ ! $startCommitSha ]; then + curl -F "file=@${apkFile};type=application/octet-stream" "${uploadUrl}" + else + git log --pretty=format:"%s (%an) [%h](https://git.shanqu.cc/halo/android/assistant-android/-/commits/%H)" --no-merges $startCommitSha..$endCommitSha >> changelog.log + curl -F "file=@${apkFile};type=application/octet-stream" -F "changelog=@./changelog.log;type=application/octet-stream" "${uploadUrl}" + rm changelog.log + fi +fi \ No newline at end of file