func()

in internal/onetime/configurebackint/configurebackint_linux.go [209:260]


func (c *ConfigureBackint) updateConfig(ctx context.Context, config *bpb.BackintConfiguration, f *flag.FlagSet) *bpb.BackintConfiguration {
	// Visit() visits only those flags that have been set. This ensures empty
	// strings and other zero values will only be updated if explicitly set.
	f.Visit(func(f *flag.Flag) {
		log.CtxLogger(ctx).Infow("Updating configuration", "flagName", f.Name, "flagValue", f.Value.String())
		switch f.Name {
		case "bucket":
			config.Bucket = c.bucket
		case "recovery_bucket":
			config.RecoveryBucket = c.recoveryBucket
		case "log_to_cloud":
			config.LogToCloud = &wpb.BoolValue{Value: c.logToCloud}
		case "log_level":
			config.LogLevel = bpb.LogLevel(bpb.LogLevel_value[strings.ToUpper(c.logLevel)])
		case "compress":
			config.Compress = c.compress
		case "encryption_key":
			config.EncryptionKey = c.encryptionKey
		case "kms_key":
			config.KmsKey = c.kmsKey
		case "retries":
			config.Retries = c.retries
		case "parallel_streams":
			config.ParallelStreams = c.parallelStreams
		case "rate_limit_mb":
			config.RateLimitMb = c.rateLimitMb
		case "service_account_key":
			config.ServiceAccountKey = c.serviceAccountKey
		case "threads":
			config.Threads = c.threads
		case "file_read_timeout_ms":
			config.FileReadTimeoutMs = c.fileReadTimeoutMs
		case "buffer_size_mb":
			config.BufferSizeMb = c.bufferSizeMb
		case "retry_backoff_initial":
			config.RetryBackoffInitial = c.retryBackoffInitial
		case "retry_backoff_max":
			config.RetryBackoffMax = c.retryBackoffMax
		case "retry_backoff_multiplier":
			config.RetryBackoffMultiplier = float32(c.retryBackoffMultiplier)
		case "log_delay_sec":
			config.LogDelaySec = c.logDelaySec
		case "client_endpoint":
			config.ClientEndpoint = c.clientEndpoint
		case "folder_prefix":
			config.FolderPrefix = c.folderPrefix
		case "recovery_folder_prefix":
			config.RecoveryFolderPrefix = c.recoveryFolderPrefix
		}
	})
	return config
}