Build logic changes (#41)

* Migrate some build logic to conventions of other repos.

* spotlessApply

* Fix groovy compile version

* Regex
This commit is contained in:
Anuraag Agrawal 2021-06-30 22:43:20 +09:00 committed by GitHub
parent 26476ae086
commit 4bfd97dfff
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
45 changed files with 285 additions and 533 deletions

View File

@ -22,17 +22,10 @@ jobs:
distribution: adopt
java-version: 11
- uses: burrunan/gradle-cache-action@v1
name: ./gradlew lint
name: Build
with:
arguments: --stacktrace lint
gradle-version: wrapper
job-id: java-contrib
arguments: --stacktrace build
remote-build-cache-proxy-enabled: false
- name: ./gradlew assemble
run: ./gradlew --stacktrace assemble
- name: ./gradlew build
run: ./gradlew --stacktrace --max-workers 2 build
timeout-minutes: 5
- uses: actions/upload-artifact@v2
name: Save unit test results
if: always()
@ -53,13 +46,9 @@ jobs:
distribution: adopt
java-version: 11
- uses: burrunan/gradle-cache-action@v1
name: ./gradlew integrationTest
id: integration-test
timeout-minutes: 10
name: Integration Tests
with:
arguments: --stacktrace --max-workers 2 integrationTest
gradle-version: wrapper
job-id: java-contrib
arguments: --stacktrace integrationTest
remote-build-cache-proxy-enabled: false
- uses: actions/upload-artifact@v2
name: Save integrationTest results

View File

@ -18,7 +18,7 @@ feature or via instrumentation, this project is hopefully for you.
```bash
# Apply formatting
$ ./gradlew format
$ ./gradlew spotlessApply
# Build the complete project
$ ./gradlew build

View File

@ -1,42 +1,10 @@
plugins {
id 'com.diffplug.spotless' version '5.1.1'
id "com.github.johnrengelman.shadow" version "6.0.0" apply false
id "io.github.gradle-nexus.publish-plugin" version "1.1.0"
id 'com.diffplug.spotless'
id "io.github.gradle-nexus.publish-plugin"
}
description = 'OpenTelemetry Contrib libraries and utilities for the JVM'
allprojects {
group = 'io.opentelemetry.contrib'
version = '1.0.0-alpha'
apply from: "$rootDir/gradle/spotless.gradle"
apply from: "$rootDir/gradle/dependencies.gradle"
it.ext.contrib = "$rootDir/gradle/contrib.gradle"
it.ext.publish = "$rootDir/gradle/publish.gradle"
repositories {
mavenLocal()
jcenter()
mavenCentral()
}
}
task lint(dependsOn: [allprojects.spotlessCheck])
task format(dependsOn: [allprojects.spotlessApply])
task integrationTest {
doFirst {
allprojects.test.each { test ->
test.configure {
systemProperty 'ojc.integration.tests', 'true'
}
}
}
}
integrationTest.finalizedBy allprojects.test
// At this time authentication relies on sonatypeUsername and sonatypePassword project properties or
// ORG_GRADLE_PROJECT_sonatypeUsername and ORG_GRADLE_PROJECT_sonatypePassword environment variables.
nexusPublishing {

16
buildSrc/build.gradle.kts Normal file
View File

@ -0,0 +1,16 @@
plugins {
`kotlin-dsl`
// When updating, update below in dependencies too
id("com.diffplug.spotless") version "5.14.0"
}
repositories {
mavenCentral()
gradlePluginPortal()
mavenLocal()
}
dependencies {
// When updating, update above in plugins too
implementation("com.diffplug.spotless:spotless-plugin-gradle:5.14.0")
}

View File

@ -0,0 +1,37 @@
plugins {
groovy
id("otel.java-conventions")
id("otel.spotless-conventions")
}
dependencies {
testImplementation("org.spockframework:spock-core:1.3-groovy-2.5") {
exclude("org.codehaus.groovy", "groovy-all")
}
}
spotless {
groovy {
greclipse()
indentWithSpaces()
trimTrailingWhitespace()
endWithNewline()
excludeJava()
licenseHeaderFile(rootProject.file("config/license/spotless.license.java"), "(package|import|class|def|// Includes work from:)")
}
groovyGradle {
greclipse()
indentWithSpaces()
trimTrailingWhitespace()
endWithNewline()
}
}
tasks {
withType<GroovyCompile> {
sourceCompatibility = "8"
targetCompatibility = "8"
}
}

View File

@ -0,0 +1,54 @@
plugins {
`java-library`
id("otel.spotless-conventions")
}
group = "io.opentelemetry.contrib"
version = "1.0.0-alpha"
base.archivesBaseName = "${rootProject.name}-${project.name}"
java {
toolchain {
languageVersion.set(JavaLanguageVersion.of(11))
}
withJavadocJar()
withSourcesJar()
}
tasks {
withType<JavaCompile>().configureEach {
with(options) {
release.set(8)
}
}
val integrationTest by registering {
dependsOn(test)
}
test {
if (gradle.startParameter.taskNames.contains(integrationTest.name)) {
systemProperty("ojc.integration.tests", "true")
}
}
}
val dependencyManagement by configurations.creating {
isCanBeConsumed = false
isCanBeResolved = false
isVisible = false
}
dependencies {
dependencyManagement(platform(project(":dependencyManagement")))
afterEvaluate {
configurations.configureEach {
if (isCanBeResolved && !isCanBeConsumed) {
extendsFrom(dependencyManagement)
}
}
}
}

View File

@ -0,0 +1,18 @@
plugins {
id("com.diffplug.spotless")
}
spotless {
java {
googleJavaFormat()
licenseHeaderFile(rootProject.file("config/license/spotless.license.java"), "(package|import|public|class|// Includes work from:)")
}
format("misc") {
// not using "**/..." to help keep spotless fast
target(".gitignore", "*.md", "src/**/*.md", "*.sh", "src/**/*.properties")
indentWithSpaces()
trimTrailingWhitespace()
endWithNewline()
}
}

View File

@ -0,0 +1,4 @@
/*
* Copyright The OpenTelemetry Authors
* SPDX-License-Identifier: Apache-2.0
*/

View File

@ -0,0 +1,67 @@
import com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask
plugins {
`java-platform`
id("com.github.ben-manes.versions")
}
data class DependencySet(val group: String, val version: String, val modules: List<String>)
val dependencyVersions = hashMapOf<String, String>()
rootProject.extra["versions"] = dependencyVersions
val DEPENDENCY_BOMS = listOf(
"io.opentelemetry:opentelemetry-bom:1.0.0",
"io.opentelemetry:opentelemetry-bom-alpha:1.0.0-alpha"
)
val DEPENDENCY_SETS = listOf<DependencySet>()
val DEPENDENCIES = listOf(
"org.spockframework:spock-core:1.3-groovy-2.5"
)
javaPlatform {
allowDependencies()
}
dependencies {
for (bom in DEPENDENCY_BOMS) {
api(enforcedPlatform(bom))
val split = bom.split(':')
dependencyVersions[split[0]] = split[2]
}
constraints {
for (set in DEPENDENCY_SETS) {
for (module in set.modules) {
api("${set.group}:${module}:${set.version}")
dependencyVersions[set.group] = set.version
}
}
for (dependency in DEPENDENCIES) {
api(dependency)
val split = dependency.split(':')
dependencyVersions[split[0]] = split[2]
}
}
}
fun isNonStable(version: String): Boolean {
val stableKeyword = listOf("RELEASE", "FINAL", "GA").any { version.toUpperCase().contains(it) }
val regex = "^[0-9,.v-]+(-r)?$".toRegex()
val isGuava = version.endsWith("-jre")
val isStable = stableKeyword || regex.matches(version) || isGuava
return isStable.not()
}
tasks {
named<DependencyUpdatesTask>("dependencyUpdates") {
revision = "release"
checkConstraints = true
rejectVersionIf {
isNonStable(candidate.version)
}
}
}

View File

@ -1,4 +1,6 @@
apply from: project.contrib
plugins {
id("otel.java-conventions")
}
ext.libraryName = 'OpenTelemetry Java Contrib Example'
description = 'An example OpenTelemetry Java Contrib library'

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.example;
public class Library {

View File

@ -1,22 +0,0 @@
apply plugin: 'java'
apply plugin: 'groovy'
ext.releaseJavaVersion = JavaVersion.VERSION_1_8
ext.testJavaVersion = JavaVersion.VERSION_1_8
java {
archivesBaseName = "${rootProject.name}-${project.name}"
sourceCompatibility = project.releaseJavaVersion
targetCompatibility = project.releaseJavaVersion
withJavadocJar()
withSourcesJar()
}
compileTestJava {
sourceCompatibility = project.testJavaVersion
targetCompatibility = project.testJavaVersion
}
dependencies {
testImplementation project.libraries.spock
}

View File

@ -1,27 +0,0 @@
ext {
versions = [
otelStable : '1.0.0',
otelAlpha : '1.0.0-alpha'
]
libraries = [
// otel
otelApi : "io.opentelemetry:opentelemetry-api:${versions.otelStable}",
otelApiMetrics : "io.opentelemetry:opentelemetry-api-metrics:${versions.otelAlpha}",
otelSdk : "io.opentelemetry:opentelemetry-sdk:${versions.otelStable}",
otelSdkMetrics : "io.opentelemetry:opentelemetry-sdk-metrics:${versions.otelAlpha}",
otelAutoconfig : "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:${versions.otelAlpha}",
otelSdkTesting : "io.opentelemetry:opentelemetry-sdk-testing:${versions.otelStable}",
otelExporterJaeger : "io.opentelemetry:opentelemetry-exporter-jaeger:${versions.otelStable}",
otelExporterLogging : "io.opentelemetry:opentelemetry-exporter-logging:${versions.otelStable}",
otelExporterOtlp : "io.opentelemetry:opentelemetry-exporter-otlp-metrics:${versions.otelAlpha}",
otelExporterPrometheus : "io.opentelemetry:opentelemetry-exporter-prometheus:${versions.otelAlpha}",
otelExporterZipkin : "io.opentelemetry:opentelemetry-exporter-zipkin:${versions.otelStable}",
otelProto : "io.opentelemetry:opentelemetry-proto:${versions.otelAlpha}",
// testing
spock : dependencies.create('org.spockframework:spock-core:1.3-groovy-2.5', {
exclude group: 'org.codehaus.groovy', module: 'groovy-all'
})
]
}

View File

@ -1,16 +0,0 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

View File

@ -1,30 +0,0 @@
apply plugin: 'com.diffplug.spotless'
apply plugin: 'groovy'
spotless {
format 'misc', {
target '**/*.md', '.gitignore'
indentWithSpaces()
trimTrailingWhitespace()
endWithNewline()
}
java {
target '**/src/*/java/**/*.java'
googleJavaFormat()
indentWithSpaces()
licenseHeaderFile rootProject.file('gradle/java.license.header'), '(package|import|public)'
}
groovy {
target '**/*.groovy'
greclipse()
indentWithSpaces()
licenseHeaderFile rootProject.file('gradle/java.license.header'), '(package|import|class|def)'
}
groovyGradle {
target '**/*.gradle'
greclipse()
indentWithSpaces()
}
}
check.dependsOn 'spotlessCheck'

View File

@ -1,10 +1,11 @@
plugins {
id "application"
id "com.github.johnrengelman.shadow"
id("otel.groovy-conventions")
}
apply from: project.contrib
apply plugin: 'com.github.johnrengelman.shadow'
apply from: project.publish
apply from: "$rootDir/gradle/publish.gradle"
ext.shadowPublish = true
@ -38,25 +39,36 @@ def deps = [
testcontainers : "org.testcontainers:testcontainers:1.15.1",
]
repositories {
mavenCentral()
maven {
setUrl("http://www.terracotta.org/download/reflector/releases")
content {
includeGroupByRegex($/org\.terracotta.*/$)
}
}
mavenLocal()
}
dependencies {
implementation "io.grpc:grpc-netty-shaded:${versions.grpc}",
"org.codehaus.groovy:groovy-jmx:${versions.groovy}",
"org.codehaus.groovy:groovy:${versions.groovy}",
"io.prometheus:simpleclient:${versions.prometheus}",
"io.prometheus:simpleclient_httpserver:${versions.prometheus}",
libraries.otelApi,
libraries.otelApiMetrics,
libraries.otelAutoconfig,
libraries.otelExporterLogging,
libraries.otelExporterOtlp,
libraries.otelExporterPrometheus,
libraries.otelSdk,
libraries.otelSdkMetrics,
libraries.otelSdkTesting,
"io.opentelemetry:opentelemetry-api",
"io.opentelemetry:opentelemetry-api-metrics",
"io.opentelemetry:opentelemetry-sdk",
"io.opentelemetry:opentelemetry-sdk-metrics",
"io.opentelemetry:opentelemetry-sdk-extension-autoconfigure",
"io.opentelemetry:opentelemetry-sdk-testing",
"io.opentelemetry:opentelemetry-exporter-logging",
"io.opentelemetry:opentelemetry-exporter-otlp-metrics",
"io.opentelemetry:opentelemetry-exporter-prometheus",
deps.slf4j,
dependencies.create(group: 'org.slf4j', name: 'slf4j-simple', version: versions.slf4j)
runtime "org.terracotta:jmxremote_optional-tc:1.0.5"
runtime "org.terracotta:jmxremote_optional-tc:1.0.8"
testImplementation "io.grpc:grpc-api:${versions.grpc}",
"io.grpc:grpc-protobuf:${versions.grpc}",
@ -67,7 +79,7 @@ dependencies {
'org.awaitility:awaitility:3.0.0',
'org.apache.httpcomponents.client5:httpclient5-fluent:5.0.1',
deps.testcontainers,
libraries.otelProto
"io.opentelemetry:opentelemetry-proto"
}
shadowJar {

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import groovy.transform.PackageScope

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import groovy.transform.PackageScope

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import io.opentelemetry.api.metrics.DoubleCounter

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics;
import javax.annotation.Nullable;

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics;
public class ConfigurationException extends RuntimeException {

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics;
import io.opentelemetry.api.GlobalOpenTelemetry;

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics;
import static java.nio.charset.StandardCharsets.UTF_8;

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics;
import java.io.IOException;

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics;
import java.util.Arrays;

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics;
import java.io.DataInputStream;

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import javax.management.ObjectName

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import static org.junit.Assert.assertTrue

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import spock.lang.Unroll

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import static java.lang.management.ManagementFactory.getPlatformMBeanServer

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import static io.opentelemetry.sdk.metrics.data.MetricDataType.DOUBLE_SUM

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import io.opentelemetry.proto.common.v1.InstrumentationLibrary

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import org.apache.hc.client5.http.fluent.Request

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import spock.lang.Specification

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import io.opentelemetry.proto.metrics.v1.DoubleGauge

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import io.opentelemetry.proto.metrics.v1.IntGauge

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import io.opentelemetry.proto.common.v1.StringKeyValue

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import io.opentelemetry.proto.common.v1.StringKeyValue

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import io.opentelemetry.proto.common.v1.StringKeyValue

View File

@ -1,19 +1,7 @@
/*
* Copyright The OpenTelemetry Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* SPDX-License-Identifier: Apache-2.0
*/
package io.opentelemetry.contrib.jmxmetrics
import io.opentelemetry.proto.common.v1.InstrumentationLibrary

View File

@ -1,4 +0,0 @@
rootProject.name = 'opentelemetry-java-contrib'
include ':example'
include ':jmx-metrics'

20
settings.gradle.kts Normal file
View File

@ -0,0 +1,20 @@
pluginManagement {
plugins {
id("com.github.ben-manes.versions") version "0.39.0"
id("com.github.johnrengelman.shadow") version "6.0.0"
id("io.github.gradle-nexus.publish-plugin") version "1.1.0"
}
}
dependencyResolutionManagement {
repositories {
mavenCentral()
mavenLocal()
}
}
rootProject.name = "opentelemetry-java-contrib"
include(":dependencyManagement")
include(":example")
include(":jmx-metrics")