diff --git a/CLAUDE.md b/CLAUDE.md index cf930ce..b02fb15 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -204,7 +204,7 @@ Convenience wrapper that combines `resolve` with `kubectl apply`: Potential enhancements identified: 1. ~~Registry authentication support~~ ✓ Implemented (supports Docker credential helpers) 2. ~~YAML resolution for Kubernetes deployments~~ ✓ Implemented (`krust resolve`) -3. Multi-platform image manifests +3. ~~Multi-platform image manifests~~ ✓ Implemented (OCI image index with concurrent builds) 4. ~~Build caching~~ ✓ Implemented (persistent `target/krust/` directory) 5. Image layer optimization 6. Support for custom Dockerfile-like configs diff --git a/README.md b/README.md index 3e2b7c4..38ba37c 100644 --- a/README.md +++ b/README.md @@ -147,7 +147,7 @@ krust builds your Rust application and packages it into a container image: krust builds fully static binaries by default using: - musl libc for Linux targets - `RUSTFLAGS="-C target-feature=+crt-static"` for static linking -- Distroless static base image (`gcr.io/distroless/static:nonroot`) +- Distroless static base image (`cgr.dev/chainguard/static:latest`) This ensures your applications work across all Linux distributions without dependency issues. @@ -289,13 +289,14 @@ Arguments: [CARGO_ARGS]... Additional cargo build arguments Options: - -i, --image Target image reference (overrides KRUST_REPO) - --platform Target platform [default: linux/amd64] + --platform Target platforms (comma-separated, auto-detected from base image if not specified) --no-push Skip pushing the image to registry --tag Tag to apply to the image (e.g., latest, v1.0.0) - --repo Repository prefix (uses KRUST_REPO env var) - -v, --verbose Enable verbose logging + --repo Repository prefix (defaults to KRUST_REPO env var) -h, --help Print help + +Global Options: + -v, --verbose Enable verbose logging ``` ### Resolve Command @@ -310,10 +311,12 @@ Arguments: Options: --platform Target platforms (comma-separated) - --repo Repository prefix (uses KRUST_REPO env var) + --repo Repository prefix (defaults to KRUST_REPO env var) --tag Tag to apply to built images - -v, --verbose Enable verbose logging -h, --help Print help + +Global Options: + -v, --verbose Enable verbose logging ``` #### Usage Examples @@ -374,10 +377,12 @@ Arguments: Options: --platform Target platforms (comma-separated) - --repo Repository prefix (uses KRUST_REPO env var) + --repo Repository prefix (defaults to KRUST_REPO env var) --tag Tag to apply to built images - -v, --verbose Enable verbose logging -h, --help Print help + +Global Options: + -v, --verbose Enable verbose logging ``` #### Usage Examples @@ -399,6 +404,14 @@ The `apply` command is equivalent to: krust resolve -f deployment.yaml | kubectl apply -f - ``` +### Version Command + +``` +krust version +``` + +Prints the current krust version. + ## Troubleshooting ### "linking with `cc` failed" or linker errors @@ -488,7 +501,7 @@ make test-e2e # End-to-end tests only cargo test -- --test-threads=1 # Run with verbose output -make test-verbose +cargo test --verbose -- --test-threads=1 ``` ## License