Upgrade to Gradle 6.7 and use toolchains feature to build on 11 and t… (#1829)
* Upgrade to Gradle 6.7 and use toolchains feature to build on 11 and test on 11/8. * Debug (probably first JDK download taking some time) * Remove now unnecessary java toolchain workarounds * Remove debug * Remove windows build for now * bin * Raise no_output_timeout since this change seems to eliminate cache and build doesn't finish.
This commit is contained in:
		
							parent
							
								
									e13e631847
								
							
						
					
					
						commit
						082791503b
					
				|  | @ -6,6 +6,8 @@ init_task: &init_task | |||
| build_task: &build_task | ||||
|   name: Build | ||||
|   command: make test-with-docker | ||||
|   # For slow build if cache is cleared | ||||
|   no_output_timeout: 60m | ||||
| compile_benchmark_task: &compile_benchmark_task | ||||
|   name: Compile JMH | ||||
|   command: make benchmark | ||||
|  | @ -28,8 +30,9 @@ jobs: | |||
|       # Configure the JVM and Gradle to avoid OOM errors | ||||
|       _JAVA_OPTIONS: "-Xmx1g" | ||||
|       GRADLE_OPTS: "-Dorg.gradle.daemon=false -Dorg.gradle.workers.max=2" | ||||
|       ORG_GRADLE_PROJECT_testAdditionalJavaVersions: true | ||||
|     docker: | ||||
|       - image: circleci/openjdk:8-jdk | ||||
|       - image: circleci/openjdk:11.0.6-jdk-buster | ||||
|     steps: | ||||
|       - checkout | ||||
|       - restore_cache: | ||||
|  | @ -56,32 +59,6 @@ jobs: | |||
|           paths: | ||||
|             - ~/.gradle | ||||
|           key: gradle-{{ checksum "build.gradle" }} | ||||
|   java11: | ||||
|     environment: | ||||
|       # Configure the JVM and Gradle to avoid OOM errors | ||||
|       _JAVA_OPTIONS: "-Xmx3g" | ||||
|       GRADLE_OPTS: "-Dorg.gradle.daemon=false -Dorg.gradle.workers.max=2" | ||||
|     docker: | ||||
|       - image: circleci/openjdk:11.0.6-jdk-buster | ||||
|     steps: | ||||
|       - checkout | ||||
|       - restore_cache: | ||||
|           keys: | ||||
|             - java11-gradle-{{ checksum "build.gradle" }} | ||||
| #     make in missing in openjdk:9-jdk image | ||||
|       - run: sudo apt-get update && sudo apt-get install -y make | ||||
|       - run: | ||||
|           <<: *init_task | ||||
|       - run: | ||||
|           <<: *verify_task | ||||
|       - run: | ||||
|           <<: *build_task | ||||
|       - run: | ||||
|           <<: *compile_benchmark_task | ||||
|       - save_cache: | ||||
|           paths: | ||||
|             - ~/.gradle | ||||
|           key: java11-gradle-{{ checksum "build.gradle" }} | ||||
| # Publish the released artifacts using the `build` job env. | ||||
|   release_job: | ||||
|     environment: | ||||
|  | @ -113,4 +90,3 @@ workflows: | |||
|   build_and_test: | ||||
|     jobs: | ||||
|       - build | ||||
|       - java11 | ||||
|  |  | |||
|  | @ -17,29 +17,32 @@ jobs: | |||
|         os: | ||||
|           - macos-latest | ||||
|           - ubuntu-latest | ||||
|           - windows-latest | ||||
|         java: | ||||
|           # Test all OS's with Java 11 | ||||
|           - 11 | ||||
|         include: | ||||
|           - os: ubuntu-latest | ||||
|             java: 11 | ||||
|             testAdditionalJavaVersions: true | ||||
|             coverage: true | ||||
|           - os: ubuntu-latest | ||||
|             java: 8 | ||||
|     steps: | ||||
|       - uses: actions/checkout@v2 | ||||
|         with: | ||||
|           submodules: true | ||||
|       - uses: actions/setup-java@v1 | ||||
|       - id: setup-java-8 | ||||
|         name: Setup Java 8 | ||||
|         uses: actions/setup-java@v1 | ||||
|         with: | ||||
|           java-version: ${{ matrix.java }} | ||||
|           java-version: 8 | ||||
|           java-package: jre | ||||
|       - id: setup-java-11 | ||||
|         name: Setup Java 11 | ||||
|         uses: actions/setup-java@v1 | ||||
|         with: | ||||
|           java-version: 11 | ||||
|       - uses: burrunan/gradle-cache-action@v1.5 | ||||
|         with: | ||||
|           job-id: jdk${{ matrix.java }} | ||||
|           remote-build-cache-proxy-enabled: false | ||||
|           arguments: check --stacktrace ${{ matrix.coverage && ':opentelemetry-all:jacocoTestReport' || '' }} | ||||
|           properties: | | ||||
|             testAdditionalJavaVersions=${{ matrix.testAdditionalJavaVersions }} | ||||
|             enable.docker.tests=${{ matrix.os == 'ubuntu-latest' }} | ||||
|             org.gradle.java.installations.paths=${{ steps.setup-java-8.outputs.path }},${{ steps.setup-java-11.outputs.path }} | ||||
|       - uses: codecov/codecov-action@v1 | ||||
|         if: ${{ matrix.coverage }} | ||||
|  |  | |||
							
								
								
									
										31
									
								
								build.gradle
								
								
								
								
							
							
						
						
									
										31
									
								
								build.gradle
								
								
								
								
							|  | @ -169,15 +169,32 @@ configure(opentelemetryProjects) { | |||
|         mavenLocal() | ||||
|     } | ||||
| 
 | ||||
|     sourceCompatibility = 1.8 | ||||
|     targetCompatibility = 1.8 | ||||
| 
 | ||||
|     java { | ||||
|         toolchain { | ||||
|             languageVersion = JavaLanguageVersion.of(11) | ||||
|         } | ||||
| 
 | ||||
|         withJavadocJar() | ||||
|         withSourcesJar() | ||||
|     } | ||||
| 
 | ||||
|     tasks { | ||||
|         def testJava8 = register('testJava8', Test) { | ||||
|             javaLauncher = javaToolchains.launcherFor { | ||||
|                 languageVersion = JavaLanguageVersion.of(8) | ||||
|             } | ||||
| 
 | ||||
|             jacoco.enabled = false | ||||
|         } | ||||
| 
 | ||||
|         if (rootProject.findProperty('testAdditionalJavaVersions') == 'true') { | ||||
|             check.dependsOn(testJava8) | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     tasks.withType(JavaCompile) { | ||||
|         it.options.release = 8 | ||||
| 
 | ||||
|         it.options.compilerArgs += [ | ||||
|                 "-Xlint:all", | ||||
|                 // We suppress the "try" warning because it disallows managing an auto-closeable with | ||||
|  | @ -370,16 +387,11 @@ configure(opentelemetryProjects) { | |||
|         // The ErrorProne plugin defaults to the latest, which would break our | ||||
|         // build if error prone releases a new version with a new check | ||||
|         errorprone libraries.errorprone_core | ||||
|         if (!JavaVersion.current().isJava9Compatible()) { | ||||
|             errorproneJavac libraries.errorprone_javac | ||||
|         } | ||||
| 
 | ||||
|         if (JavaVersion.current().isJava9Compatible()) { | ||||
|         // Workaround for @javax.annotation.Generated | ||||
|         // see: https://github.com/grpc/grpc-java/issues/3633 | ||||
|         compileOnly libraries.javax_annotations | ||||
|     } | ||||
|     } | ||||
| 
 | ||||
|     tasks.withType(Test) { | ||||
|         systemProperties project.properties.subMap(["enable.docker.tests"]) | ||||
|  | @ -465,8 +477,7 @@ configure(opentelemetryProjects) { | |||
| } | ||||
| 
 | ||||
| wrapper { | ||||
|     distributionType = Wrapper.DistributionType.ALL | ||||
|     gradleVersion = '6.6' | ||||
|     gradleVersion = '6.7' | ||||
| } | ||||
| 
 | ||||
| tasks.register("updateVersionInDocs") { | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| distributionBase=GRADLE_USER_HOME | ||||
| distributionPath=wrapper/dists | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-6.6-all.zip | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip | ||||
| distributionSha256Sum=8ad57759019a9233dc7dc4d1a530cefe109dc122000d57f7e623f8cf4ba9dfc4 | ||||
| zipStoreBase=GRADLE_USER_HOME | ||||
| zipStorePath=wrapper/dists | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| distributionBase=GRADLE_USER_HOME | ||||
| distributionPath=wrapper/dists | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-6.6-all.zip | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip | ||||
| distributionSha256Sum=8ad57759019a9233dc7dc4d1a530cefe109dc122000d57f7e623f8cf4ba9dfc4 | ||||
| zipStoreBase=GRADLE_USER_HOME | ||||
| zipStorePath=wrapper/dists | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue