Add initial distributor CLI skeleton

This commit is contained in:
2026-05-31 01:47:39 +00:00
parent 0818733b19
commit 22d0424232
19 changed files with 436 additions and 2 deletions

36
internal/cli/validate.go Normal file
View File

@@ -0,0 +1,36 @@
package cli
import (
"context"
"fmt"
"io"
"gitea.maximumdirect.net/eric/distributor/internal/app"
)
func validateCommand(ctx context.Context, args []string, stdout, stderr io.Writer) int {
if hasHelp(args) {
printValidateHelp(stdout)
return exitOK
}
if len(args) > 1 {
fmt.Fprintf(stderr, "%s: validate accepts at most one path\n", app.Name)
return exitUsage
}
var path string
if len(args) == 1 {
path = args[0]
}
if err := app.Validate(ctx, app.ValidateOptions{Path: path}); err != nil {
return fail(stderr, err)
}
return exitOK
}
func printValidateHelp(w io.Writer) {
fmt.Fprint(w, `Usage:
distributor validate <path>
The validate command is present but bundle validation is not implemented yet.
`)
}