Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stop publishing opentelemetry-exporter-jaeger-proto artifact #4724

Merged
merged 2 commits into from Sep 8, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 0 additions & 1 deletion README.md
Expand Up @@ -260,7 +260,6 @@ dependency as follows, replacing `{{artifact-id}}` with the value from the "Arti
| [OTLP Common](./exporters/otlp/common) | Shared OTLP components (internal) | `opentelemetry-exporter-otlp-common` | <!--VERSION_STABLE-->1.17.0<!--/VERSION_STABLE--> |
| [Jaeger gRPC Exporter](./exporters/jaeger) | Jaeger gRPC trace exporter | `opentelemetry-exporter-jaeger` | <!--VERSION_STABLE-->1.17.0<!--/VERSION_STABLE--> |
| [Jaeger Thrift Exporter](./exporters/jaeger-thrift) | Jaeger thrift trace exporter | `opentelemetry-exporter-jaeger-thift` | <!--VERSION_STABLE-->1.17.0<!--/VERSION_STABLE--> |
| [Jaeger Proto](./exporters/jaeger-proto) | Jaeger gRPC protobuf definitions (deprecated) | `opentelemetry-exporter-jaeger-proto` | <!--VERSION_STABLE-->1.17.0<!--/VERSION_STABLE--> |
| [Logging Exporter](./exporters/logging) | Logging exporters, includings metrics, traces, and logs | `opentelemetry-exporter-logging` | <!--VERSION_STABLE-->1.17.0<!--/VERSION_STABLE--> |
| [OTLP Logging Exporter](./exporters/logging-otlp) | Logging exporters in OTLP protobuf JSON format, including metrics, traces, and logs | `opentelemetry-exporter-logging-otlp` | <!--VERSION_STABLE-->1.17.0<!--/VERSION_STABLE--> |
| [Zipkin Exporter](./exporters/zipkin) | Zipkin trace exporter | `opentelemetry-exporter-zipkin` | <!--VERSION_STABLE-->1.17.0<!--/VERSION_STABLE--> |
Expand Down
10 changes: 10 additions & 0 deletions all/build.gradle.kts
Expand Up @@ -38,6 +38,16 @@ dependencies {
}
}
}

// For testing BOM references to artifacts that were previously published
testImplementation(platform(project(":bom")))
// The io.grpc.grpc-* dependencies are transitive dependencies of opentelemetry-exporter-jaeger-proto
// which must be provided by the user
testImplementation("io.opentelemetry:opentelemetry-exporter-jaeger-proto")
testImplementation("io.grpc:grpc-api")
testImplementation("io.grpc:grpc-protobuf")
testImplementation("io.grpc:grpc-stub")

testImplementation("com.tngtech.archunit:archunit-junit5")
}

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

package io.opentelemetry.all;

import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.Test;

class FallbackArtifactsTest {

@Test
void exporterJaegerProto() {
classAvailable(io.opentelemetry.exporter.jaeger.proto.api_v2.Collector.class);
classAvailable(io.opentelemetry.exporter.jaeger.proto.api_v2.CollectorServiceGrpc.class);
classAvailable(io.opentelemetry.exporter.jaeger.proto.api_v2.Model.class);
}

private static void classAvailable(Class<?> clazz) {
Assertions.assertThatCode(() -> Class.forName(clazz.getName())).doesNotThrowAnyException();
jack-berg marked this conversation as resolved.
Show resolved Hide resolved
}
}
5 changes: 4 additions & 1 deletion bom/build.gradle.kts
Expand Up @@ -6,4 +6,7 @@ description = "OpenTelemetry Bill of Materials"
group = "io.opentelemetry"
base.archivesName.set("opentelemetry-bom")

otelBom.projectFilter.set { !it.hasProperty("otel.release") }
otelBom.projectFilter.set { !it.hasProperty("otel.release") }

// Artifacts that were previously published and included in the BOM for backwards compatibility
otelBom.addFallback("opentelemetry-exporter-jaeger-proto", "1.17.0")
Expand Up @@ -6,9 +6,15 @@
package io.opentelemetry.gradle

import org.gradle.api.Project
import org.gradle.api.model.ObjectFactory
import org.gradle.api.provider.Property
import java.util.function.Predicate

abstract class OtelBomExtension {
abstract val projectFilter: Property<Predicate<Project>>
var fallbacks: MutableSet<String> = hashSetOf()
jack-berg marked this conversation as resolved.
Show resolved Hide resolved

fun addFallback(artifactId: String, version: String) {
this.fallbacks.add("io.opentelemetry:" + artifactId + ":" + version)
}
}
7 changes: 7 additions & 0 deletions buildSrc/src/main/kotlin/otel.bom-conventions.gradle.kts
Expand Up @@ -61,4 +61,11 @@ afterEvaluate {
}
}
}
otelBom.fallbacks.forEach { fallback ->
dependencies {
constraints {
api(fallback)
}
}
}
}
1 change: 0 additions & 1 deletion exporters/jaeger-proto/build.gradle.kts
@@ -1,6 +1,5 @@
plugins {
id("otel.protobuf-conventions")
id("otel.publish-conventions")

id("otel.animalsniffer-conventions")
}
Expand Down