Context
initSource(...) in cmd/cloudstic/cmd_backup.go currently takes a long sequence of positional arguments spanning local-source metadata options, cloud auth/token paths, source-specific flags, global flags, and exclude patterns.
That signature is difficult to read and easy to misuse when adding or updating call sites.
Goal
Replace the long positional argument list with a structured options input so source initialization stays readable and maintainable.
Scope
- introduce a dedicated options struct for
initSource
- update backup/auth call sites to construct the options explicitly
- update tests that exercise source initialization
Acceptance Criteria
initSource no longer uses the long positional-argument signature
- call sites are clearer about which options they set
go test ./cmd/cloudstic ./internal/engine ./pkg/source ./pkg/store passes
golangci-lint run ./cmd/cloudstic/... ./internal/engine/... ./pkg/source/... ./pkg/store/... passes
Context
initSource(...)incmd/cloudstic/cmd_backup.gocurrently takes a long sequence of positional arguments spanning local-source metadata options, cloud auth/token paths, source-specific flags, global flags, and exclude patterns.That signature is difficult to read and easy to misuse when adding or updating call sites.
Goal
Replace the long positional argument list with a structured options input so source initialization stays readable and maintainable.
Scope
initSourceAcceptance Criteria
initSourceno longer uses the long positional-argument signaturego test ./cmd/cloudstic ./internal/engine ./pkg/source ./pkg/storepassesgolangci-lint run ./cmd/cloudstic/... ./internal/engine/... ./pkg/source/... ./pkg/store/...passes