Minor docs and test cleanup related to the SSH configuration
All checks were successful
ci/woodpecker/tag/release Pipeline was successful

This commit is contained in:
2026-06-01 09:51:14 -05:00
parent 7eed1a26ae
commit 529172c754
5 changed files with 8 additions and 13 deletions

View File

@@ -1,4 +1,4 @@
# Distributor Configuration # Configuration Reference
## Config File Location ## Config File Location

View File

@@ -150,7 +150,7 @@ Safe fix: remove one source of the credential or make the deployment intentional
## `host is required for ssh backend` ## `host is required for ssh backend`
Likely cause: SSH config is missing the structured `host` field, or an old URI-based SSH config is still in use. Likely cause: SSH config is missing the structured `host` field, or an old URL-style SSH config is still in use.
Diagnostic: Diagnostic:
@@ -158,7 +158,7 @@ Diagnostic:
go run ./cmd/distributor run --config <config-path> --dry-run go run ./cmd/distributor run --config <config-path> --dry-run
``` ```
Safe fix: configure SSH with `host`, optional `user` and `port`, and `path`. The `uri` field is not used for SSH execution. Safe fix: configure SSH with `host`, optional `user` and `port`, and `path`. SSH URLs are not part of the active config schema.
## `no SSH auth methods configured` ## `no SSH auth methods configured`

View File

@@ -23,7 +23,6 @@ type Destination struct {
User string `yaml:"user"` User string `yaml:"user"`
Port int `yaml:"port"` Port int `yaml:"port"`
Path string `yaml:"path"` Path string `yaml:"path"`
URI string `yaml:"uri"`
Endpoint string `yaml:"endpoint"` Endpoint string `yaml:"endpoint"`
Bucket string `yaml:"bucket"` Bucket string `yaml:"bucket"`
Prefix string `yaml:"prefix"` Prefix string `yaml:"prefix"`
@@ -42,7 +41,6 @@ type Backend struct {
User string `yaml:"user"` User string `yaml:"user"`
Port int `yaml:"port"` Port int `yaml:"port"`
Path string `yaml:"path"` Path string `yaml:"path"`
URI string `yaml:"uri"`
Endpoint string `yaml:"endpoint"` Endpoint string `yaml:"endpoint"`
Bucket string `yaml:"bucket"` Bucket string `yaml:"bucket"`
Prefix string `yaml:"prefix"` Prefix string `yaml:"prefix"`

View File

@@ -349,7 +349,7 @@ pipelines:
} }
} }
func TestLoadFileRejectsSSHURIExecutionConfig(t *testing.T) { func TestLoadFileRejectsLegacySSHURIFieldAsUnknown(t *testing.T) {
assertLoadError(t, ` assertLoadError(t, `
pipelines: pipelines:
- id: reports - id: reports
@@ -361,7 +361,7 @@ pipelines:
- id: archive - id: archive
backend: local backend: local
path: /archive path: /archive
`, "uri is not supported for ssh backend") `, "field uri not found")
} }
func TestLoadFileRejectsUnsupportedBackend(t *testing.T) { func TestLoadFileRejectsUnsupportedBackend(t *testing.T) {

View File

@@ -69,14 +69,14 @@ func Validate(cfg Config) error {
} }
func validateSourceBackend(errs ValidationErrors, context string, backend Backend) ValidationErrors { func validateSourceBackend(errs ValidationErrors, context string, backend Backend) ValidationErrors {
return validateBackend(errs, context, backend.Backend, backend.Host, backend.Port, backend.Path, backend.URI, backend.Endpoint, backend.Bucket, backend.Prefix, backend.SSH.HostKeyPolicy, backend.Creds) return validateBackend(errs, context, backend.Backend, backend.Host, backend.Port, backend.Path, backend.Endpoint, backend.Bucket, backend.Prefix, backend.SSH.HostKeyPolicy, backend.Creds)
} }
func validateDestinationBackend(errs ValidationErrors, context string, destination Destination) ValidationErrors { func validateDestinationBackend(errs ValidationErrors, context string, destination Destination) ValidationErrors {
return validateBackend(errs, context, destination.Backend, destination.Host, destination.Port, destination.Path, destination.URI, destination.Endpoint, destination.Bucket, destination.Prefix, destination.SSH.HostKeyPolicy, destination.Creds) return validateBackend(errs, context, destination.Backend, destination.Host, destination.Port, destination.Path, destination.Endpoint, destination.Bucket, destination.Prefix, destination.SSH.HostKeyPolicy, destination.Creds)
} }
func validateBackend(errs ValidationErrors, context, backend, host string, port int, path, uri, endpoint, bucket, prefix string, hostKeyPolicy HostKeyPolicy, creds Credentials) ValidationErrors { func validateBackend(errs ValidationErrors, context, backend, host string, port int, path, endpoint, bucket, prefix string, hostKeyPolicy HostKeyPolicy, creds Credentials) ValidationErrors {
switch backend { switch backend {
case "": case "":
errs = append(errs, context+".backend is required") errs = append(errs, context+".backend is required")
@@ -91,9 +91,6 @@ func validateBackend(errs ValidationErrors, context, backend, host string, port
if path == "" { if path == "" {
errs = append(errs, context+".path is required for ssh backend") errs = append(errs, context+".path is required for ssh backend")
} }
if uri != "" {
errs = append(errs, context+".uri is not supported for ssh backend; use host, user, port, and path")
}
if port < 0 || port > 65535 { if port < 0 || port > 65535 {
errs = append(errs, context+".port must be between 1 and 65535") errs = append(errs, context+".port must be between 1 and 65535")
} }