func CustomerEnvironmentVariables()

in lambda/rapidcore/env/customer.go [26:55]


func CustomerEnvironmentVariables() map[string]string {
	internalKeys := predefinedInternalEnvVarKeys()
	platformKeys := predefinedPlatformEnvVarKeys()
	runtimeKeys := predefinedRuntimeEnvVarKeys()
	credentialKeys := predefinedCredentialsEnvVarKeys()
	platformUnreservedKeys := predefinedPlatformUnreservedEnvVarKeys()
	isCustomer := func(key string) bool {
		return !internalKeys[key] &&
			!runtimeKeys[key] &&
			!platformKeys[key] &&
			!credentialKeys[key] &&
			!platformUnreservedKeys[key] &&
			!isInternalEnvVar(key)
	}

	customerEnv := map[string]string{}
	for _, keyval := range os.Environ() {
		key, val, err := SplitEnvironmentVariable(keyval)
		if err != nil {
			log.Warnf("Customer environment variable with invalid format: %s", err)
			continue
		}

		if isCustomer(key) {
			customerEnv[key] = val
		}
	}

	return customerEnv
}