init: registry server + operator from VM
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
# Registry Server Build
|
||||
|
||||
This folder holds the standalone registry server build and helper scripts.
|
||||
|
||||
## Provider build and upload
|
||||
|
||||
Script: `build-provider.sh`
|
||||
|
||||
What it does:
|
||||
- Builds the provider from `universal_rebuild` for 3 platforms: linux_amd64, windows_amd64, darwin_amd64
|
||||
- Creates ZIPs and SHA256SUMS
|
||||
- Signs SHA256SUMS with a local GPG key file
|
||||
- Uploads artifacts to S3 for the registry server to serve
|
||||
|
||||
### Requirements
|
||||
- Go 1.22+
|
||||
- `python3` (for zipfile)
|
||||
- `gpg`
|
||||
- `mc` (MinIO/S3 client)
|
||||
|
||||
### GPG key file
|
||||
Store the private key at:
|
||||
- `secrets/private_key.asc` (ignored by git)
|
||||
|
||||
The public key is at:
|
||||
- `secrets/public_key.asc`
|
||||
|
||||
The registry server embeds the public key it returns to Terraform. After regenerating keys:
|
||||
- Update the embedded ASCII Armor in `registry-server-build/main.go` and `operator/cmd/registry/main.go`.
|
||||
- Rebuild and redeploy the registry server.
|
||||
- Re-upload provider artifacts signed with the new private key.
|
||||
|
||||
### Environment
|
||||
Set these variables before running:
|
||||
- `S3_ENDPOINT` (example: `s3.msk-1.ngcloud.ru`)
|
||||
- `S3_ACCESS_KEY`
|
||||
- `S3_SECRET_KEY`
|
||||
|
||||
Optional overrides:
|
||||
- `REGISTRY_HOSTNAME` (default: `terra.k8c.ru`)
|
||||
- `NAMESPACE` (default: `nubes`)
|
||||
- `NAME` (default: `nubes`)
|
||||
- `S3_BUCKET` (default: `terraform-registry`)
|
||||
|
||||
### Usage
|
||||
|
||||
```bash
|
||||
export S3_ENDPOINT="s3.msk-1.ngcloud.ru"
|
||||
export S3_ACCESS_KEY="..."
|
||||
export S3_SECRET_KEY="..."
|
||||
|
||||
./registry-server-build/build-provider.sh 2.0.2
|
||||
```
|
||||
|
||||
Artifacts are uploaded to:
|
||||
`registry/<bucket>/<hostname>/<namespace>/<name>/<version>/`
|
||||
Reference in New Issue
Block a user