conjure repo index
Generate repository index files for remote template and bundle repositories.
The conjure repo index command scans your templates and bundles directories, validates their structure, computes file hashes, and generates index files that can be used to host a remote repository.
conjure repo index --templates <dir> --bundles <dir> --out <dir>
This command is used to create remote repository index files. Remote repositories allow teams to:
- Host templates and bundles on a web server
- Share templates across multiple projects
- Version templates independently
- Enable automatic updates
At least one of --templates or --bundles must be specified.
Output directory where the index.json file will be written.
conjure repo index --templates ./templates --out ./public
Default: . (current directory)
Path to the templates directory to index.
conjure repo index --templates ./templates --out ./public
Expected structure:
templates/
└── <template-name>/
└── <version>/
├── conjure.json
└── template.tmpl
Path to the bundles directory to index.
conjure repo index --bundles ./bundles --out ./public
Expected structure:
bundles/
└── <bundle-name>/
└── <version>/
├── conjure.json
└── *.tmpl files
conjure repo index \
--templates ./templates \
--out ./public
Output:
Indexing repository...
Validating templates directory: ./templates
Index Summary:
Templates:
✓ deployment (2 versions: 1.0.0, 2.0.0)
✓ service (1 version: 1.0.0)
Index file created:
/path/to/public/index.json
Size: 2048 bytes
Resources: 2 (2 templates, 0 bundles)
Versions: 3
✓ Repository index created successfully
conjure repo index \
--bundles ./bundles \
--out ./public
conjure repo index \
--templates ./templates \
--bundles ./bundles \
--out ./public
Output:
Indexing repository...
Validating templates directory: ./templates
Validating bundles directory: ./bundles
Index Summary:
Templates:
✓ deployment (2 versions: 1.0.0, 2.0.0)
✓ service (1 version: 1.0.0)
Bundles:
✓ web-app (2 versions: 1.0.0, 2.0.0)
✓ database (1 version: 1.0.0)
Index file created:
/path/to/public/index.json
Size: 4096 bytes
Resources: 4 (2 templates, 2 bundles)
Versions: 6
✓ Repository index created successfully
conjure repo index \
--templates ./my-templates \
--bundles ./my-bundles \
--out ./dist/repo
The command creates an index.json file with metadata about all templates and bundles:
{
"schema_version": "v1",
"last_updated": "2026-01-17T10:30:00Z",
"templates": [
{
"name": "deployment",
"type": "yaml",
"template_description": "Kubernetes Deployment manifest",
"versions": [
{
"version": "1.0.0",
"files": [
{
"name": "conjure.json",
"path": "deployment/1.0.0/conjure.json",
"size": 512,
"sha256": "abc123..."
},
{
"name": "template.tmpl",
"path": "deployment/1.0.0/template.tmpl",
"size": 1024,
"sha256": "def456..."
}
]
}
]
}
],
"bundles": [
{
"name": "web-app",
"type": "kubernetes",
"description": "Complete web application deployment",
"versions": [
{
"version": "1.0.0",
"files": [
{
"name": "conjure.json",
"path": "web-app/1.0.0/conjure.json",
"size": 1024,
"sha256": "ghi789..."
},
{
"name": "deployment.yaml.tmpl",
"path": "web-app/1.0.0/deployment.yaml.tmpl",
"size": 512,
"sha256": "jkl012..."
}
]
}
]
}
]
}