func setRelayBootstrapEnvVariables()

in agent/envoy_bootstrap/envoy_bootstrap.go [1601:1657]


func setRelayBootstrapEnvVariables(agentConfig config.AgentConfig, envoyCLIInst EnvoyCLI) error {
	if _, exists := os.LookupEnv("APPNET_RELAY_LISTENER_UDS_PATH"); !exists {
		log.Infof("APPNET_RELAY_LISTENER_UDS_PATH is not set, setting default value as: %v", agentConfig.AppNetRelayListenerUdsPath)
		os.Setenv("APPNET_RELAY_LISTENER_UDS_PATH", agentConfig.AppNetRelayListenerUdsPath)
	}

	if _, exists := os.LookupEnv("AWS_REGION"); !exists {
		region, err := getRegion()
		if err != nil {
			return fmt.Errorf("failed to get region from the environment: %v", err)
		}
		log.Infof("AWS_REGION is not set, setting default value as: %v", region)
		os.Setenv("AWS_REGION", region)
	}

	if agentConfig.AppNetManagementDomainName != "" {
		os.Setenv("APPNET_MANAGEMENT_DOMAIN_NAME", agentConfig.AppNetManagementDomainName)
	} else {
		region, err := getRegion()
		if err != nil {
			return fmt.Errorf("failed to get region from the environment: %v", err)
		}
		var endpoint string
		if fips, err := isFipsCompatible(region, envoyCLIInst); err != nil {
			return fmt.Errorf("failed to verify FIPS compatibility: %v", err)
		} else if fips {
			endpoint = fmt.Sprintf("ecs-sc-fips.%s.%s", region, getXdsDomain(region, true))
		} else {
			endpoint = fmt.Sprintf("ecs-sc.%s.%s", region, getXdsDomain(region, true))
		}

		log.Infof("APPNET_MANAGEMENT_DOMAIN_NAME is not set, setting default value as: %v", endpoint)
		os.Setenv("APPNET_MANAGEMENT_DOMAIN_NAME", endpoint)
	}

	if _, exists := os.LookupEnv("APPNET_MANAGEMENT_PORT"); !exists {
		log.Infof("APPNET_MANAGEMENT_PORT is not set, setting default value as: %v", agentConfig.AppNetManagementPort)
		os.Setenv("APPNET_MANAGEMENT_PORT", fmt.Sprint(agentConfig.AppNetManagementPort))
	}

	if _, exists := os.LookupEnv("RELAY_STREAM_IDLE_TIMEOUT"); !exists {
		log.Infof("RELAY_STREAM_IDLE_TIMEOUT is not set, setting default value as: %v", agentConfig.RelayStreamIdleTimeout)
		os.Setenv("RELAY_STREAM_IDLE_TIMEOUT", fmt.Sprint(agentConfig.RelayStreamIdleTimeout))
	}

	if _, exists := os.LookupEnv("RELAY_BUFFER_LIMIT_BYTES"); !exists {
		log.Infof("RELAY_BUFFER_LIMIT_BYTES is not set, setting default value as: %v", agentConfig.RelayBufferLimitBytes)
		os.Setenv("RELAY_BUFFER_LIMIT_BYTES", fmt.Sprint(agentConfig.RelayBufferLimitBytes))
	}

	if _, exists := os.LookupEnv("ENVOY_USE_HTTP_CLIENT_TO_FETCH_AWS_CREDENTIALS"); !exists {
		log.Infof("ENVOY_USE_HTTP_CLIENT_TO_FETCH_AWS_CREDENTIALS is not set, setting default value as: %v", agentConfig.EnvoyUseHttpClientToFetchAwsCredentials)
		os.Setenv("ENVOY_USE_HTTP_CLIENT_TO_FETCH_AWS_CREDENTIALS", fmt.Sprint(agentConfig.EnvoyUseHttpClientToFetchAwsCredentials))
	}

	return nil
}