func()

in internal/loader/configuration_setting_loader.go [120:159]


func (csl *ConfigurationSettingLoader) CreateTargetSettings(ctx context.Context, resolveSecretReference SecretReferenceResolver) (*TargetKeyValueSettings, error) {
	rawSettings, err := csl.CreateKeyValueSettings(ctx, resolveSecretReference)
	if err != nil {
		return nil, err
	}

	initializedSentinelETags := make(map[acpv1.Sentinel]*azcore.ETag)
	if csl.Spec.Configuration.Refresh != nil &&
		csl.Spec.Configuration.Refresh.Enabled &&
		csl.Spec.Configuration.Refresh.Monitoring != nil {
		sentinels := normalizeSentinels(csl.Spec.Configuration.Refresh.Monitoring.Sentinels)
		eTags := make(map[acpv1.Sentinel]*azcore.ETag)
		for _, sentinel := range sentinels {
			eTags[sentinel] = nil
		}
		if _, initializedSentinelETags, err = csl.CheckAndRefreshSentinels(ctx, &csl.AzureAppConfigurationProvider, eTags); err != nil {
			return nil, err
		}
	}

	if csl.Spec.FeatureFlag != nil {
		if rawSettings.FeatureFlagSettings, rawSettings.FeatureFlagETags, err = csl.getFeatureFlagSettings(ctx); err != nil {
			return nil, err
		}
	}

	typedSettings, err := createTypedSettings(rawSettings, csl.Spec.Target.ConfigMapData)
	if err != nil {
		return nil, err
	}

	return &TargetKeyValueSettings{
		ConfigMapSettings: typedSettings,
		SecretSettings:    rawSettings.SecretSettings,
		K8sSecrets:        rawSettings.K8sSecrets,
		KeyValueETags:     rawSettings.KeyValueETags,
		FeatureFlagETags:  rawSettings.FeatureFlagETags,
		SentinelETags:     initializedSentinelETags,
	}, nil
}