Skip to content

Commit fc85cfd

Browse files
committed
Merge branch 'main' into fix-dlm-security-test
2 parents 60fc5f1 + fc933d4 commit fc85cfd

File tree

761 files changed

+16384
-6916
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

761 files changed

+16384
-6916
lines changed

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,7 +467,7 @@ expensive messages that will usually be discarded:
467467

468468
Logging is an important behaviour of the system and sometimes deserves its own
469469
unit tests, especially if there is complex logic for computing what is logged
470-
and when to log it. You can use a `org.elasticsearch.test.MockLogAppender` to
470+
and when to log it. You can use a `org.elasticsearch.test.MockLog` to
471471
make assertions about the logs that are being emitted.
472472

473473
Logging is a powerful diagnostic technique, but it is not the only possibility.

benchmarks/src/main/java/org/elasticsearch/benchmark/routing/allocation/ShardsAvailabilityHealthIndicatorBenchmark.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import org.elasticsearch.cluster.metadata.IndexMetadata;
1515
import org.elasticsearch.cluster.metadata.Metadata;
1616
import org.elasticsearch.cluster.node.DiscoveryNodes;
17+
import org.elasticsearch.cluster.project.DefaultProjectResolver;
1718
import org.elasticsearch.cluster.routing.IndexRoutingTable;
1819
import org.elasticsearch.cluster.routing.IndexShardRoutingTable;
1920
import org.elasticsearch.cluster.routing.RecoverySource;
@@ -178,7 +179,12 @@ public void setUp() throws Exception {
178179
new TaskManager(Settings.EMPTY, threadPool, Collections.emptySet())
179180
);
180181
clusterService.getClusterApplierService().setInitialState(initialClusterState);
181-
indicatorService = new ShardsAvailabilityHealthIndicatorService(clusterService, allocationService, new SystemIndices(List.of()));
182+
indicatorService = new ShardsAvailabilityHealthIndicatorService(
183+
clusterService,
184+
allocationService,
185+
new SystemIndices(List.of()),
186+
DefaultProjectResolver.INSTANCE
187+
);
182188
}
183189

184190
private int toInt(String v) {

build-tools-internal/src/integTest/groovy/org/elasticsearch/gradle/fixtures/AbstractRestResourcesFuncTest.groovy

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,27 @@ package org.elasticsearch.gradle.fixtures;
1313
abstract class AbstractRestResourcesFuncTest extends AbstractGradleFuncTest {
1414

1515
def setup() {
16+
settingsFile.text = """
17+
plugins {
18+
id 'elasticsearch.java-toolchain'
19+
}
20+
21+
toolchainManagement {
22+
jvm {
23+
javaRepositories {
24+
repository('bundledOracleOpendJdk') {
25+
resolverClass = org.elasticsearch.gradle.internal.toolchain.OracleOpenJdkToolchainResolver
26+
}
27+
repository('adoptiumJdks') {
28+
resolverClass = org.elasticsearch.gradle.internal.toolchain.AdoptiumJdkToolchainResolver
29+
}
30+
repository('archivedOracleJdks') {
31+
resolverClass = org.elasticsearch.gradle.internal.toolchain.ArchivedOracleJdkToolchainResolver
32+
}
33+
}
34+
}
35+
}
36+
""" + settingsFile.text
1637
subProject(":test:framework") << "apply plugin: 'elasticsearch.java'"
1738
subProject(":test:test-clusters") << "apply plugin: 'elasticsearch.java'"
1839
subProject(":test:yaml-rest-runner") << "apply plugin: 'elasticsearch.java'"

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/DockerBase.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,11 @@ public enum DockerBase {
2222
// Chainguard based wolfi image with latest jdk
2323
// This is usually updated via renovatebot
2424
// spotless:off
25-
WOLFI("docker.elastic.co/wolfi/chainguard-base:latest@sha256:15a4191ff8ec8305dcba449365e8a1586c9cda8e016ae838d960b9009c6a5cac",
25+
WOLFI("docker.elastic.co/wolfi/chainguard-base:latest@sha256:c4e10ecf3d8a21cf4be2fb53a2f522de50e14c80ce1da487e3ffd13f4d48d24d",
2626
"-wolfi",
2727
"apk"
2828
),
29+
FIPS("docker.elastic.co/wolfi/chainguard-base-fips:sha256-ebfc3f1d7dba992231747a2e05ad1b859843e81b5e676ad342859d7cf9e425a7", "-fips", "apk"),
2930
// spotless:on
3031
// Based on WOLFI above, with more extras. We don't set a base image because
3132
// we programmatically extend from the wolfi image.

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/RestrictedBuildApiService.java

Lines changed: 0 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -29,49 +29,14 @@ private static ListMultimap<Class<?>, String> createLegacyRestTestBasePluginUsag
2929
ListMultimap<Class<?>, String> map = ArrayListMultimap.create(1, 200);
3030
map.put(LegacyRestTestBasePlugin.class, ":docs");
3131
map.put(LegacyRestTestBasePlugin.class, ":distribution:docker");
32-
map.put(LegacyRestTestBasePlugin.class, ":modules:lang-expression");
33-
map.put(LegacyRestTestBasePlugin.class, ":modules:lang-mustache");
34-
map.put(LegacyRestTestBasePlugin.class, ":modules:mapper-extras");
35-
map.put(LegacyRestTestBasePlugin.class, ":modules:parent-join");
36-
map.put(LegacyRestTestBasePlugin.class, ":modules:percolator");
37-
map.put(LegacyRestTestBasePlugin.class, ":modules:rank-eval");
3832
map.put(LegacyRestTestBasePlugin.class, ":modules:reindex");
39-
map.put(LegacyRestTestBasePlugin.class, ":modules:repository-url");
40-
map.put(LegacyRestTestBasePlugin.class, ":modules:transport-netty4");
41-
map.put(LegacyRestTestBasePlugin.class, ":plugins:analysis-icu");
42-
map.put(LegacyRestTestBasePlugin.class, ":plugins:analysis-kuromoji");
43-
map.put(LegacyRestTestBasePlugin.class, ":plugins:analysis-nori");
44-
map.put(LegacyRestTestBasePlugin.class, ":plugins:analysis-phonetic");
45-
map.put(LegacyRestTestBasePlugin.class, ":plugins:analysis-smartcn");
46-
map.put(LegacyRestTestBasePlugin.class, ":plugins:analysis-stempel");
47-
map.put(LegacyRestTestBasePlugin.class, ":plugins:analysis-ukrainian");
48-
map.put(LegacyRestTestBasePlugin.class, ":plugins:discovery-azure-classic");
49-
map.put(LegacyRestTestBasePlugin.class, ":plugins:discovery-ec2");
50-
map.put(LegacyRestTestBasePlugin.class, ":plugins:discovery-gce");
51-
map.put(LegacyRestTestBasePlugin.class, ":plugins:mapper-annotated-text");
52-
map.put(LegacyRestTestBasePlugin.class, ":plugins:store-smb");
5333
map.put(LegacyRestTestBasePlugin.class, ":qa:ccs-rolling-upgrade-remote-cluster");
5434
map.put(LegacyRestTestBasePlugin.class, ":qa:mixed-cluster");
5535
map.put(LegacyRestTestBasePlugin.class, ":qa:multi-cluster-search");
5636
map.put(LegacyRestTestBasePlugin.class, ":qa:remote-clusters");
5737
map.put(LegacyRestTestBasePlugin.class, ":qa:repository-multi-version");
5838
map.put(LegacyRestTestBasePlugin.class, ":qa:rolling-upgrade-legacy");
59-
map.put(LegacyRestTestBasePlugin.class, ":qa:smoke-test-http");
60-
map.put(LegacyRestTestBasePlugin.class, ":qa:smoke-test-ingest-disabled");
61-
map.put(LegacyRestTestBasePlugin.class, ":qa:smoke-test-ingest-with-all-dependencies");
62-
map.put(LegacyRestTestBasePlugin.class, ":qa:smoke-test-plugins");
63-
map.put(LegacyRestTestBasePlugin.class, ":qa:system-indices");
64-
map.put(LegacyRestTestBasePlugin.class, ":test:external-modules:test-apm-integration");
65-
map.put(LegacyRestTestBasePlugin.class, ":test:external-modules:test-delayed-aggs");
66-
map.put(LegacyRestTestBasePlugin.class, ":test:external-modules:test-die-with-dignity");
67-
map.put(LegacyRestTestBasePlugin.class, ":test:external-modules:test-error-query");
68-
map.put(LegacyRestTestBasePlugin.class, ":test:external-modules:test-latency-simulating-directory");
69-
map.put(LegacyRestTestBasePlugin.class, ":test:yaml-rest-runner");
70-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:core");
7139
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ent-search");
72-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:fleet");
73-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:logstash");
74-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:vector-tile");
7540
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:mixed-tier-cluster");
7641
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:repository-old-versions");
7742
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:rolling-upgrade");
@@ -85,8 +50,6 @@ private static ListMultimap<Class<?>, String> createLegacyRestTestBasePluginUsag
8550
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:smoke-test-plugins-ssl");
8651
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:smoke-test-security-with-mustache");
8752
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:xpack-prefix-rest-compat");
88-
map.put(LegacyRestTestBasePlugin.class, ":modules:ingest-geoip:qa:file-based-update");
89-
map.put(LegacyRestTestBasePlugin.class, ":plugins:discovery-gce:qa:gce");
9053
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:multi-cluster-search-security:legacy-with-basic-license");
9154
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:multi-cluster-search-security:legacy-with-full-license");
9255
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:multi-cluster-search-security:legacy-with-restricted-trust");
@@ -95,12 +58,6 @@ private static ListMultimap<Class<?>, String> createLegacyRestTestBasePluginUsag
9558
map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:third-party:slack");
9659
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:async-search:qa:rest");
9760
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:autoscaling:qa:rest");
98-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ccr:qa:downgrade-to-basic-license");
99-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ccr:qa:multi-cluster");
100-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ccr:qa:non-compliant-license");
101-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ccr:qa:rest");
102-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ccr:qa:restart");
103-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ccr:qa:security");
10461
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:deprecation:qa:early-deprecation-rest");
10562
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:deprecation:qa:rest");
10663
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:downsample:qa:with-security");
@@ -111,7 +68,6 @@ private static ListMultimap<Class<?>, String> createLegacyRestTestBasePluginUsag
11168
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:eql:qa:ccs-rolling-upgrade");
11269
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:eql:qa:correctness");
11370
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:eql:qa:mixed-node");
114-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:fleet:qa:rest");
11571
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:identity-provider:qa:idp-rest-tests");
11672
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ilm:qa:multi-cluster");
11773
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ilm:qa:multi-node");
@@ -128,8 +84,6 @@ private static ListMultimap<Class<?>, String> createLegacyRestTestBasePluginUsag
12884
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:security:qa:tls-basic");
12985
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:shutdown:qa:multi-node");
13086
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:shutdown:qa:rolling-upgrade");
131-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:slm:qa:multi-node");
132-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:slm:qa:rest");
13387
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:snapshot-based-recoveries:qa:fs");
13488
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:snapshot-based-recoveries:qa:license-enforcing");
13589
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:snapshot-repo-test-kit:qa:hdfs");
@@ -142,12 +96,10 @@ private static ListMultimap<Class<?>, String> createLegacyRestTestBasePluginUsag
14296
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:sql:qa:mixed-node");
14397
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:sql:qa:server:security:with-ssl");
14498
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:sql:qa:server:security:without-ssl");
145-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:stack:qa:rest");
14699
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:text-structure:qa:text-structure-with-security");
147100
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:transform:qa:multi-cluster-tests-with-security");
148101
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:transform:qa:multi-node-tests");
149102
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:transform:qa:single-node-tests");
150-
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:vector-tile:qa:multi-cluster");
151103
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:watcher:qa:rest");
152104
map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:watcher:qa:with-security");
153105
return map;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
/*
2+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3+
* or more contributor license agreements. Licensed under the "Elastic License
4+
* 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side
5+
* Public License v 1"; you may not use this file except in compliance with, at
6+
* your election, the "Elastic License 2.0", the "GNU Affero General Public
7+
* License v3.0 only", or the "Server Side Public License, v 1".
8+
*/
9+
10+
package org.elasticsearch.gradle.internal.distribution;
11+
12+
import org.elasticsearch.gradle.ElasticsearchDistributionType;
13+
14+
public class DockerFipsElasticsearchDistributionType implements ElasticsearchDistributionType {
15+
16+
DockerFipsElasticsearchDistributionType() {}
17+
18+
@Override
19+
public String getName() {
20+
return "dockerFips";
21+
}
22+
23+
@Override
24+
public boolean isDocker() {
25+
return true;
26+
}
27+
}

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/distribution/InternalElasticsearchDistributionTypes.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import java.util.List;
1515

1616
public class InternalElasticsearchDistributionTypes {
17+
1718
public static final ElasticsearchDistributionType DEB = new DebElasticsearchDistributionType();
1819
public static final ElasticsearchDistributionType RPM = new RpmElasticsearchDistributionType();
1920
public static final ElasticsearchDistributionType DOCKER = new DockerElasticsearchDistributionType();
@@ -26,7 +27,7 @@ public class InternalElasticsearchDistributionTypes {
2627
RPM,
2728
DOCKER,
2829
DOCKER_IRONBANK,
29-
DOCKER_CLOUD_ESS,
30-
DOCKER_WOLFI
30+
DOCKER_WOLFI,
31+
DOCKER_CLOUD_ESS
3132
);
3233
}

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/MutedTestPlugin.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import org.gradle.api.provider.Provider;
1717
import org.gradle.api.tasks.testing.Test;
1818

19+
import java.io.File;
1920
import java.util.Arrays;
2021
import java.util.List;
2122

@@ -26,21 +27,22 @@ public class MutedTestPlugin implements Plugin<Project> {
2627

2728
@Override
2829
public void apply(Project project) {
30+
project.getRootProject().getPlugins().apply(GlobalBuildInfoPlugin.class);
31+
var buildParams = loadBuildParams(project).get();
32+
33+
File settingsRoot = project.getLayout().getSettingsDirectory().getAsFile();
2934
String additionalFilePaths = project.hasProperty(ADDITIONAL_FILES_PROPERTY)
3035
? project.property(ADDITIONAL_FILES_PROPERTY).toString()
3136
: "";
3237
List<RegularFile> additionalFiles = Arrays.stream(additionalFilePaths.split(","))
3338
.filter(p -> p.isEmpty() == false)
34-
.map(p -> project.getRootProject().getLayout().getProjectDirectory().file(p))
39+
.map(p -> project.getLayout().getSettingsDirectory().file(p))
3540
.toList();
3641

37-
project.getRootProject().getPlugins().apply(GlobalBuildInfoPlugin.class);
38-
var buildParams = loadBuildParams(project).get();
39-
4042
Provider<MutedTestsBuildService> mutedTestsProvider = project.getGradle()
4143
.getSharedServices()
4244
.registerIfAbsent("mutedTests", MutedTestsBuildService.class, spec -> {
43-
spec.getParameters().getInfoPath().set(project.getRootProject().getProjectDir());
45+
spec.getParameters().getInfoPath().set(settingsRoot);
4446
spec.getParameters().getAdditionalFiles().set(additionalFiles);
4547
});
4648

build-tools/src/main/java/org/elasticsearch/gradle/plugin/BasePluginBuildPlugin.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ public class BasePluginBuildPlugin implements Plugin<Project> {
5656
public static final String BUNDLE_PLUGIN_TASK_NAME = "bundlePlugin";
5757
public static final String EXPLODED_BUNDLE_PLUGIN_TASK_NAME = "explodedBundlePlugin";
5858
public static final String EXPLODED_BUNDLE_CONFIG = "explodedBundleZip";
59+
public static final Attribute<Boolean> EXPLODED_PLUGIN_BUNDLE_ATTRIBUTE = Attribute.of("exploded-plugin-bundle", Boolean.class);
5960

6061
protected final ProviderFactory providerFactory;
6162

@@ -170,6 +171,7 @@ private TaskProvider<Zip> createBundleTasks(final Project project, PluginPropert
170171
explodedBundleZip.setCanBeResolved(false);
171172
explodedBundleZip.setCanBeConsumed(true);
172173
explodedBundleZip.getAttributes().attribute(ArtifactTypeDefinition.ARTIFACT_TYPE_ATTRIBUTE, ArtifactTypeDefinition.DIRECTORY_TYPE);
174+
explodedBundleZip.getAttributes().attribute(EXPLODED_PLUGIN_BUNDLE_ATTRIBUTE, true);
173175
project.getArtifacts().add(EXPLODED_BUNDLE_CONFIG, explodedBundle);
174176
return bundle;
175177
}

0 commit comments

Comments
 (0)