This project offers an implementation of an alternate registry and/or crates.io mirror.
Configuration is done via a JSON config file.
json
"service": {
"port": 8080
}
json
"storage": {
"type": "FileSystem",
"path": "<path>"
}
Files that are mirrored will automatically put in a subfolder called mirror
.
json
"mirror": {
"remote_url": "<url>",
"clone_path": "<path>",
"public_key": "<path to public used for auth>",
"username": "optional username for commits (defaults to cargolifter)",
"email": "optional email for commits (defaults to git@cargolifter.com)"
}
The mirror git repository must contain a prefilled config.json
containing:
json
{
"dl": "http://<hostname>:<port>/api/v1/mirror",
"api": "http://<hostname>:<port>/mirror"
}
json
"registry": {
"remote_url": "<url>",
"clone_path": "<path>",
"public_key": "<path to public used for auth>",
"username": "optional username for commits (defaults to cargolifter)",
"email": "optional email for commits (defaults to git@cargolifter.com)"
}
The registry git repository must contain a prefilled config.json
containing:
json
{
"dl": "http://<hostname>:<port>/api/v1/crates",
"api": "http://<hostname>:<port>"
}