Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Fleet] Remove deprecated APIs, parameters, and response properties from Fleet API #189746

Closed
kpollich opened this issue Aug 1, 2024 · 8 comments
Assignees
Labels
Team:Fleet Team label for Observability Data Collection Fleet team

Comments

@kpollich
Copy link
Member

kpollich commented Aug 1, 2024

These are breaking changes for 9.0

The following API operations, request parameters, and response properties are deprecated, and should be removed in 9.0

Endpoints to remove

Endpoint Deprecated version + PR Telemetry (last 4 weeks) Notes Removal PR
POST /service-tokens 8.0.0 - #121091 1 request from a cluster on 8.5.3 Deprecated in favor of POST /service_tokens (underscore) #198313
GET /agent-status 8.0.0 - #121091 18868 requests all on 7.x Deprecated in favor of GET /agent_status (underscore) #198313
PUT /agents/:agentid/reassign 8.8.0 - #152236 2 requests from 8.13.4 clusters PUT verb deprecated in favor of POST #198313
GET/POST/DELETE /epm/packages/:pkgkey 8.0.0 - #121091 N/A - wildcard query errors out in CCS Deprecated in favor of corresponding /epm/packages/:pkgname/:pkgversion endpoints (slash delimiter for name/version) #198434
GET/POST/DELETE /enrollment-api-keys/* 8.0.0 - #121091 950997 requests mainly from 8.13.x + 8.14.x clusters Deprecated in favor of /enrollment_api_keys (underscores) #198799

Query parameters to remove

Endpoint Query parameter Deprecated version + PR Notes Removal PR
GET /epm/categories ?experimental 8.6.0 - #143853 #198434
GET /epm/packages/ ?experimental 8.7.0 - #150743 #198434
GET /agent_status ?kuery 8.9.0 - #159095 Will not be removed deprecated by error
Usage across many endpoints. All should be removed. ?sort_field 8.9.0 - #159095 Supported by many endpoints today

Request/response properties to remove

Endpoint Request/Response Property Deprecated version + PR Notes Removal PR
DELETE /epm/packages/:pkgname/:pkgversion Entire request body 8.11.0 - #166623 #198434
POST /health_check host in request + response 8.15.0 - #185014 Recent deprecation #198799
GET /epm/packages/:pkgname/:pkgversion savedObject + release in response 8.9.0 - #159095 #198434
GET /agent_status total in response 8.8.0 - #151564 #198313
GET /enrollment_api_keys/ list in response 8.0.0 - #119494
POST /settings fleet_server_hosts in response 8.6.0 - #145005 #198799
POST /epm/bulk_assets Entire response body 8.9.0 - #158350
GET /epm/categories response in response 8.0.0 - #121091 #198434
GET /epm/packages response in response 8.0.0 - #121091 #198434
GET /epm/packages saved_object in response 8.9.0 - #159095 #198434
GET /agents list in response 8.0.0 - #121091 #198313
POST/PUT /packages_policies policy_id in response 8.15.0 - #184636 Recent deprecation
GET/POST/PUT /settings/outputs topics in response 8.13.0 - #177229 Recent deprecation #199226
@kpollich kpollich added the Team:Fleet Team label for Observability Data Collection Fleet team label Aug 1, 2024
@elasticmachine
Copy link
Contributor

Pinging @elastic/fleet (Team:Fleet)

@kpollich kpollich self-assigned this Aug 2, 2024
@criamico
Copy link
Contributor

criamico commented Aug 5, 2024

Not sure if it should be part of this ticket, but we also have some deprecations in fleet/server/config:

deprecations: ({ renameFromRoot, unused, unusedFromRoot }) => [

@criamico
Copy link
Contributor

criamico commented Aug 5, 2024

We also have an older ticket where we tracked some of the API deprecations: #121485

I don't see some of them (like the output_id property in package_policies) listed here so we should to take a look at it as well.

@kpollich
Copy link
Member Author

kpollich commented Aug 5, 2024

The list should be accurate now based on all deprecated notices in https://github.com/elastic/kibana/blob/main/x-pack/plugins/fleet/common/openapi/bundled.yaml

@kpollich
Copy link
Member Author

This is going to require a new API version for serverless.

@kpollich kpollich closed this as not planned Won't fix, can't repro, duplicate, stale Oct 11, 2024
@kpollich kpollich reopened this Oct 29, 2024
@kpollich
Copy link
Member Author

Reopening since the private breaking change committee issue will be closed at some point to indicate the changes are approved.

@nchaulet
Copy link
Member

@criamico I have a question regarding removing sortField it seems it's not marked as deprecated in the schema generated open API, and it's used by our UI, do we have a better option for that property? or should we skip that removal?

@nchaulet
Copy link
Member

nchaulet commented Nov 8, 2024

I think we can close this one, all API removal PRs have been merged, except for:

  • policy_id has not been removed has that change is really recent and it's still used in some of our tools (terraform plugin, observability-perf) I created follow up issues
  • sortField has not been removed has it actively used in our UI and we do not have a better solution

@nchaulet nchaulet closed this as completed Nov 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Team:Fleet Team label for Observability Data Collection Fleet team
Projects
None yet
Development

No branches or pull requests

4 participants