From 78224dbe899ad2c85cd96b826ccd80407de99f00 Mon Sep 17 00:00:00 2001 From: Matthew Robertson Date: Wed, 21 Jan 2026 12:09:11 -0500 Subject: [PATCH 1/3] Copy over Perf's Gradle compatibility test --- .../workflows/gradle-compatibility-tests.yml | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/gradle-compatibility-tests.yml diff --git a/.github/workflows/gradle-compatibility-tests.yml b/.github/workflows/gradle-compatibility-tests.yml new file mode 100644 index 00000000000..d9e3fd9f56d --- /dev/null +++ b/.github/workflows/gradle-compatibility-tests.yml @@ -0,0 +1,25 @@ +name: Gradle Compatibility Tests + +on: + schedule: + - cron: '0 6 * * *' # Run daily at 6 AM + workflow_dispatch: # Allow manual triggering + +jobs: + performance-plugin: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: Set up JDK 17 + uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0 + with: + java-version: 17 + distribution: temurin + cache: gradle + - name: Run tests + id: tests + run: | + ./gradlew \ + :firebase-perf-gradle:test --tests \ + "com.google.firebase.perf.plugin.transform.InstrumentationApiCompatTest.gradleBuildRunsInstrumentationForAllVariants_latestGradleAndAgp" From e24b0a76e819bfef1d4ef5fb643e5bbe601ffe57 Mon Sep 17 00:00:00 2001 From: Matthew Robertson Date: Wed, 21 Jan 2026 12:09:40 -0500 Subject: [PATCH 2/3] Copy over make releases workflow for build tools --- .../workflows/create-releases-buildtools.yml | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 .github/workflows/create-releases-buildtools.yml diff --git a/.github/workflows/create-releases-buildtools.yml b/.github/workflows/create-releases-buildtools.yml new file mode 100644 index 00000000000..68bc23487a5 --- /dev/null +++ b/.github/workflows/create-releases-buildtools.yml @@ -0,0 +1,96 @@ +name: Create release (build tools) + +on: + workflow_dispatch: + inputs: + product: + description: Which product to make a release of ? + required: true + type: choice + options: + - app-distribution + - crashlytics + - performance + +env: + ARTIFACTS: ${{ github.workspace }}/build/artifacts + +jobs: + make-app-distribution-release: + runs-on: ubuntu-latest + if: inputs.product == 'app-distribution' + steps: + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: Set up JDK 17 + uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0 + with: + java-version: 17 + distribution: temurin + cache: gradle + - name: Make release for Firebase App Distribution + run: | + ./gradlew \ + -Dorg.gradle.project.buildDir=${ARTIFACTS} \ + -Dmaven.repo.local=${ARTIFACTS} \ + :firebase-appdistribution-gradle:publishToMavenLocal + cd ${ARTIFACTS} + zip -r m2repository.zip com + - uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1 + with: + name: artifacts + path: ${{ env.ARTIFACTS }} + + make-crashlytics-release: + runs-on: ubuntu-latest + if: inputs.product == 'crashlytics' + steps: + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: Set up JDK 17 + uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0 + with: + java-version: 17 + distribution: temurin + cache: gradle + - name: Make release for Firebase Crashlytics + run: | + ./gradlew \ + -Dorg.gradle.project.buildDir=${ARTIFACTS} \ + -Dmaven.repo.local=${ARTIFACTS} \ + :firebase-crashlytics-buildtools:publishToMavenLocal + ./gradlew \ + -Dorg.gradle.project.buildDir=${ARTIFACTS} \ + -Dmaven.repo.local=${ARTIFACTS} \ + :firebase-crashlytics-gradle:publishToMavenLocal + cd ${ARTIFACTS} + zip -r m2repository.zip com + - uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1 + with: + name: artifacts + path: ${{ env.ARTIFACTS }} + + make-performance-release: + runs-on: ubuntu-latest + if: inputs.product == 'performance' + steps: + - name: Checkout code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: Set up JDK 17 + uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0 + with: + java-version: 17 + distribution: temurin + cache: gradle + - name: Make release for Firebase Performance + run: | + ./gradlew \ + -Dorg.gradle.project.buildDir=${ARTIFACTS} \ + -Dmaven.repo.local=${ARTIFACTS} \ + :firebase-perf-gradle:publishToMavenLocal + cd ${ARTIFACTS} + zip -r m2repository.zip com + - uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1 + with: + name: artifacts + path: ${{ env.ARTIFACTS }} From 8938483b6ecbcd63071335758751a0d6822a58cd Mon Sep 17 00:00:00 2001 From: Matthew Robertson Date: Wed, 21 Jan 2026 16:48:36 -0500 Subject: [PATCH 3/3] Rename to Perf Gradle Compatibility Tests --- ...patibility-tests.yml => perf-gradle-compatibility-tests.yml} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename .github/workflows/{gradle-compatibility-tests.yml => perf-gradle-compatibility-tests.yml} (95%) diff --git a/.github/workflows/gradle-compatibility-tests.yml b/.github/workflows/perf-gradle-compatibility-tests.yml similarity index 95% rename from .github/workflows/gradle-compatibility-tests.yml rename to .github/workflows/perf-gradle-compatibility-tests.yml index d9e3fd9f56d..7b448fd25b0 100644 --- a/.github/workflows/gradle-compatibility-tests.yml +++ b/.github/workflows/perf-gradle-compatibility-tests.yml @@ -1,4 +1,4 @@ -name: Gradle Compatibility Tests +name: Perf Gradle Compatibility Tests on: schedule: