Prerequisites
What problem are you trying to solve?
The Host your own artifact registry for binary downloads guide tells air-gapped users to mirror Elastic binaries onto their own file server. To do that, they need to know every artifact that exists for a given release.
The docs don't tell them. The existing docs list ~14 curl commands, but all are for linux-x86_64 .tar.gz only. It then says "you may replace x86_64 with arm64" and "the exact list depends on which integrations you're using." There's no way to know which components ship for Windows, macOS, .deb, or .rpm. Not every component ships for every platform, and there's no published list of which combinations exist.
Our users are having problems with this, so a support engineer (s/o @jeanfabrice) wrote a shell script to work around this problem (see: elastic/docs-content#1821).
As the list of artifacts changes by release and depending on integrations used, we can't accurately document a list in the docs.
Proposed Solution
Generate the list. https://artifacts-api.elastic.co/v1/versions/{version}/builds/latest/projects/{project} returns every package for a project, with the filename, package type, architecture, OS, and the sha512 and .asc URLs.
- A script queries the artifacts API for each supported release.
- It filters down to the components an air-gapped Elastic Agent deployment needs.
- It writes a CSV or YAML file into
docs-content, and opens a PR so a human reviews the diff.
- The air-gapped page renders it with
{csv-include}, or with a small purpose-built directive if the CSV table isn't good enough on its own.
Additional Context
Some things to look into when this gets prioritized:
- Same problem likely applies to the Elastic Endpoint Artifact Repository section, which points users at the same mirroring pattern with different artifacts.
- There's a second, partially overlapping artifact script in
air-gapped-install.md with a different component list than the one on the Fleet page.
How important is this feature to you?
Important
Prerequisites
What problem are you trying to solve?
The Host your own artifact registry for binary downloads guide tells air-gapped users to mirror Elastic binaries onto their own file server. To do that, they need to know every artifact that exists for a given release.
The docs don't tell them. The existing docs list ~14
curlcommands, but all are forlinux-x86_64.tar.gzonly. It then says "you may replace x86_64 with arm64" and "the exact list depends on which integrations you're using." There's no way to know which components ship for Windows, macOS,.deb, or.rpm. Not every component ships for every platform, and there's no published list of which combinations exist.Our users are having problems with this, so a support engineer (s/o @jeanfabrice) wrote a shell script to work around this problem (see: elastic/docs-content#1821).
As the list of artifacts changes by release and depending on integrations used, we can't accurately document a list in the docs.
Proposed Solution
Generate the list.
https://artifacts-api.elastic.co/v1/versions/{version}/builds/latest/projects/{project}returns every package for a project, with the filename, package type, architecture, OS, and the sha512 and.ascURLs.docs-content, and opens a PR so a human reviews the diff.{csv-include}, or with a small purpose-built directive if the CSV table isn't good enough on its own.Additional Context
Some things to look into when this gets prioritized:
air-gapped-install.mdwith a different component list than the one on the Fleet page.How important is this feature to you?
Important