Documentation
¶
Index ¶
- func App_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func App_IsConstruct(x interface{}) *bool
- func App_IsTerraformElement(x interface{}) *bool
- func App_IsTerraformResource(x interface{}) *bool
- func App_TfResourceType() *string
- func NewAppHealthcheckOutputReference_Override(a AppHealthcheckOutputReference, terraformResource cdktf.IInterpolatingParent, ...)
- func NewApp_Override(a App, scope constructs.Construct, id *string, config *AppConfig)
- type App
- type AppConfig
- type AppHealthcheck
- type AppHealthcheckOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func App_GenerateConfigForImport ¶
func App_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a App resource upon running "cdktf plan <stack-name>".
func App_IsConstruct ¶
func App_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func App_TfResourceType ¶
func App_TfResourceType() *string
func NewAppHealthcheckOutputReference_Override ¶
func NewAppHealthcheckOutputReference_Override(a AppHealthcheckOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewApp_Override ¶
func NewApp_Override(a App, scope constructs.Construct, id *string, config *AppConfig)
Create a new {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app coder_app} Resource.
Types ¶
type App ¶
type App interface {
cdktf.TerraformResource
AgentId() *string
SetAgentId(val *string)
AgentIdInput() *string
// Experimental.
CdktfStack() cdktf.TerraformStack
Command() *string
SetCommand(val *string)
CommandInput() *string
// Experimental.
Connection() interface{}
// Experimental.
SetConnection(val interface{})
// Experimental.
ConstructNodeMetadata() *map[string]interface{}
// Experimental.
Count() interface{}
// Experimental.
SetCount(val interface{})
// Experimental.
DependsOn() *[]*string
// Experimental.
SetDependsOn(val *[]*string)
DisplayName() *string
SetDisplayName(val *string)
DisplayNameInput() *string
External() interface{}
SetExternal(val interface{})
ExternalInput() interface{}
// Experimental.
ForEach() cdktf.ITerraformIterator
// Experimental.
SetForEach(val cdktf.ITerraformIterator)
// Experimental.
Fqn() *string
// Experimental.
FriendlyUniqueId() *string
Healthcheck() AppHealthcheckOutputReference
HealthcheckInput() *AppHealthcheck
Icon() *string
SetIcon(val *string)
IconInput() *string
Id() *string
SetId(val *string)
IdInput() *string
// Experimental.
Lifecycle() *cdktf.TerraformResourceLifecycle
// Experimental.
SetLifecycle(val *cdktf.TerraformResourceLifecycle)
Name() *string
SetName(val *string)
NameInput() *string
// The tree node.
Node() constructs.Node
// Experimental.
Provider() cdktf.TerraformProvider
// Experimental.
SetProvider(val cdktf.TerraformProvider)
// Experimental.
Provisioners() *[]interface{}
// Experimental.
SetProvisioners(val *[]interface{})
// Experimental.
RawOverrides() interface{}
RelativePath() interface{}
SetRelativePath(val interface{})
RelativePathInput() interface{}
Slug() *string
SetSlug(val *string)
SlugInput() *string
Subdomain() interface{}
SetSubdomain(val interface{})
SubdomainInput() interface{}
// Experimental.
TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
// Experimental.
TerraformMetaArguments() *map[string]interface{}
// Experimental.
TerraformResourceType() *string
Url() *string
SetUrl(val *string)
UrlInput() *string
// Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
// Experimental.
AddMoveTarget(moveTarget *string)
// Experimental.
AddOverride(path *string, value interface{})
// Experimental.
GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
// Experimental.
GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
// Experimental.
GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
// Experimental.
GetListAttribute(terraformAttribute *string) *[]*string
// Experimental.
GetNumberAttribute(terraformAttribute *string) *float64
// Experimental.
GetNumberListAttribute(terraformAttribute *string) *[]*float64
// Experimental.
GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
// Experimental.
GetStringAttribute(terraformAttribute *string) *string
// Experimental.
GetStringMapAttribute(terraformAttribute *string) *map[string]*string
// Experimental.
HasResourceMove() interface{}
// Experimental.
ImportFrom(id *string, provider cdktf.TerraformProvider)
// Experimental.
InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
// Move the resource corresponding to "id" to this resource.
//
// Note that the resource being moved from must be marked as moved using it's instance function.
// Experimental.
MoveFromId(id *string)
// Moves this resource to the target resource given by moveTarget.
// Experimental.
MoveTo(moveTarget *string, index interface{})
// Moves this resource to the resource corresponding to "id".
// Experimental.
MoveToId(id *string)
// Overrides the auto-generated logical ID with a specific ID.
// Experimental.
OverrideLogicalId(newLogicalId *string)
PutHealthcheck(value *AppHealthcheck)
ResetCommand()
ResetDisplayName()
ResetExternal()
ResetHealthcheck()
ResetIcon()
ResetId()
ResetName()
// Resets a previously passed logical Id to use the auto-generated logical id again.
// Experimental.
ResetOverrideLogicalId()
ResetRelativePath()
ResetSubdomain()
ResetUrl()
SynthesizeAttributes() *map[string]interface{}
SynthesizeHclAttributes() *map[string]interface{}
// Experimental.
ToHclTerraform() interface{}
// Experimental.
ToMetadata() interface{}
// Returns a string representation of this construct.
ToString() *string
// Adds this resource to the terraform JSON output.
// Experimental.
ToTerraform() interface{}
}
Represents a {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app coder_app}.
func NewApp ¶
func NewApp(scope constructs.Construct, id *string, config *AppConfig) App
Create a new {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app coder_app} Resource.
type AppConfig ¶
type AppConfig struct {
// Experimental.
Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
// Experimental.
Count interface{} `field:"optional" json:"count" yaml:"count"`
// Experimental.
DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
// Experimental.
ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
// Experimental.
Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
// Experimental.
Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
// Experimental.
Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
// The "id" property of a "coder_agent" resource to associate with.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#agent_id App#agent_id}
AgentId *string `field:"required" json:"agentId" yaml:"agentId"`
// A hostname-friendly name for the app.
//
// This is used in URLs to access the app. May contain alphanumerics and hyphens. Cannot start/end with a hyphen or contain two consecutive hyphens.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#slug App#slug}
Slug *string `field:"required" json:"slug" yaml:"slug"`
// A command to run in a terminal opening this app.
//
// In the web, this will open in a new tab. In the CLI, this will SSH and execute the command. Either "command" or "url" may be specified, but not both.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#command App#command}
Command *string `field:"optional" json:"command" yaml:"command"`
// A display name to identify the app. Defaults to the slug.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#display_name App#display_name}
DisplayName *string `field:"optional" json:"displayName" yaml:"displayName"`
// Specifies whether "url" is opened on the client machine instead of proxied through the workspace.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#external App#external}
External interface{} `field:"optional" json:"external" yaml:"external"`
// healthcheck block.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#healthcheck App#healthcheck}
Healthcheck *AppHealthcheck `field:"optional" json:"healthcheck" yaml:"healthcheck"`
// A URL to an icon that will display in the dashboard.
//
// View built-in icons here: https://github.com/coder/coder/tree/main/site/static/icon. Use a built-in icon with `data.coder_workspace.me.access_url + "/icon/<path>"`.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#icon App#icon}
Icon *string `field:"optional" json:"icon" yaml:"icon"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#id App#id}.
//
// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
Id *string `field:"optional" json:"id" yaml:"id"`
// A display name to identify the app.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#name App#name}
Name *string `field:"optional" json:"name" yaml:"name"`
// Specifies whether the URL will be accessed via a relative path or wildcard.
//
// Use if wildcard routing is unavailable. Defaults to true.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#relative_path App#relative_path}
RelativePath interface{} `field:"optional" json:"relativePath" yaml:"relativePath"`
//
// Valid levels are "owner" (default), "authenticated" and "public". Level "owner" disables sharing on the app, so only the workspace owner can access it. Level "authenticated" shares the app with all authenticated users. Level "public" shares it with any user, including unauthenticated users. Permitted application sharing levels can be configured site-wide via a flag on `coder server` (Enterprise only).
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#share App#share}
Share *string `field:"optional" json:"share" yaml:"share"`
// Determines whether the app will be accessed via it's own subdomain or whether it will be accessed via a path on Coder.
//
// If wildcards have not been setup by the administrator then apps with "subdomain" set to true will not be accessible. Defaults to false.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#subdomain App#subdomain}
Subdomain interface{} `field:"optional" json:"subdomain" yaml:"subdomain"`
// A URL to be proxied to from inside the workspace.
//
// This should be of the form "http://localhost:PORT[/SUBPATH]". Either "command" or "url" may be specified, but not both.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#url App#url}
Url *string `field:"optional" json:"url" yaml:"url"`
}
type AppHealthcheck ¶
type AppHealthcheck struct {
// Duration in seconds to wait between healthcheck requests.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#interval App#interval}
Interval *float64 `field:"required" json:"interval" yaml:"interval"`
// Number of consecutive heathcheck failures before returning an unhealthy status.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#threshold App#threshold}
Threshold *float64 `field:"required" json:"threshold" yaml:"threshold"`
// HTTP address used determine the application readiness.
//
// A successful health check is a HTTP response code less than 500 returned before healthcheck.interval seconds.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/coder/coder/0.13.0/docs/resources/app#url App#url}
Url *string `field:"required" json:"url" yaml:"url"`
}
type AppHealthcheckOutputReference ¶
type AppHealthcheckOutputReference interface {
cdktf.ComplexObject
// the index of the complex object in a list.
// Experimental.
ComplexObjectIndex() interface{}
// Experimental.
SetComplexObjectIndex(val interface{})
// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
// Experimental.
ComplexObjectIsFromSet() *bool
// Experimental.
SetComplexObjectIsFromSet(val *bool)
// The creation stack of this resolvable which will be appended to errors thrown during resolution.
//
// If this returns an empty array the stack will not be attached.
// Experimental.
CreationStack() *[]*string
// Experimental.
Fqn() *string
InternalValue() *AppHealthcheck
SetInternalValue(val *AppHealthcheck)
Interval() *float64
SetInterval(val *float64)
IntervalInput() *float64
// Experimental.
TerraformAttribute() *string
// Experimental.
SetTerraformAttribute(val *string)
// Experimental.
TerraformResource() cdktf.IInterpolatingParent
// Experimental.
SetTerraformResource(val cdktf.IInterpolatingParent)
Threshold() *float64
SetThreshold(val *float64)
ThresholdInput() *float64
Url() *string
SetUrl(val *string)
UrlInput() *string
// Experimental.
ComputeFqn() *string
// Experimental.
GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
// Experimental.
GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
// Experimental.
GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
// Experimental.
GetListAttribute(terraformAttribute *string) *[]*string
// Experimental.
GetNumberAttribute(terraformAttribute *string) *float64
// Experimental.
GetNumberListAttribute(terraformAttribute *string) *[]*float64
// Experimental.
GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
// Experimental.
GetStringAttribute(terraformAttribute *string) *string
// Experimental.
GetStringMapAttribute(terraformAttribute *string) *map[string]*string
// Experimental.
InterpolationAsList() cdktf.IResolvable
// Experimental.
InterpolationForAttribute(property *string) cdktf.IResolvable
// Produce the Token's value at resolution time.
// Experimental.
Resolve(_context cdktf.IResolveContext) interface{}
// Return a string representation of this resolvable object.
//
// Returns a reversible string representation.
// Experimental.
ToString() *string
}
func NewAppHealthcheckOutputReference ¶
func NewAppHealthcheckOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) AppHealthcheckOutputReference