Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Initialize a Registry

A registry starts with one index.json file and one artifact location. The index location is the URL consumers configure; the index file itself stores only artifacts_url, the base URL for plugin archives.

Choose the artifact base URL:

LocationExample ARTIFACTS_URL
Local filesystemfile:///var/lib/influxdb3/plugins
GitHub Releaseshttps://github.com/ORG/REPO/releases/download/plugin-registry
S3 HTTPS endpointhttps://BUCKET.s3.REGION.amazonaws.com/plugins
HTTPS serverhttps://plugins.example.com/artifacts
ARTIFACTS_URL="https://plugins.example.com/artifacts"

Generate the empty index:

influxdb3-plugin new index --artifacts-url "${ARTIFACTS_URL}" registry-seed

This writes registry-seed/index.json:

{
  "index_schema_version": "2.1",
  "artifacts_url": "https://plugins.example.com/artifacts",
  "plugins": []
}

Upload registry-seed/index.json to the registry’s index location. Before publishing plugin versions, make sure your release process can:

  • replace index.json at the index location
  • upload archives to ${ARTIFACTS_URL}/{name}-{version}.tar.gz
  • avoid rewriting an archive after its (name, version) is published

Use https:// for shared registries. Use an object store’s HTTPS endpoint, not a native URI such as s3://. Use http:// only on trusted internal networks or for local testing. Use file:// only for local, offline, or appliance-style registries.

Next, publish plugin versions with influxdb3-plugin package. For the registry model and index schema, see The Registry and The Registry Index Format.


Back: Install the CLI | Next: Publish a New Plugin Version