Commit Graph

30 Commits

Author SHA1 Message Date
Tim Vernum 53be424c39 Update exclusion list for core yaml tests (MP-1835) 2024-11-29 04:08:16 +00:00
Yang Wang f3ed2b2f2f Make put-alias project aware (MP-1805)
This PR makes put-alias project aware so that the aliases API works in a
multi-project setup. This is achieved by adding a new project-id field
to IndicesAliasesClusterStateUpdateRequest.

The alias actions are also used by MetadataRolloverService. These usages
are NOT updated in this PR and still assumes default project. They will
be handled separately.
2024-11-27 16:53:22 +00:00
Tim Vernum 5e6864b9cf Make explain project aware (MP-1812)
This commit updates `TransportExplainAction` to be project aware and
enables the YAML tests
2024-11-27 15:46:23 +11:00
Tim Vernum a9d4d8a254 Make validate_query project aware (MP-1813)
This updates `TransportValidateQueryAction` to be project aware and
enables the YAML tests
2024-11-27 13:37:34 +11:00
Yang Wang 4a120ccb96 [Test] More precise matching for muted YAML tests (MP-1807)
The PR makes all patterns for muted YAML tests to start matching from
the beginning to avoid accidentally muting unrelated tests.
2024-11-25 07:07:36 +00:00
Yang Wang 7fbb2526a5 Make reroute command work with projects (MP-1733)
This PR proposes changes to make a YAML test pass for cluster reroute 
commands, specifically the cancel allocation command. The allocation 
command is initiated by user but batch executed in the cluster state 
update thread where it loses the thread context. It also no longer has 
access to the original request object at that time. This PR changes 
the parsing process to take the project id and inject it into the command 
objects itself.

The retry_failed parameter can be used without any specific allocation 
command. For the time being, the PR keeps it working at cluster level 
but adds constraint that it can only be used if there is no allocation 
command.
2024-11-25 03:20:08 +00:00
Yang Wang 1b0abf9d11 New setting for enabling multi-project (MP-1800)
This PR introduces a new setting to enable the multi-project feature.
Default to false.
2024-11-23 07:33:41 +11:00
Tim Vernum d2c30fc956 Make index deletion project aware (MP-1799)
This commit modifies `MetadataDeleteIndexService` to be able to delete
indices across multiple projects
2024-11-22 20:01:54 +11:00
Tim Vernum bff108d15e Make "_update" project aware (MP-1790)
This commit modifies `TransportUpdateAction` to be project aware
2024-11-22 03:29:52 +00:00
Tim Vernum fc5b3aa309 Enable additional working YAML tests (MP-1795) 2024-11-22 03:23:36 +00:00
Tim Vernum d81ff4b192 Enable indices.put_mapping yaml tests (MP-1794) 2024-11-22 10:45:25 +11:00
Tim Vernum 6931da5eb9 Enable indices.create yaml tests (MP-1793)
These tests now work due to other fixes, but were still muted.
2024-11-22 10:45:16 +11:00
Niels Bauman d56d860431 Make ingest pipelines project aware (MP-1788)
This makes the ingest CRUD APIs and the majority of the `IngestService`
project aware.
This does not include the parts of the `IngestService` that are related
to executing the pipelines in bulk requests.
2024-11-20 09:48:20 +01:00
Niels Bauman 0331a84c6a Make template retrieval APIs project-aware (MP-1767)
Make the retrieval APIs for component and index templates work with
multiple projects (properly).
2024-11-19 12:03:25 +01:00
Yang Wang 0ad7bd7da0 Make get-alias project aware (MP-1785)
This PR makes get-alias API project aware and also unmuted relevant YAML
tests.
2024-11-19 10:56:08 +01:00
Niels Bauman 0620f1ba10 Make legacy templates project-aware (MP-1787)
Updates the GET, DELETE, and PUT APIs for managing legacy templates in
multiple projects.
2024-11-19 09:23:52 +01:00
Niels Bauman 0edb9fa778 Merge remote-tracking branch 'public/main' into merge-main
# Conflicts:
#	server/src/main/java/org/elasticsearch/action/search/TransportSearchShardsAction.java
#	server/src/main/java/org/elasticsearch/cluster/routing/allocation/AllocationStatsService.java
#	server/src/main/java/org/elasticsearch/gateway/GatewayMetaState.java
#	server/src/main/java/org/elasticsearch/plugins/Plugin.java
#	server/src/test/java/org/elasticsearch/gateway/GatewayMetaStateTests.java
#	server/src/test/java/org/elasticsearch/ingest/IngestMetadataTests.java
2024-11-18 10:53:12 +01:00
Tim Vernum c6da68ee77 Make TransportSearchAction project aware (MP-1775)
This commit updates `TransportSearchAction` to replace all applicable
cluster references with project references.
2024-11-18 15:42:13 +11:00
Yang Wang 01dca5501c Make get-index-settings work with multi-project (MP-1779)
This PR makes the transport action works with multi-project and unmute
relevant YAML tests.
2024-11-12 08:59:39 +01:00
Yang Wang f55fa9bd80 Make indices.flush YAML test work (MP-1781)
This PR makes TransportIndicesStatsAction project aware which allows
unmute for the indices.flush YAML tests.
2024-11-12 07:53:14 +01:00
Yang Wang c279754a2c Selective mute for get-mappings yaml tests (MP-1780)
This PR selectively mute the ones rely on index-close and aliases and
unmute others.
2024-11-12 07:46:50 +01:00
Tim Vernum b901c1f2d1 Make refresh work with multiple projects (MP-1776)
Changes `TransportShardRefreshAction` to lookup the project by Index
UUID rather than using the default project
2024-11-12 10:21:37 +11:00
Yang Wang 262550ef3a Make auto-create-index project aware (MP-1777)
As title says, this PR makes the auto-create-index action project aware
and unmute YAML tests that can now pass. Note this works for regular
indices. More work is still required for data-streams.
2024-11-12 09:40:53 +11:00
Niels Bauman 59f810f290 Allow putting and deleting component templates into multiple projects (MP-1757)
Updates both the PUT and DELETE _component_template APIs to be
project-aware.
2024-11-07 12:55:47 -03:00
Niels Bauman 11d30e7f89 Allow deleting index templates in multiple projects (MP-1756)
Updates the DELETE _index_template API to be project-aware.
2024-11-06 13:35:21 -03:00
Niels Bauman f9c206c1be Allow putting index templates into multiple projects (MP-1754)
Allows the PUT _index_template API to support multiple projects.
2024-11-06 11:03:22 -03:00
Tim Vernum a89cb7b161 Use routing table to check project setup in tests (MP-1740)
In the multi-project yaml rest tests, switch to using the routing table
(from cluster state, see MP-1695) to determine that the projects have been
correctly created and configured in the test client.
2024-10-29 15:29:46 +11:00
Tim Vernum 8c390d4eae Common base class for multi-project YAML tests (MP-1736)
Extract a common base class for running YAML rest tests against core and
x-pack
2024-10-29 12:40:46 +11:00
Tim Vernum 58bae4334f Enable more yaml tests on multi project (MP-1722)
This commit enables some more yaml rest tests that are already working
on multi-project
2024-10-24 21:47:07 +11:00
Tim Vernum 06f0c51ec2 Run a subset of core YAML Rest tests on Multi Project (MP-1717)
This introduces a new QA project that runs the core YAML rest tests
against a cluster with multiple projects.

At this point in time:
- Only 1 project is actively tested at a time
- That project is not the "default" project
- There are other projects in the cluster
- Those projects are empty
- There is a long exclude list of YAML tests
- There are a handful of tests that are executed successfully
2024-10-23 20:15:41 +11:00