51 lines
1.3 KiB
Go
51 lines
1.3 KiB
Go
package config
|
|
|
|
const DefaultConfigPath = "/usr/local/etc/distributor/config.yml"
|
|
|
|
const (
|
|
BackendLocal = "local"
|
|
BackendSSH = "ssh"
|
|
BackendS3 = "s3"
|
|
)
|
|
|
|
const (
|
|
ValidationActionFail = "fail"
|
|
)
|
|
|
|
const (
|
|
TransferActionSkip = "skip"
|
|
TransferActionReplace = "replace"
|
|
TransferActionFail = "fail"
|
|
)
|
|
|
|
const (
|
|
TransformModeSidecar = "sidecar"
|
|
)
|
|
|
|
func ApplyDefaults(cfg *Config) {
|
|
for pipelineIndex := range cfg.Pipelines {
|
|
pipeline := &cfg.Pipelines[pipelineIndex]
|
|
if pipeline.Validation.OnDigestMismatch == "" {
|
|
pipeline.Validation.OnDigestMismatch = ValidationActionFail
|
|
}
|
|
for destinationIndex := range pipeline.Destinations {
|
|
destination := &pipeline.Destinations[destinationIndex]
|
|
if destination.Publish == nil {
|
|
destination.Publish = &PublishPolicy{Source: true}
|
|
}
|
|
if destination.Transfer.OnDestinationSame == "" {
|
|
destination.Transfer.OnDestinationSame = TransferActionSkip
|
|
}
|
|
if destination.Transfer.OnDestinationOlder == "" {
|
|
destination.Transfer.OnDestinationOlder = TransferActionReplace
|
|
}
|
|
if destination.Transfer.OnDestinationNewer == "" {
|
|
destination.Transfer.OnDestinationNewer = TransferActionSkip
|
|
}
|
|
if destination.Transfer.OnConflict == "" {
|
|
destination.Transfer.OnConflict = TransferActionFail
|
|
}
|
|
}
|
|
}
|
|
}
|