Skip to content

Return the latest known deprecations in the registry response of all versions for each package #1493

@criamico

Description

@criamico

Based on the deprecation lifecycle discussed in this RFC.

When a package becomes deprecated, it will still remain searchable to prevent a breaking change.

Return the latest known deprecations in the registry response of all versions for each package, if any. This would allow to see the warning even in cases where the package has been deprecated only for some kibana.version.

Example:

$ curl "https://epr.elastic.co/search?package=apache&all=true"
[
  {
    "name": "apache",
    "title": "Apache HTTP Server",
    "version": "3.0.1",
    "deprecated": {
      "description": "Package not maintained anymore",
      "since": "2.1.1",
    },
    "release": "ga",
    "source": {
      "license": "Elastic-2.0"
    },
    "description": "Collect logs and metrics from Apache servers with Elastic Agent.",
    "type": "integration",
    "download": "/epr/apache/apache-3.0.1.zip",
    "path": "/package/apache/3.0.1",
    "icons": [
      ...
    ],
    "policy_templates": [
      {
        "name": "apache",
        "title": "Apache logs and metrics",
        "description": "Collect logs and metrics from Apache instances"
      }
    ],
    "conditions": {
      "kibana": {
        "version": "^8.13.0 || ^9.0.0"
      },
      "elastic": {
        "subscription": "basic"
      }
    },
    "owner": {
      "type": "elastic",
      "github": "elastic/obs-infraobs-integrations"
    },
    "categories": [
      "web",
      "observability"
    ],
    "signature_path": "/epr/apache/apache-3.0.1.zip.sig",
    "data_streams": [
      ...
    ]
  },
  ...
    {
    "name": "apache",
    "title": "Apache HTTP Server",
    "version": "2.0.0",
    "deprecated": {
      "description": "Package not maintained anymore",
      "since": "2.1.1",
    },
    "release": "ga",
    "source": {
      "license": "Elastic-2.0"
    },
    "description": "Collect logs and metrics from Apache servers with Elastic Agent.",
    "type": "integration",
    "download": "/epr/apache/apache-2.0.0.zip",
    "path": "/package/apache/2.0.0",
    "icons": [
      ...
    ],
    "policy_templates": [
      ...
    ],
    "conditions": {
      "kibana": {
        "version": "^8.13.0 || ^9.0.0"
      },
      "elastic": {
        "subscription": "basic"
      }
    },
    "owner": {
      "type": "elastic",
      "github": "elastic/obs-infraobs-integrations"
    },
    "categories": [
      "web",
      "observability"
    ],
    "signature_path": "/epr/apache/apache-2.0.0.zip.sig",
    "data_streams": [
      ...
    ]
  }
  ...
]

Metadata

Metadata

Assignees

No one assigned

    Labels

    Team:EcosystemLabel for the Packages Ecosystem teamTeam:FleetLabel for the Fleet team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions