diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 69d6bffce7..5c51160c50 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,8 +33,9 @@ jobs: - name: Build env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }} + GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }} run: ./gradlew build build-gradle-plugins: @@ -104,8 +105,9 @@ jobs: - name: Test env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }} + GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }} run: ./gradlew test -PtestJavaVersion=${{ matrix.test-java-version }} -PtestJavaVM=${{ matrix.vm }} -Porg.gradle.java.installations.paths=${{ steps.setup-test-java.outputs.path }} -Porg.gradle.java.installations.auto-download=false testLatestDeps: @@ -141,8 +143,9 @@ jobs: - name: Test env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }} + GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }} run: ./gradlew test -PtestLatestDeps=true smoke-test: @@ -194,8 +197,9 @@ jobs: - name: Test env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }} + GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }} run: ./gradlew :smoke-tests:test -PsmokeTestSuite=${{ matrix.smoke-test-suite }} setup-muzzle-matrix: @@ -321,8 +325,7 @@ jobs: - name: Build and publish artifact snapshots env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} SONATYPE_USER: ${{ secrets.SONATYPE_USER }} SONATYPE_KEY: ${{ secrets.SONATYPE_KEY }} GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }} @@ -331,6 +334,7 @@ jobs: - name: Build and publish gradle plugin snapshots env: + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} SONATYPE_USER: ${{ secrets.SONATYPE_USER }} SONATYPE_KEY: ${{ secrets.SONATYPE_KEY }} GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }} diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 2f54ed73f9..856940bf45 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -33,8 +33,9 @@ jobs: - name: Build env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }} + GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }} run: ./gradlew build build-gradle-plugins: @@ -104,8 +105,9 @@ jobs: - name: Test env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }} + GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }} run: ./gradlew test -PtestJavaVersion=${{ matrix.test-java-version }} -PtestJavaVM=${{ matrix.vm }} -Porg.gradle.java.installations.paths=${{ steps.setup-test-java.outputs.path }} -Porg.gradle.java.installations.auto-download=false testLatestDeps: @@ -141,8 +143,9 @@ jobs: - name: Test env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }} + GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }} run: ./gradlew test -PtestLatestDeps=true smoke-test: @@ -194,8 +197,9 @@ jobs: - name: Test env: - S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} - S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} + GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} + GE_CACHE_USERNAME: ${{ secrets.GE_CACHE_USERNAME }} + GE_CACHE_PASSWORD: ${{ secrets.GE_CACHE_PASSWORD }} run: ./gradlew :smoke-tests:test -PsmokeTestSuite=${{ matrix.smoke-test-suite }} setup-muzzle-matrix: diff --git a/settings.gradle.kts b/settings.gradle.kts index 34ba2a2df7..af2adfa92b 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -14,8 +14,9 @@ pluginManagement { } plugins { - id("com.gradle.enterprise") version "3.6.3" + id("com.gradle.enterprise") version "3.7.1" id("com.github.burrunan.s3-build-cache") version "1.2" + id("com.gradle.common-custom-user-data-gradle-plugin") version "1.5" } dependencyResolutionManagement { @@ -25,27 +26,43 @@ dependencyResolutionManagement { } } +val gradleEnterpriseServer = "https://ge.opentelemetry.io" val isCI = System.getenv("CI") != null -val skipBuildscan = System.getenv("SKIP_BUILDSCAN").toBoolean() -gradleEnterprise { - buildScan { - termsOfServiceUrl = "https://gradle.com/terms-of-service" - termsOfServiceAgree = "yes" +val geAccessKey = System.getenv("GRADLE_ENTERPRISE_ACCESS_KEY") ?: "" - if (isCI && !skipBuildscan) { - publishAlways() - tag("CI") +// if GE access key is not given and we are in CI, then we publish to scans.gradle.com +gradleEnterprise { + if (geAccessKey.isNotEmpty()) { + server = gradleEnterpriseServer + } + buildScan { + // TODO remove this until legal approves + if (geAccessKey.isEmpty() && isCI) { + termsOfServiceUrl = "https://gradle.com/terms-of-service" + termsOfServiceAgree = "yes" + } + publishAlways() + this as com.gradle.enterprise.gradleplugin.internal.extension.BuildScanExtensionWithHiddenFeatures + publishIfAuthenticated() + + isUploadInBackground = !isCI + + capture { + isTaskInputFiles = true } } } -val awsAccessKey = System.getenv("S3_BUILD_CACHE_ACCESS_KEY_ID") ?: "" - +val geCacheUsername = System.getenv("GE_CACHE_USERNAME") ?: "" +val geCachePassword = System.getenv("GE_CACHE_PASSWORD") ?: "" buildCache { - remote { - region = "us-west-2" - bucket = "opentelemetry-java-instrumentation-gradle-cache" - isPush = isCI && !awsAccessKey.isEmpty() + remote { + url = uri("$gradleEnterpriseServer/cache/") + isPush = isCI && geCacheUsername.isNotEmpty() + credentials { + username = geCacheUsername + password = geCachePassword + } } }