Skip to content

Commit 62c5de9

Browse files
Make akka-http-10.6 module optional to simplify local build. (#9767)
1 parent 9c1ca62 commit 62c5de9

File tree

3 files changed

+24
-3
lines changed

3 files changed

+24
-3
lines changed

.gitlab-ci.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -167,15 +167,14 @@ default:
167167
before_script:
168168
- source .gitlab/gitlab-utils.sh
169169
# Akka token added to SSM from https://account.akka.io/token
170-
- export AKKA_REPO_TOKEN=$(aws ssm get-parameter --region us-east-1 --name ci.dd-trace-java.akka_repo_token --with-decryption --query "Parameter.Value" --out text)
170+
- export ORG_GRADLE_PROJECT_akkaRepositoryToken=$(aws ssm get-parameter --region us-east-1 --name ci.dd-trace-java.akka_repo_token --with-decryption --query "Parameter.Value" --out text)
171171
- mkdir -p .gradle
172172
- export GRADLE_USER_HOME=$(pwd)/.gradle
173173
- |
174174
# Don't put jvm args here as it will be picked up by child gradle processes used in tests
175175
cat << EOF > $GRADLE_USER_HOME/gradle.properties
176176
mavenRepositoryProxy=$MAVEN_REPOSITORY_PROXY
177177
gradlePluginProxy=$GRADLE_PLUGIN_PROXY
178-
akkaRepositoryToken=$AKKA_REPO_TOKEN
179178
EOF
180179
- |
181180
# replace maven central part by MAVEN_REPOSITORY_PROXY in .mvn/wrapper/maven-wrapper.properties

BUILDING.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ This documentation provides information for developers to set up their environme
88
* [Install the required JDKs](#install-the-required-jdks)
99
* [Install git](#install-git)
1010
* [Install Docker Desktop](#install-docker-desktop)
11+
* [Configure Akka Token](#configure-akka-token)
1112
* [Clone the repository and set up git](#clone-the-repository-and-set-up-git)
1213
* [Building the project](#building-the-project)
1314

@@ -248,6 +249,18 @@ winget install --id Docker.DockerDesktop
248249
> [!NOTE]
249250
> Both git configurations (hooks and submodule) will only be applied to this project and won't apply globally in your setup.
250251

252+
### Configure Akka Token
253+
> [!NOTE]
254+
> You can skip this step if you don’t need instrumentation for the **akka-http-10.6** module.
255+
> For background on why Akka now requires authentication, see this [article](https://akka.io/blog/why-we-are-changing-the-license-for-akka).
256+
257+
To enable access to Akka artifacts hosted on Lightbend’s private repository, you’ll need to configure an authentication token.
258+
1. Obtain a repository token. Visit the Akka account [page](https://account.akka.io/token) to generate a secure repository token.
259+
2. Set up the environment variable. Create an environment variable named:
260+
```shell
261+
ORG_GRADLE_PROJECT_akkaRepositoryToken=<your_token>
262+
```
263+
251264
## Building the project
252265

253266
After everything is properly set up, you can move on to the next section to start a build or check [the contribution guidelines](CONTRIBUTING.md).

settings.gradle.kts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ include(
264264
":dd-java-agent:instrumentation:akka:akka-actor-2.5",
265265
":dd-java-agent:instrumentation:akka:akka-http:akka-http-10.0",
266266
":dd-java-agent:instrumentation:akka:akka-http:akka-http-10.2-iast",
267-
":dd-java-agent:instrumentation:akka:akka-http:akka-http-10.6",
267+
// dd-java-agent:instrumentation:akka:akka-http:akka-http-10.6 will be included when `akkaRepositoryToken` is present, see next `include` block.
268268
":dd-java-agent:instrumentation:apache-httpclient:apache-httpasyncclient-4.0",
269269
":dd-java-agent:instrumentation:apache-httpclient:apache-httpclient-4.0",
270270
":dd-java-agent:instrumentation:apache-httpclient:apache-httpclient-5.0",
@@ -613,6 +613,15 @@ include(
613613
":dd-java-agent:instrumentation:zio:zio-2.0",
614614
)
615615

616+
// Optional `akka-http-10.6` instrumentation (see BUILDING.md for how to enable it):
617+
if (providers.gradleProperty("akkaRepositoryToken").isPresent) {
618+
include(
619+
":dd-java-agent:instrumentation:akka:akka-http:akka-http-10.6"
620+
)
621+
} else {
622+
logger.quiet("Omitting :dd-java-agent:instrumentation:akka:akka-http:akka-http-10.6: 'akkaRepositoryToken' not configured")
623+
}
624+
616625
// benchmark
617626
include(
618627
":dd-java-agent:benchmark",

0 commit comments

Comments
 (0)