Skip to content

Use Fabric as the primary Muzzle Depot repository - #12621

Draft
aalbertjay wants to merge 1 commit into
DataDog:masterfrom
aalbertjay:codex/muzzle-fabric-repository-fallback
Draft

aalbertjay wants to merge 1 commit into
DataDog:masterfrom
aalbertjay:codex/muzzle-fabric-repository-fallback

Conversation

@aalbertjay

Copy link
Copy Markdown
Contributor

Summary

  • query the Depot Java Fabric endpoint before the configured us1.ddbuild.io endpoint
  • retain the configured Depot endpoint as a fallback with a separate Aether repository ID
  • leave custom Maven proxy configurations unchanged
  • replace environment-dependent repository tests with deterministic coverage

Why

A transient TCP connection timeout to the us1.ddbuild.io endpoint can prevent Muzzle version-range resolution. The Go dependency configuration already uses the corresponding Fabric endpoint first and retains the external endpoint as fallback. Registering both repositories gives Aether an alternate network path within the same resolution attempt.

Testing

  • ./gradlew -p buildSrc :test -PrunBuildSrcTests --tests datadog.gradle.plugin.muzzle.MuzzleMavenRepoUtilsTest -x :call-site-instrumentation-plugin:test -x :modifiable-config-agent:test
  • ./gradlew -p buildSrc spotlessCheck

@aalbertjay

Copy link
Copy Markdown
Contributor Author

@bric3 CI on this fork PR is failing before checkout because dd-octo-sts does not receive OIDC variables for fork-originated workflows. Could you please mirror this to an internal DataDog/dd-trace-java branch, as you did for #12539 in #12592? The repository build check and focused local tests pass.

@bric3 bric3 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll mirror the PR, but left a few notes about what I will need to change.

🙏 Thanks to the proposed fix !

Comment on lines +25 to +28
private const val DEPOT_JAVA_HOST = "depot-read-api-java.us1.ddbuild.io"
private const val DEPOT_JAVA_FABRIC_URL =
"https://depot-read-api-java.rapid-dependency-management-depot.all-clusters.local-dc.fabric.dog:8443/" +
"magicmirror/magicmirror/@current/"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: I'd rather not have depot URL here, in constants, they should be configurable, I'll look into that in the mirror PR.

Comment on lines +25 to +29
private const val DEPOT_JAVA_URL =
"https://depot-read-api-java.us1.ddbuild.io/magicmirror/magicmirror/@current/"
private const val DEPOT_JAVA_FABRIC_URL =
"https://depot-read-api-java.rapid-dependency-management-depot.all-clusters.local-dc.fabric.dog:8443/" +
"magicmirror/magicmirror/@current/"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: I'd rather not have depot URL here, in constants, they should be configurable, I'll look into that in the mirror PR.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants