From 21ac244402b188adfcf310d5b9c540370e6e95b8 Mon Sep 17 00:00:00 2001 From: Lucas Pimentel Date: Fri, 21 Jun 2024 15:48:27 -0400 Subject: [PATCH 1/2] fix calling the wrong test --- tests/parametric/test_headers_b3.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/parametric/test_headers_b3.py b/tests/parametric/test_headers_b3.py index 0c19bbce7a..02b949293d 100644 --- a/tests/parametric/test_headers_b3.py +++ b/tests/parametric/test_headers_b3.py @@ -164,7 +164,7 @@ def test_headers_b3_single_key_propagate_valid(self, test_agent, test_library): @missing_feature(context.library == "nodejs", reason="Need to remove b3=b3multi alias") @missing_feature(context.library == "php", reason="Need to remove b3=b3multi alias") def test_headers_b3_migrated_extract_valid(self, test_agent, test_library): - self.test_headers_b3_extract_invalid(test_agent, test_library) + self.test_headers_b3_extract_valid(test_agent, test_library) @enable_migrated_b3() @missing_feature(context.library == "cpp", reason="format of DD_TRACE_PROPAGATION_STYLE_EXTRACT not supported") From 05de44dd9950446a2854a61dd1ea35c5b9bc4bc6 Mon Sep 17 00:00:00 2001 From: Charles de Beauchesne Date: Tue, 25 Jun 2024 11:06:37 +0200 Subject: [PATCH 2/2] Remove tailing whitespaces in utils/build/docker --- format.sh | 2 +- utils/build/build.sh | 8 ++-- utils/build/build_python_base_images.sh | 2 +- utils/build/build_tracer_buddies.sh | 2 +- utils/build/docker/cpp/nginx.Dockerfile | 2 +- .../build/docker/cpp/nginx/install_ddtrace.sh | 2 +- .../docker/cpp/parametric/install_ddtrace.sh | 4 +- .../dotnet/Controllers/TagValueController.cs | 4 +- .../dotnet/Dependencies/MongoDbHelper.cs | 6 +-- .../docker/dotnet/Endpoints/DbmEndpoint.cs | 12 +++--- utils/build/docker/dotnet/Startup.cs | 2 +- utils/build/docker/dotnet/app.sh | 2 +- utils/build/docker/dotnet/install_ddtrace.sh | 2 +- .../parametric/Endpoints/ApmTestApiOtel.cs | 38 +++++++++---------- .../parametric/ddtracer_version.Dockerfile | 2 +- .../java/spring-boot-3-native.Dockerfile | 2 +- .../system_tests/springboot/App.java | 14 +++---- .../SpringbootwildflyApplication.java | 8 ++-- .../springboot/aws/KinesisConnector.java | 18 ++++----- .../debugger/DebuggerController.java | 6 +-- .../db/mssql/MssqlCRUDOperation.java | 8 ++-- .../db/mssql/MssqlConnection.java | 4 +- .../db/postgres/PostgresCRUDOperation.java | 4 +- .../rabbitmq/RabbitmqConnector.java | 2 +- .../docker/java_otel/install_opentelemetry.sh | 2 +- .../docker/nodejs/express4-typescript/iast.ts | 8 ++-- .../integrations/db/resources/mysql.sql | 12 +++--- .../integrations/db/resources/postgres.sql | 20 +++++----- .../build/docker/nodejs/parametric/server.js | 12 +++--- .../docker/php/common/make_distant_call.php | 2 +- utils/build/docker/php/php-fpm/build.sh | 2 +- .../docker/python/flask-poc.base.Dockerfile | 4 +- 32 files changed, 109 insertions(+), 109 deletions(-) diff --git a/format.sh b/format.sh index 1f2d840766..86ba0774be 100755 --- a/format.sh +++ b/format.sh @@ -46,7 +46,7 @@ pylint utils # pylint does not have a fix mode # not py, as it's handled by black INCLUDE_EXTENSIONS=("*.md" "*.yml" "*.yaml" "*.sh" "*.cs" "*.Dockerfile" "*.java" "*.sql" "*.ts" "*.js" "*.php") -EXCLUDE_DIRS=("logs*" "*/node_modules/*" "./venv/*" "./manifests/*" "./utils/build/*") +EXCLUDE_DIRS=("logs*" "*/node_modules/*" "./venv/*" "./manifests/*" "./utils/build/virtual_machine/*") INCLUDE_ARGS=() for ext in "${INCLUDE_EXTENSIONS[@]}"; do diff --git a/utils/build/build.sh b/utils/build/build.sh index 6084741a94..103fc29966 100755 --- a/utils/build/build.sh +++ b/utils/build/build.sh @@ -70,7 +70,7 @@ print_usage() { echo -e " Build images for Java and Spring Boot:" echo -e " ${SCRIPT_NAME} --library java --weblog-variant spring-boot" echo -e " Build default images for Dotnet with binary path:" - echo -e " ${SCRIPT_NAME} dotnet --binary-path "/mnt/c/dev/dd-trace-dotnet-linux/tmp/linux-x64"" + echo -e " ${SCRIPT_NAME} dotnet --binary-path "/mnt/c/dev/dd-trace-dotnet-linux/tmp/linux-x64"" echo -e " Build default images for Dotnet with binary url:" echo -e " ${SCRIPT_NAME} ./build.sh dotnet --binary-url "https://github.com/DataDog/dd-trace-dotnet/releases/download/v2.27.0/datadog-dotnet-apm-2.27.0.tar.gz"" echo -e " List libraries:" @@ -191,21 +191,21 @@ build() { find . ! -name 'README.md' -type f -exec rm -f {} + } - if ! [[ -z "$BINARY_URL" ]]; then + if ! [[ -z "$BINARY_URL" ]]; then cd binaries clean-binaries curl -L -O $BINARY_URL cd .. fi - if ! [[ -z "$BINARY_PATH" ]]; then + if ! [[ -z "$BINARY_PATH" ]]; then cd binaries clean-binaries cp -r $BINARY_PATH/* ./ cd .. fi - DOCKERFILE=utils/build/docker/${TEST_LIBRARY}/${WEBLOG_VARIANT}.Dockerfile + DOCKERFILE=utils/build/docker/${TEST_LIBRARY}/${WEBLOG_VARIANT}.Dockerfile docker buildx build \ --build-arg BUILDKIT_INLINE_CACHE=1 \ diff --git a/utils/build/build_python_base_images.sh b/utils/build/build_python_base_images.sh index 35058cce4b..88ca86333f 100755 --- a/utils/build/build_python_base_images.sh +++ b/utils/build/build_python_base_images.sh @@ -10,7 +10,7 @@ docker buildx build --load --progress=plain -f utils/build/docker/python/flask-p docker buildx build --load --progress=plain -f utils/build/docker/python/uwsgi-poc.base.Dockerfile -t datadog/system-tests:uwsgi-poc.base-v2 . if [ "$1" = "--push" ]; then - docker push datadog/system-tests:fastapi.base-v0 + docker push datadog/system-tests:fastapi.base-v0 docker push datadog/system-tests:python3.12.base-v2 docker push datadog/system-tests:django-poc.base-v1 docker push datadog/system-tests:flask-poc.base-v4 diff --git a/utils/build/build_tracer_buddies.sh b/utils/build/build_tracer_buddies.sh index 337912a50e..46053b7594 100755 --- a/utils/build/build_tracer_buddies.sh +++ b/utils/build/build_tracer_buddies.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash # buddies are weblog app in another lang -# they are used in the CROSSED_TRACING_LIBRARIES scenario, where we can tests data propagation between different languages +# they are used in the CROSSED_TRACING_LIBRARIES scenario, where we can tests data propagation between different languages docker buildx build --load --progress=plain -f utils/build/docker/python/flask-poc.Dockerfile -t datadog/system-tests:python_buddy-v0 . docker buildx build --load --progress=plain -f utils/build/docker/nodejs/express4.Dockerfile -t datadog/system-tests:nodejs_buddy-v0 . diff --git a/utils/build/docker/cpp/nginx.Dockerfile b/utils/build/docker/cpp/nginx.Dockerfile index 7e3a40794f..6fcf38abf7 100644 --- a/utils/build/docker/cpp/nginx.Dockerfile +++ b/utils/build/docker/cpp/nginx.Dockerfile @@ -17,7 +17,7 @@ COPY utils/build/docker/cpp/ binaries* /builds/ WORKDIR /builds -# NGINX Plugin setup +# NGINX Plugin setup RUN ./install_ddtrace.sh # Profiling setup diff --git a/utils/build/docker/cpp/nginx/install_ddtrace.sh b/utils/build/docker/cpp/nginx/install_ddtrace.sh index e068ad4333..545fe7da85 100755 --- a/utils/build/docker/cpp/nginx/install_ddtrace.sh +++ b/utils/build/docker/cpp/nginx/install_ddtrace.sh @@ -43,7 +43,7 @@ FILENAME=ngx_http_datadog_module-appsec-$ARCH-$NGINX_VERSION.so if [ -f "$FILENAME" ]; then echo "Install NGINX plugin from binaries/$FILENAME" cp $FILENAME /usr/lib/nginx/modules/ngx_http_datadog_module.so - NGINX_DATADOG_VERSION="6.6.6" # TODO : get the version from the file ? + NGINX_DATADOG_VERSION="6.6.6" # TODO : get the version from the file ? else NGINX_DATADOG_VERSION="$(get_latest_release DataDog/nginx-datadog)" TARBALL="$FILENAME.tgz" diff --git a/utils/build/docker/cpp/parametric/install_ddtrace.sh b/utils/build/docker/cpp/parametric/install_ddtrace.sh index a12e281a9a..621efc0ee0 100755 --- a/utils/build/docker/cpp/parametric/install_ddtrace.sh +++ b/utils/build/docker/cpp/parametric/install_ddtrace.sh @@ -15,7 +15,7 @@ git_clone_latest_release (){ url_to_clone="https://github.com/DataDog/dd-trace-cpp" latest_release=$(curl -s https://api.github.com/repos/DataDog/dd-trace-cpp/releases/latest | jq '.tag_name'| tr -d '"') echo "$latest_release" > SYSTEM_TESTS_LIBRARY_VERSION - git_clone "$url_to_clone" "$latest_release" + git_clone "$url_to_clone" "$latest_release" } get_version_from_binaries() { @@ -29,7 +29,7 @@ cd /usr/app if [ -e /binaries/cpp-load-from-git ]; then echo "install from file cpp-load-from-git" - target=$(cat /binaries/cpp-load-from-git) + target=$(cat /binaries/cpp-load-from-git) url=$(echo "$target" | cut -d "@" -f 1) branch=$(echo "$target" | cut -d "@" -f 2) #Clone from git, get version from file version.cpp and configure make to use binaries/dd-trace-cpp folder diff --git a/utils/build/docker/dotnet/Controllers/TagValueController.cs b/utils/build/docker/dotnet/Controllers/TagValueController.cs index b0870207fc..6dd070d455 100644 --- a/utils/build/docker/dotnet/Controllers/TagValueController.cs +++ b/utils/build/docker/dotnet/Controllers/TagValueController.cs @@ -87,7 +87,7 @@ public IActionResult ApiSecurityForm([FromRoute(Name = "tag_value")] int tagValu Response.Headers["x-option"] = xOption; return Content("Ok"); } - + [HttpPost("api_match_AS00{tag_value}/{status_code}")] [Consumes("application/json")] // ReSharper disable once InconsistentNaming, system tests demand it @@ -116,7 +116,7 @@ public IActionResult ApiSecurityRcJson([FromRoute(Name = "element")] string elem HttpContext.Response.StatusCode = statusCode; return Content("Ok"); } - + [HttpPost("api_rc_{element}/{status_code}")] [Consumes("application/x-www-form-urlencoded")] public IActionResult ApiSecurityRc([FromRoute(Name = "element")] string elementValue, diff --git a/utils/build/docker/dotnet/Dependencies/MongoDbHelper.cs b/utils/build/docker/dotnet/Dependencies/MongoDbHelper.cs index ed11e0fb97..105bdc66f8 100644 --- a/utils/build/docker/dotnet/Dependencies/MongoDbHelper.cs +++ b/utils/build/docker/dotnet/Dependencies/MongoDbHelper.cs @@ -13,19 +13,19 @@ public MongoDbHelper(string connectionString, string databaseName) _client = new MongoClient(connectionString); _database = _client.GetDatabase(databaseName); } - + public BsonDocument Find(string collectionName, string json) { var collection = _database.GetCollection(collectionName); return collection.Find(json).FirstOrDefault(); } - + public BsonDocument Find(string collectionName, BsonDocument filter) { var collection = _database.GetCollection(collectionName); return collection.Find(filter).FirstOrDefault(); } - + public static BsonDocument CreateSimpleDocument(string key, string value) { return new BsonDocument(key, value); diff --git a/utils/build/docker/dotnet/Endpoints/DbmEndpoint.cs b/utils/build/docker/dotnet/Endpoints/DbmEndpoint.cs index 00008e1f9a..0f14fabcf5 100644 --- a/utils/build/docker/dotnet/Endpoints/DbmEndpoint.cs +++ b/utils/build/docker/dotnet/Endpoints/DbmEndpoint.cs @@ -16,7 +16,7 @@ public void Register(Microsoft.AspNetCore.Routing.IEndpointRouteBuilder routeBui { var integration = context.Request.Query["integration"]; - if (integration == "npgsql") + if (integration == "npgsql") { await using (var connection = new NpgsqlConnection(Constants.NpgSqlConnectionString)) { @@ -27,10 +27,10 @@ public void Register(Microsoft.AspNetCore.Routing.IEndpointRouteBuilder routeBui } await context.Response.WriteAsync("NpgSql query executed."); - } - else if (integration == "mysql") + } + else if (integration == "mysql") { - await using (var connection = new MySqlConnection(Constants.MySqlConnectionString)) + await using (var connection = new MySqlConnection(Constants.MySqlConnectionString)) { var command = new MySqlCommand("SELECT version()", connection); connection.Open(); @@ -39,8 +39,8 @@ public void Register(Microsoft.AspNetCore.Routing.IEndpointRouteBuilder routeBui } await context.Response.WriteAsync("MySql query executed."); - } - else if (integration == "sqlclient") + } + else if (integration == "sqlclient") { await using (var connection = new SqlConnection(Constants.SqlClientConnectionString)) { diff --git a/utils/build/docker/dotnet/Startup.cs b/utils/build/docker/dotnet/Startup.cs index 34f4cee849..c662409b2a 100644 --- a/utils/build/docker/dotnet/Startup.cs +++ b/utils/build/docker/dotnet/Startup.cs @@ -19,7 +19,7 @@ public void ConfigureServices(IServiceCollection services) { options.ModelBinderProviders.Insert(0, new ModelBinderSwitcherProvider()); }).AddXmlSerializerFormatters(); - + var identityBuilder = services.AddIdentity( o => { diff --git a/utils/build/docker/dotnet/app.sh b/utils/build/docker/dotnet/app.sh index 5f23580dbf..eda91e607e 100755 --- a/utils/build/docker/dotnet/app.sh +++ b/utils/build/docker/dotnet/app.sh @@ -25,7 +25,7 @@ if [ "${UDS_WEBLOG:-0}" = "1" ]; then fi if ( ! dotnet app.dll); then - echo recovering dump to /var/log/system-tests/dumps + echo recovering dump to /var/log/system-tests/dumps mkdir -p /var/log/system-tests/dumps find /tmp -name 'coredump*' -exec cp '{}' /var/log/system-tests/dumps \; chmod -R 644 /var/log/system-tests/dumps/* || true diff --git a/utils/build/docker/dotnet/install_ddtrace.sh b/utils/build/docker/dotnet/install_ddtrace.sh index 472e69b60a..f6232fbb78 100755 --- a/utils/build/docker/dotnet/install_ddtrace.sh +++ b/utils/build/docker/dotnet/install_ddtrace.sh @@ -23,7 +23,7 @@ else artifact=datadog-dotnet-apm-${DDTRACE_VERSION}.arm64.tar.gz else artifact=datadog-dotnet-apm-${DDTRACE_VERSION}.tar.gz - fi + fi echo "Using artifact ${artifact}" curl -L https://github.com/DataDog/dd-trace-dotnet/releases/download/v${DDTRACE_VERSION}/${artifact} --output ${artifact} diff --git a/utils/build/docker/dotnet/parametric/Endpoints/ApmTestApiOtel.cs b/utils/build/docker/dotnet/parametric/Endpoints/ApmTestApiOtel.cs index 2c0cdaf06f..28450d9c71 100644 --- a/utils/build/docker/dotnet/parametric/Endpoints/ApmTestApiOtel.cs +++ b/utils/build/docker/dotnet/parametric/Endpoints/ApmTestApiOtel.cs @@ -9,7 +9,7 @@ public abstract class ApmTestApiOtel : ApmTestApi { internal static readonly ActivitySource ApmTestApiActivitySource = new("ApmTestApi"); internal static readonly Dictionary Activities = new(); - + public static void MapApmOtelEndpoints(WebApplication app) { app.MapPost("/trace/otel/start_span", OtelStartSpan); @@ -38,7 +38,7 @@ private static async Task OtelStartSpan(HttpRequest request) if (requestBodyObject!.TryGetValue("parent_id", out var parentId)) { var stringParentId = parentId.ToString(); - + if (stringParentId is not "0") { var parentActivity = FindActivity(parentId); @@ -52,7 +52,7 @@ private static async Task OtelStartSpan(HttpRequest request) var extractedContext = _spanContextExtractor.Extract( ((Newtonsoft.Json.Linq.JArray)headersList).ToObject(), getter: GetHeaderValues!); - + _logger.LogInformation("Extracted SpanContext: {ExtractedContext}", extractedContext); if (extractedContext is not null) @@ -112,7 +112,7 @@ private static async Task OtelStartSpan(HttpRequest request) break; } } - + var linksList = new List(); if (requestBodyObject.TryGetValue("links", out var links)) @@ -133,7 +133,7 @@ private static async Task OtelStartSpan(HttpRequest request) { contextToLink = FindActivity(parentSpanLink).Context; } - else + else { var extractedContext = _spanContextExtractor.Extract( ((Newtonsoft.Json.Linq.JArray)spanLink["http_headers"]).ToObject(), @@ -164,7 +164,7 @@ private static async Task OtelStartSpan(HttpRequest request) tags: null, links: linksList, startTime); - + if (activity is null) { throw new ApplicationException("Failed to start activity. Make sure there are listeners registered."); @@ -193,7 +193,7 @@ private static async Task OtelStartSpan(HttpRequest request) trace_id = traceId, span_id = spanId, }); - + _logger.LogInformation("OtelStartSpanReturn: {Result}", result); return result; } @@ -211,12 +211,12 @@ private static async Task OtelEndSpan(HttpRequest request) DateTimeOffset convertedTimestamp = new DateTime(1970, 1, 1) + TimeSpan.FromMicroseconds(Convert.ToInt64(requestBodyObject["timestamp"])); activity.SetEndTime(convertedTimestamp.UtcDateTime); } - + activity.Stop(); _logger.LogInformation("OtelEndSpanReturn"); - } - + } + private static async Task OtelIsRecording(HttpRequest request) { var requestBodyObject = await DeserializeRequestObjectAsync(request.Body); @@ -229,9 +229,9 @@ private static async Task OtelIsRecording(HttpRequest request) { is_recording = activity.IsAllDataRequested }); - + _logger.LogInformation("OtelIsRecordingReturn: {Result}", result); - + return result; } @@ -242,7 +242,7 @@ private static async Task OtelSpanContext(HttpRequest request) _logger.LogInformation("OtelSpanContext: {RequestBodyObject}", requestBodyObject); var activity = FindActivity(requestBodyObject["span_id"]); - + var result = JsonConvert.SerializeObject(new { trace_id = activity.TraceId.ToString(), @@ -291,7 +291,7 @@ private static async Task OtelSetName(HttpRequest request) _logger.LogInformation("OtelSetName"); } - + private static async Task OtelSetAttributes(HttpRequest request) { var requestBodyObject = await DeserializeRequestObjectAsync(request.Body); @@ -379,9 +379,9 @@ private static async Task OtelFlushSpans(HttpRequest request) var requestBodyObject = await DeserializeRequestObjectAsync(request.Body); _logger.LogInformation("OtelFlushSpans: {RequestBodyObject}", requestBodyObject); - + await FlushSpans(); - + var result = JsonConvert.SerializeObject(new { success = true, @@ -401,14 +401,14 @@ private static async Task OtelFlushTraceStats(HttpRequest request) _logger.LogInformation("OtelFlushTraceStatsReturn"); } - + // Helper methods: private static async Task> DeserializeRequestObjectAsync(Stream requestBody) { var headerRequestBody = await new StreamReader(requestBody).ReadToEndAsync(); return JsonConvert.DeserializeObject>(headerRequestBody)!; } - + private static Activity FindActivity(object activityId) { if (Activities.TryGetValue(Convert.ToUInt64(activityId.ToString()), out var activity)) @@ -418,7 +418,7 @@ private static Activity FindActivity(object activityId) throw new ApplicationException($"Activity not found with span id {activityId}."); } - + private static void SetTag(Activity activity, Dictionary? attributes) { if (attributes is null) diff --git a/utils/build/docker/java/parametric/ddtracer_version.Dockerfile b/utils/build/docker/java/parametric/ddtracer_version.Dockerfile index 8b95ada63a..13edb8ccab 100644 --- a/utils/build/docker/java/parametric/ddtracer_version.Dockerfile +++ b/utils/build/docker/java/parametric/ddtracer_version.Dockerfile @@ -1,4 +1,4 @@ -FROM maven:3.9-eclipse-temurin-11 +FROM maven:3.9-eclipse-temurin-11 COPY ./utils/build/docker/java/install_ddtrace.sh binaries* /binaries/ RUN /binaries/install_ddtrace.sh diff --git a/utils/build/docker/java/spring-boot-3-native.Dockerfile b/utils/build/docker/java/spring-boot-3-native.Dockerfile index 6e61fd8d5c..a745adab20 100644 --- a/utils/build/docker/java/spring-boot-3-native.Dockerfile +++ b/utils/build/docker/java/spring-boot-3-native.Dockerfile @@ -16,7 +16,7 @@ WORKDIR /app # Copy application sources and cache dependencies COPY ./utils/build/docker/java/spring-boot-3-native/pom.xml . -RUN /opt/apache-maven-3.8.6/bin/mvn -P native -B dependency:go-offline +RUN /opt/apache-maven-3.8.6/bin/mvn -P native -B dependency:go-offline COPY ./utils/build/docker/java/spring-boot-3-native/src ./src # Copy tracer diff --git a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/App.java b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/App.java index 59f154cb5a..68d4979245 100644 --- a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/App.java +++ b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/App.java @@ -104,7 +104,7 @@ public class App { String home(HttpServletResponse response) { // open liberty set this header to en-US by default, it breaks the APPSEC-BLOCKING scenario // if a java engineer knows how to remove this? - // waiting for that, just set a random value + // waiting for that, just set a random value response.setHeader("Content-Language", "not-set"); return "Hello World!"; } @@ -659,7 +659,7 @@ String traceOGNL() { List list = Arrays.asList("Have you ever thought about jumping off an airplane?", "Flying like a bird made of cloth who just left a perfectly working airplane"); - try { + try { Object expr = Ognl.parseExpression("[1]"); String value = (String) Ognl.getValue(expr, list); return "hi OGNL, " + value; @@ -943,17 +943,17 @@ String db_sql_integrations(@RequestParam(required = true, name="service") String @Bean @ConditionalOnProperty( - value="spring.native", - havingValue = "false", + value="spring.native", + havingValue = "false", matchIfMissing = true) - SynchronousWebLogGrpc synchronousGreeter(WebLogInterface localInterface) { + SynchronousWebLogGrpc synchronousGreeter(WebLogInterface localInterface) { return new SynchronousWebLogGrpc(localInterface.getPort()); } @Bean @ConditionalOnProperty( - value="spring.native", - havingValue = "false", + value="spring.native", + havingValue = "false", matchIfMissing = true) WebLogInterface localInterface() throws IOException { return new WebLogInterface(); diff --git a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/SpringbootwildflyApplication.java b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/SpringbootwildflyApplication.java index 3f42153452..27d21cd68c 100644 --- a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/SpringbootwildflyApplication.java +++ b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/SpringbootwildflyApplication.java @@ -10,18 +10,18 @@ @SpringBootApplication public class SpringbootwildflyApplication extends SpringBootServletInitializer { - + public static void main(String[] args) { SpringApplication.run(applicationClass, args); } - + @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(applicationClass); } - + //private static Class applicationClass = SpringbootwildflyApplication.class; private static Class applicationClass = App.class; } - + diff --git a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/aws/KinesisConnector.java b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/aws/KinesisConnector.java index bc97ec34ee..9a289257ba 100644 --- a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/aws/KinesisConnector.java +++ b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/aws/KinesisConnector.java @@ -105,7 +105,7 @@ public void produceMessageWithoutNewThread(String message) throws Exception { long startTime = System.currentTimeMillis(); long endTime = startTime + 60000; - + while (System.currentTimeMillis() < endTime) { try { PutRecordRequest putRecordRequest = PutRecordRequest.builder() @@ -125,10 +125,10 @@ public void produceMessageWithoutNewThread(String message) throws Exception { public boolean consumeMessageWithoutNewThread(int timeout) throws Exception { KinesisClient kinesisClient = this.createKinesisClient(); - + long startTime = System.currentTimeMillis(); long endTime = startTime + timeout * 1000; // Convert timeout to milliseconds - + while (System.currentTimeMillis() < endTime) { try { DescribeStreamRequest describeStreamRequest = DescribeStreamRequest.builder() @@ -136,27 +136,27 @@ public boolean consumeMessageWithoutNewThread(int timeout) throws Exception { .build(); DescribeStreamResponse describeStreamResponse = kinesisClient.describeStream(describeStreamRequest); StreamStatus streamStatus = describeStreamResponse.streamDescription().streamStatus(); - + if (streamStatus != StreamStatus.ACTIVE) { System.out.println("[Kinesis] Kinesis Stream is not active"); Thread.sleep(1000); // Wait 1 second before checking again continue; } - + String shardIterator = kinesisClient.getShardIterator(r -> r.streamName(this.stream).shardId("shardId-000000000000").shardIteratorType(ShardIteratorType.TRIM_HORIZON)).shardIterator(); - + GetRecordsRequest getRecordsRequest = GetRecordsRequest.builder() .shardIterator(shardIterator) .limit(1) .build(); - + GetRecordsResponse getRecordsResponse = kinesisClient.getRecords(getRecordsRequest); List records = getRecordsResponse.records(); - + for (Record record : records) { System.out.println("[Kinesis] got message! " + new String(record.data().asByteArray())); } - + if (!records.isEmpty()) { return true; } diff --git a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/debugger/DebuggerController.java b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/debugger/DebuggerController.java index e5f1ad943f..60bef3b63c 100644 --- a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/debugger/DebuggerController.java +++ b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/debugger/DebuggerController.java @@ -3,8 +3,8 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.server.ResponseStatusException; import org.springframework.http.MediaType; -// The `debugger` feature allows attachment to specific lines of code. -// Due to differences in line numbering between `dotnet` and `java`, +// The `debugger` feature allows attachment to specific lines of code. +// Due to differences in line numbering between `dotnet` and `java`, // 'dummy lines' are used to standardize this functionality. // Dummy line // Dummy line @@ -43,7 +43,7 @@ public String spanDecorationProbe(@PathVariable String arg, @PathVariable int in intLocal = intArg * arg.length(); return "Span Decoration Probe " + intLocal; } - + // Dummy line // Dummy line private int intMixLocal = 0; diff --git a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/mssql/MssqlCRUDOperation.java b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/mssql/MssqlCRUDOperation.java index 6f55cd69cd..2452e8264b 100644 --- a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/mssql/MssqlCRUDOperation.java +++ b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/mssql/MssqlCRUDOperation.java @@ -17,23 +17,23 @@ public MssqlCRUDOperation() { @Override public void createProcedureData() { try (Connection con = getConnector().getConnection()) { - + Statement stmt = con.createStatement(); String procedure = "CREATE PROCEDURE helloworld " + " @Name VARCHAR(100), @Test VARCHAR(100) " + " AS " + " BEGIN " + " SET NOCOUNT ON; " - + + " SELECT id from demo where id=1" + " END " ; - + stmt.execute(procedure); System.out.println("MSSQL Initial data created"); } catch (Exception e) { System.out.println("Error creating mssql procedure data: " + e.getMessage()); - + } } diff --git a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/mssql/MssqlConnection.java b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/mssql/MssqlConnection.java index b8f3b7deda..15c2c8057d 100644 --- a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/mssql/MssqlConnection.java +++ b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/mssql/MssqlConnection.java @@ -11,11 +11,11 @@ public Connection getConnection() String dbName = "master"; String serverName="mssql"; String dbUsername = "SA"; - String dbPassword = "yourStrong(!)Password"; + String dbPassword = "yourStrong(!)Password"; String url = "jdbc:sqlserver://" +serverName + ":1433;DatabaseName=" + dbName + ";trustServerCertificate=true"; Class.forName(dbDriver); - Connection con = DriverManager.getConnection(url, + Connection con = DriverManager.getConnection(url, dbUsername, dbPassword); return con; diff --git a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/postgres/PostgresCRUDOperation.java b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/postgres/PostgresCRUDOperation.java index 7b3742dc6b..76f0c8fd43 100644 --- a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/postgres/PostgresCRUDOperation.java +++ b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/integerations/db/postgres/PostgresCRUDOperation.java @@ -18,8 +18,8 @@ public void createProcedureData() { try (Connection con = getConnector().getConnection()) { Statement stmt = con.createStatement(); - String procedure = "CREATE OR REPLACE PROCEDURE helloworld(id int, other varchar(10)) LANGUAGE plpgsql " - + " AS " + String procedure = "CREATE OR REPLACE PROCEDURE helloworld(id int, other varchar(10)) LANGUAGE plpgsql " + + " AS " + " $$ " + " BEGIN " + " raise info 'Hello World'; " diff --git a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/rabbitmq/RabbitmqConnector.java b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/rabbitmq/RabbitmqConnector.java index 445d7b8c4e..a5ae2d7f16 100644 --- a/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/rabbitmq/RabbitmqConnector.java +++ b/utils/build/docker/java/spring-boot/src/main/java/com/datadoghq/system_tests/springboot/rabbitmq/RabbitmqConnector.java @@ -140,7 +140,7 @@ public void run() { public CompletableFuture startConsumingMessagesWithQueue(String queue, String exchange, Integer timeout) throws Exception { CompletableFuture future = new CompletableFuture<>(); - + System.out.println("[rabbitmq] Start consuming messages"); Thread thread = new Thread("RabbitmqConsume") { public void run() { diff --git a/utils/build/docker/java_otel/install_opentelemetry.sh b/utils/build/docker/java_otel/install_opentelemetry.sh index 6a0621fc96..e5ea0bf682 100755 --- a/utils/build/docker/java_otel/install_opentelemetry.sh +++ b/utils/build/docker/java_otel/install_opentelemetry.sh @@ -5,7 +5,7 @@ set -eu mkdir /otel-tracer # shellcheck disable=SC2012 -if [ "$(ls /binaries/opentelemetry-javaagent*.jar | wc -l)" = 0 ]; then +if [ "$(ls /binaries/opentelemetry-javaagent*.jar | wc -l)" = 0 ]; then BUILD_URL="https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar" echo "install from Github release: $BUILD_URL" curl -Lf -o /otel-tracer/opentelemetry-javaagent.jar $BUILD_URL diff --git a/utils/build/docker/nodejs/express4-typescript/iast.ts b/utils/build/docker/nodejs/express4-typescript/iast.ts index 53fb7abfd5..2a4dd61a1e 100644 --- a/utils/build/docker/nodejs/express4-typescript/iast.ts +++ b/utils/build/docker/nodejs/express4-typescript/iast.ts @@ -221,7 +221,7 @@ function initSinkRoutes (app: Express): void { app.use('/iast/mongodb-nosql-injection/test_secure', mongoSanitize()) app.post( - '/iast/mongodb-nosql-injection/test_secure', + '/iast/mongodb-nosql-injection/test_secure', async function (req: Request, res: Response): Promise { const url: string = 'mongodb://mongodb:27017/' const client = new MongoClient(url) @@ -258,7 +258,7 @@ function initSinkRoutes (app: Express): void { .then((client: LdapClient) => client.search( 'ou=people', - filter, + filter, (err: Error | null, searchRes: SearchCallbackResponse): Response | void => { if (err) return sendError(err) @@ -311,7 +311,7 @@ function initSinkRoutes (app: Express): void { res.setHeader('testheader', 'not_tainted_string') res.send('OK') }) - + app.get('/iast/weak_randomness/test_insecure', (req: Request, res: Response): void => { const randomNumber: number = Math.random() res.send(`OK:${randomNumber}`) @@ -495,7 +495,7 @@ function initSourceRoutes (app: Express): void { eachMessage: async ({ message }: { message: any }) => { // in some occasions we consume messages from dsm tests if (!message.key) return - + const vulnKey = message.key.toString() try { readFileSync(vulnKey) diff --git a/utils/build/docker/nodejs/express4/integrations/db/resources/mysql.sql b/utils/build/docker/nodejs/express4/integrations/db/resources/mysql.sql index 32f579e6b5..605fb10ead 100644 --- a/utils/build/docker/nodejs/express4/integrations/db/resources/mysql.sql +++ b/utils/build/docker/nodejs/express4/integrations/db/resources/mysql.sql @@ -1,9 +1,9 @@ CREATE TABLE demo(id INT NOT NULL, name VARCHAR (20) NOT NULL,age INT NOT NULL,PRIMARY KEY (ID)); insert into demo (id,name,age) values(1,'testzz',16); insert into demo (id,name,age) values(2,'test2',17); -CREATE PROCEDURE test_procedure(IN test_id INT,IN other VARCHAR(20)) - BEGIN - SELECT demo.id, demo.name,demo.age - FROM demo - WHERE demo.id = test_id; - END \ No newline at end of file +CREATE PROCEDURE test_procedure(IN test_id INT,IN other VARCHAR(20)) + BEGIN + SELECT demo.id, demo.name,demo.age + FROM demo + WHERE demo.id = test_id; + END \ No newline at end of file diff --git a/utils/build/docker/nodejs/express4/integrations/db/resources/postgres.sql b/utils/build/docker/nodejs/express4/integrations/db/resources/postgres.sql index 139c15b165..0eb4c79be4 100644 --- a/utils/build/docker/nodejs/express4/integrations/db/resources/postgres.sql +++ b/utils/build/docker/nodejs/express4/integrations/db/resources/postgres.sql @@ -1,9 +1,9 @@ DROP TABLE IF EXISTS demo; -CREATE TABLE demo( - id INT NOT NULL, - name VARCHAR (20) NOT NULL, - age INT NOT NULL, +CREATE TABLE demo( + id INT NOT NULL, + name VARCHAR (20) NOT NULL, + age INT NOT NULL, PRIMARY KEY (ID) ); @@ -11,10 +11,10 @@ insert into demo (id,name,age) values(1,'test',16); insert into demo (id,name,age) values(2,'test2',17); -CREATE OR REPLACE PROCEDURE helloworld(id int, other varchar(10)) LANGUAGE plpgsql - AS - $$ - BEGIN - raise info 'Hello World'; - END; +CREATE OR REPLACE PROCEDURE helloworld(id int, other varchar(10)) LANGUAGE plpgsql + AS + $$ + BEGIN + raise info 'Hello World'; + END; $$; \ No newline at end of file diff --git a/utils/build/docker/nodejs/parametric/server.js b/utils/build/docker/nodejs/parametric/server.js index 9d2db26d68..0fbb2e9fea 100644 --- a/utils/build/docker/nodejs/parametric/server.js +++ b/utils/build/docker/nodejs/parametric/server.js @@ -76,7 +76,7 @@ app.post('/trace/span/start', (req, res) => { for (const [key, value] of http_headers) { convertedHeaders[key.toLowerCase()] = value } - + const extracted = tracer.extract('http_headers', convertedHeaders) if (extracted !== null) parent = extracted @@ -88,7 +88,7 @@ app.post('/trace/span/start', (req, res) => { service: request.service } }) - + for (const link of request.links || []) { const linkParentId = link.parent_id; if (linkParentId) { @@ -106,7 +106,7 @@ app.post('/trace/span/start', (req, res) => { } } } - + spans[span.context().toSpanId()] = span res.json({ span_id: span.context().toSpanId(), trace_id:span.context().toTraceId(), service:request.service, resource:request.resource,}); }); @@ -186,7 +186,7 @@ app.post('/trace/otel/start_span', (req, res) => { spanContext = new OtelSpanContext(extractedContext) } return {context: spanContext, attributes: link.attributes} - }); + }); const span = otelTracer.startSpan(request.name, { type: request.type, @@ -289,7 +289,7 @@ app.post('/trace/otel/set_attributes', (req, res) => { app.get('/trace/config', (req, res) => { const dummyTracer = require('dd-trace').init() const config = dummyTracer._tracer._config - res.json( { + res.json( { config: { 'dd_service': config?.service !== undefined ? `${config.service}`.toLowerCase() : 'null', 'dd_log_level': config?.logLevel !== undefined ? `${config.logLevel}`.toLowerCase() : 'null', @@ -342,7 +342,7 @@ app.post("/trace/otel/record_exception", (req, res) => { // request.end() // res.json({}); // } - + // ); const port = process.env.APM_TEST_CLIENT_SERVER_PORT; diff --git a/utils/build/docker/php/common/make_distant_call.php b/utils/build/docker/php/common/make_distant_call.php index ca61020ffc..ab3bb6dce7 100644 --- a/utils/build/docker/php/common/make_distant_call.php +++ b/utils/build/docker/php/common/make_distant_call.php @@ -1,4 +1,4 @@ - /etc/apt/sources.list.d/mssql-release.list \ && apt-get update \ - && ACCEPT_EULA=Y apt-get install -y msodbcsql18 unixodbc-dev - + && ACCEPT_EULA=Y apt-get install -y msodbcsql18 unixodbc-dev + #pip install driver pymysql and pyodbc(mssql) RUN pip install pymysql cryptography pyodbc