Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { APIRootPath string `envconfig:"APP_API_ROOT_PATH,default=/instance-creator"` APITenantMappingsEndpoint string `envconfig:"API_TENANT_MAPPINGS_ENDPOINT,default=/v1/tenantMappings/{tenant-id}"` Address string `envconfig:"APP_ADDRESS,default=localhost:8080"` SkipSSLValidation bool `envconfig:"APP_HTTP_CLIENT_SKIP_SSL_VALIDATION,default=false"` JWKSEndpoint string `envconfig:"APP_JWKS_ENDPOINT,default=file://hack/default-jwks.json"` ServerTimeout time.Duration `envconfig:"APP_SERVER_TIMEOUT,default=110s"` ClientTimeout time.Duration `envconfig:"APP_CLIENT_TIMEOUT,default=105s"` AuthorizationHeaderKey string `envconfig:"APP_AUTHORIZATION_HEADER_KEY,default=Authorization"` AllowJWTSigningNone bool `envconfig:"APP_ALLOW_JWT_SIGNING_NONE,default=false"` SMInstancesSecretPath string `envconfig:"APP_SM_INSTANCES_SECRET_PATH"` InstanceClientIDPath string `envconfig:"APP_SM_INSTANCE_CLIENT_ID_PATH"` InstanceSMURLPath string `envconfig:"APP_SM_INSTANCE_SM_URL_PATH"` InstanceTokenURLPath string `envconfig:"APP_SM_INSTANCE_TOKEN_URL_PATH"` InstanceAppNamePath string `envconfig:"APP_SM_INSTANCE_APP_NAME_PATH"` InstanceCertificatePath string `envconfig:"APP_SM_INSTANCE_CERTIFICATE_PATH"` InstanceCertificateKeyPath string `envconfig:"APP_SM_INSTANCE_CERTIFICATE_KEY_PATH"` ExternalClientCertSecretName string `envconfig:"APP_EXTERNAL_CLIENT_CERT_SECRET_NAME"` OAuthTokenPath string `envconfig:"APP_SM_INSTANCE_OAUTH_TOKEN_PATH"` RegionToInstanceConfig map[string]InstanceConfig `envconfig:"-"` SMClientTimeout time.Duration `envconfig:"APP_SM_CLIENT_TIMEOUT,default=30s"` CertLoaderConfig credloader.CertConfig Ticker time.Duration `envconfig:"APP_SM_ASYNC_API_TICKER,default=3s"` Timeout time.Duration `envconfig:"APP_SM_ASYNC_API_TIMEOUT,default=30s"` Log log.Config TenantInfo TenantInfo Database persistence.DatabaseConfig }
Config contains necessary configurations for the instance-creator to operate
func (*Config) MapInstanceConfigs ¶
MapInstanceConfigs parses the InstanceConfigs json string to map with key: region name and value: InstanceConfig for the instance in the region
func (*Config) PrepareConfiguration ¶
PrepareConfiguration loads credentials for each region
type InstanceConfig ¶
type InstanceConfig struct { ClientID string SMURL string TokenURL string AppName string Certificate string CertificateKey string }
InstanceConfig is a service instance config
type TenantInfo ¶
type TenantInfo struct { Endpoint string `envconfig:"APP_TENANT_INFO_ENDPOINT,default=localhost:8080/v1/info"` RequestTimeout time.Duration `envconfig:"APP_TENANT_INFO_REQUEST_TIMEOUT,default=30s"` InsecureSkipVerify bool `envconfig:"APP_TENANT_INFO_INSECURE_SKIP_VERIFY,default=false"` }
TenantInfo contains necessary configuration for determining the CMP tenant info
Click to show internal directories.
Click to hide internal directories.