diff --git a/.github/workflows/android_24.lts.1+.yaml b/.github/workflows/android_24.lts.1+.yaml index cec9f87e4c68..18e7546ca54b 100644 --- a/.github/workflows/android_24.lts.1+.yaml +++ b/.github/workflows/android_24.lts.1+.yaml @@ -1,6 +1,8 @@ name: android_24.lts.1+ on: + release: + types: [prereleased, released, published] pull_request: types: [ready_for_review, opened, reopened, synchronize, labeled] branches: @@ -28,6 +30,7 @@ jobs: with: platform: android-arm64 nightly: ${{ github.event.inputs.nightly }} + keep_artifacts: cobalt.apk android-x86: uses: ./.github/workflows/main.yaml permissions: @@ -36,6 +39,7 @@ jobs: with: platform: android-x86 nightly: ${{ github.event.inputs.nightly }} + keep_artifacts: cobalt.apk android-arm: uses: ./.github/workflows/main.yaml permissions: @@ -44,3 +48,49 @@ jobs: with: platform: android-arm nightly: ${{ github.event.inputs.nightly }} + keep_artifacts: cobalt.apk + + upload-release-artifacts: + runs-on: ubuntu-latest + needs: [ android-arm, android-arm64, android-x86 ] + permissions: + actions: write + steps: + - name: Download arm-gold apk + uses: actions/download-artifact@v4 + with: + name: android-arm-gold + path: arm-gold + - name: Download arm-qa apk + uses: actions/download-artifact@v4 + with: + name: android-arm-qa + path: arm-qa + - name: Download arm64-gold apk + uses: actions/download-artifact@v4 + with: + name: android-arm64-gold + path: arm64-gold + - name: Download arm64-qa apk + uses: actions/download-artifact@v4 + with: + name: android-arm64-gold + path: arm64-qa + - name: Download x86-gold apk + uses: actions/download-artifact@v4 + with: + name: android-x86-gold + path: x86-gold + - name: Download x86-qa apk + uses: actions/download-artifact@v4 + with: + name: android-x86-qa + path: x86-qa + - name: 'Upload Android APKs' + uses: actions/upload-artifact@v4 + with: + name: Android APKs + path: ./* + retention-days: 90 + compression-level: 0 # We expect kept artifacts to be already compressed + if-no-files-found: error diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 9ccebb8620df..b15c3d1805f2 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -29,6 +29,11 @@ on: required: false type: boolean default: false + keep_artifacts: + description: 'Which artifacts to keep for releases' + required: false + type: string + default: '' # Global env vars. env: @@ -210,6 +215,15 @@ jobs: uses: ./.github/actions/gn - name: Build Cobalt uses: ./.github/actions/build + - name: 'Upload Artifact' + uses: actions/upload-artifact@v4 + if: inputs.keep_artifacts + with: + name: ${{ matrix.platform }}-${{ matrix.config }} + path: out/${{ matrix.platform }}_${{ matrix.config }}/${{ inputs.keep_artifacts }} + retention-days: 7 + compression-level: 0 # We expect kept artifacts to be already compressed + if-no-files-found: error - name: Run API Leak Detector uses: ./.github/actions/api_leak_detector if: inputs.run_api_leak_detector