A tiny, nimble Helm charts repository with support for multiple stores
To install Dogvane, run
npm install dogvane -g
dogvane
Dogvane will automatically start and listen to incoming HTTP requests on http://localhost:8080
To get fetch index.yaml
of the default
namespace:
curl http://localhost:8080/default/index.yaml
Post a .tgz
file to http://localhost:8080/[namespace]
Use the proper URL
off index.yaml
Configuration can be established in two ways:
- Modifying
config.js
- Passing variable strings prefixed with
DOGVANE.
Here's a general sample of config.js
const path = require('path');
module.exports = {
"store": {
"provider": {
"type": "filesystem",
"rootPath": path.join(__dirname, '.data')
}
},
"web": {
"port": 8080,
"host": "http://localhost:8080"
}
};
You can customize the HTTP server used to host the Helm chart protocol by modifying the web
section in config.js:
- port - The local port to listen on
- host - The base host on which the server is hosted. It will be used to create the links in the manifest (
index.yaml
) file.
Dogvane supports multiple storage providers
To configure S3, add the following block config.js
:
"store": {
"provider": {
"type": "s3",
"accessKeyId" : "...[AWS Access Key]...",
"secretAccessKey": "...[AWS Secret Access Key]..."
}
}
To host the repo files on your local filesystem, add the following block to config.js
:
"store": {
"provider": {
"type": "filesystem",
"rootPath": "...[Filesystem Path]..."
}
}