diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 2b4520e51d..9d2f2e8eaa 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -13,7 +13,7 @@ on: env: CCACHE_DIR: ${{ github.workspace }}/ccache_dir GITHUB_TOKEN: ${{ github.token }} - xcodeVersion: "14.1" # Only affects Mac runners, and only for prerequisites. + xcodeVersion: "16.4" # Only affects Mac runners, and only for prerequisites. concurrency: group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }} @@ -21,13 +21,13 @@ concurrency: jobs: prepare_matrix: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest outputs: matrix_os: ${{ steps.export-result.outputs.matrix_os }} matrix_architecture: ${{ steps.export-result.outputs.matrix_architecture }} matrix_python_version: ${{ steps.export-result.outputs.matrix_python_version }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v6 with: submodules: false - name: Use expanded matrix @@ -54,10 +54,6 @@ jobs: - name: setup Xcode version (macos) if: runner.os == 'macOS' run: sudo xcode-select -s /Applications/Xcode_${{ env.xcodeVersion }}.app/Contents/Developer - - name: Force Java 8 (macOS) - if: startsWith(matrix.os, 'macos') - shell: bash - run: echo "JAVA_HOME=${JAVA_HOME_8_X64}" >> $GITHUB_ENV - name: Store git credentials for all git commands # Forces all git commands to use authenticated https, to prevent throttling. shell: bash @@ -75,10 +71,19 @@ jobs: echo "Enabling expanded build and test matrix." echo "USE_EXPANDED_MATRIX=1" >> $GITHUB_ENV - - uses: actions/checkout@v3 + - uses: actions/checkout@v6 with: submodules: true + # This workflow still uses Gradle 6.7.1; pinning Java 11 avoids + # incompatibilities with newer default JDKs on hosted runners. + - name: Setup Java 11 + uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: "11" + cache: gradle + - name: Set env variables for subsequent steps (all) shell: bash run: | @@ -97,7 +102,7 @@ jobs: - name: Cache NDK id: cache_ndk - uses: actions/cache@v3 + uses: actions/cache@v5 with: path: /tmp/android-ndk-r21e key: android-ndk-${{ matrix.os }}-r21e diff --git a/.github/workflows/bcny-firebase.yml b/.github/workflows/bcny-firebase.yml index 43e5ca2da1..e8dae83655 100644 --- a/.github/workflows/bcny-firebase.yml +++ b/.github/workflows/bcny-firebase.yml @@ -18,24 +18,20 @@ jobs: platform: 'ARM64' steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v5 with: fetch-depth: 1 path: ${{ github.workspace }}/SourceCache/flatbuffers ref: 99aa1ef21dd9dc3f9d4fb0eb82f4b59d0bb5e4c5 repository: google/flatbuffers - - uses: actions/checkout@v3 + - uses: actions/checkout@v5 with: fetch-depth: 1 path: ${{ github.workspace }}/SourceCache/firebase-cpp-sdk repository: thebrowsercompany/firebase-cpp-sdk - uses: compnerd/gha-setup-vsdevenv@main - with: - host_arch: amd64 - components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64' - arch: ${{ matrix.arch }} - uses: actions/setup-python@v4 id: python @@ -180,7 +176,7 @@ jobs: Write-Output "Success! No BMI2 instructions were found in snappy.lib." } - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v6 with: name: firebase-windows-${{ matrix.arch }} path: ${{ github.workspace }}/BuildRoot/Library/firebase @@ -356,7 +352,7 @@ jobs: "@ | Out-File -Encoding UTF8 firebase.nuspec nuget pack -Properties BUILDROOT=${{ github.workspace }}\BuildRoot\Library\firebase -Suffix (git -C ${{ github.workspace }}/SourceCache/firebase-cpp-sdk log -1 --format=%h) firebase.nuspec shell: pwsh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v6 if: github.event_name != 'pull_request' with: name: windows-${{ matrix.arch }}.nupkg @@ -381,7 +377,7 @@ jobs: shell: pwsh android: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest strategy: fail-fast: true matrix: @@ -389,12 +385,24 @@ jobs: - arch: 'arm64-v8a' - arch: 'x86_64' steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v5 with: fetch-depth: 1 path: ${{ github.workspace }}/SourceCache/firebase-cpp-sdk ref: refs/heads/compnerd/swift repository: thebrowsercompany/firebase-cpp-sdk + # Currently this repo is pinned to an old version of the + # the firebase-cpp-sdk so we have to install an older + # version of java to allow this code to build correctly. + - name: Setup Java 11 + uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: '11' + cache: gradle + + - name: Verify Java + run: java -version - name: Install Ninja run: sudo apt-get install -y ninja-build @@ -517,7 +525,7 @@ jobs: cp $header ${header_destination_dir}/firestore/ done - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v6 with: name: firebase-android-${{ matrix.arch }} path: ${{ github.workspace }}/BuildRoot/Library/firebase diff --git a/scripts/gha/print_matrix_configuration.py b/scripts/gha/print_matrix_configuration.py index cd9315f864..51b83e5c7e 100644 --- a/scripts/gha/print_matrix_configuration.py +++ b/scripts/gha/print_matrix_configuration.py @@ -89,12 +89,12 @@ "android": { "matrix": { - "os": ["ubuntu-20.04", "macos-13", "windows-latest"], + "os": ["ubuntu-22.04", "macos-15", "windows-latest"], "architecture": ["x64"], - "python_version": ["3.7"], + "python_version": ["3.11"], EXPANDED_KEY: { - "os": ["ubuntu-20.04", "macos-13", "windows-latest"] + "os": ["ubuntu-22.04", "macos-15", "windows-latest"] } } },