Documentation
¶
Overview ¶
High-level constructs for AWS CDK
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK ¶
High-level constructs for AWS CDK
Index ¶
- func CodeCommitMirror_IsConstruct(x interface{}) *bool
- func EcsServiceRoller_IsConstruct(x interface{}) *bool
- func EmailReceiver_IsConstruct(x interface{}) *bool
- func NewCodeCommitMirrorSourceRepository_Override(c CodeCommitMirrorSourceRepository)
- func NewCodeCommitMirror_Override(c CodeCommitMirror, scope constructs.Construct, id *string, ...)
- func NewEcsServiceRoller_Override(e EcsServiceRoller, scope constructs.Construct, id *string, ...)
- func NewEmailReceiver_Override(e EmailReceiver, scope constructs.Construct, id *string, ...)
- func NewRollTrigger_Override(r RollTrigger)
- func NewSamlFederatedPrincipal_Override(s SamlFederatedPrincipal, identityProvider SamlIdentityProvider)deprecated
- func NewSamlIdentityProvider_Override(s SamlIdentityProvider, scope constructs.Construct, id *string, ...)deprecated
- func NewSlackAppManifestDefinition_Override(s SlackAppManifestDefinition)
- func NewSlackAppManifest_Override(s SlackAppManifest, props *SlackAppManifestProps)
- func NewSlackApp_Override(s SlackApp, scope constructs.Construct, id *string, props *SlackAppProps)
- func NewSlackEvents_Override(s SlackEvents, scope constructs.Construct, id *string, props *SlackEventsProps)
- func NewSlackTextract_Override(s SlackTextract, scope constructs.Construct, id *string, ...)
- func NewSslServerTest_Override(s SslServerTest, scope constructs.Construct, id *string, ...)
- func NewStateMachineCustomResourceProvider_Override(s StateMachineCustomResourceProvider, scope constructs.Construct, id *string, ...)
- func NewStaticWebsite_Override(s StaticWebsite, scope constructs.Construct, id *string, ...)
- func NewToolkitCleaner_Override(t ToolkitCleaner, scope constructs.Construct, id *string, ...)
- func NewUrlShortener_Override(u UrlShortener, scope constructs.Construct, id *string, ...)
- func SamlIdentityProvider_IsConstruct(x interface{}) *bool
- func SlackApp_IsConstruct(x interface{}) *bool
- func SlackEvents_IsConstruct(x interface{}) *bool
- func SlackTextract_IsConstruct(x interface{}) *bool
- func SslServerTest_IsConstruct(x interface{}) *bool
- func StateMachineCustomResourceProvider_IsConstruct(x interface{}) *bool
- func StaticWebsite_DefaultSecurityHeadersBehavior() *awscloudfront.ResponseSecurityHeadersBehavior
- func StaticWebsite_IsConstruct(x interface{}) *bool
- func StaticWebsite_SetDefaultSecurityHeadersBehavior(val *awscloudfront.ResponseSecurityHeadersBehavior)
- func ToolkitCleaner_IsConstruct(x interface{}) *bool
- func UrlShortener_IsConstruct(x interface{}) *bool
- type CodeCommitMirror
- type CodeCommitMirrorProps
- type CodeCommitMirrorSourceRepository
- type EcsServiceRoller
- type EcsServiceRollerProps
- type EmailReceiver
- type EmailReceiverProps
- type IStateMachine
- type RollTrigger
- type SamlFederatedPrincipal
- type SamlIdentityProvider
- type SamlIdentityProviderProps
- type SlackApp
- type SlackAppManifest
- type SlackAppManifestAppHome
- type SlackAppManifestDefinition
- type SlackAppManifestEventSubscriptions
- type SlackAppManifestInteractivity
- type SlackAppManifestOauthConfig
- type SlackAppManifestProps
- type SlackAppManifestSettings
- type SlackAppManifestShortcut
- type SlackAppManifestShortcutType
- type SlackAppManifestSlashCommand
- type SlackAppManifestWorkflowStep
- type SlackAppProps
- type SlackEvents
- type SlackEventsProps
- type SlackTextract
- type SlackTextractProps
- type SlackkAppManifestBotUser
- type SslServerTest
- type SslServerTestGrade
- type SslServerTestProps
- type StateMachineCustomResourceProvider
- type StateMachineCustomResourceProviderProps
- type StaticWebsite
- type StaticWebsiteProps
- type ToolkitCleaner
- type ToolkitCleanerProps
- type UrlShortener
- type UrlShortenerProps
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CodeCommitMirror_IsConstruct ¶
func CodeCommitMirror_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func EcsServiceRoller_IsConstruct ¶
func EcsServiceRoller_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func EmailReceiver_IsConstruct ¶
func EmailReceiver_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func NewCodeCommitMirrorSourceRepository_Override ¶
func NewCodeCommitMirrorSourceRepository_Override(c CodeCommitMirrorSourceRepository)
func NewCodeCommitMirror_Override ¶
func NewCodeCommitMirror_Override(c CodeCommitMirror, scope constructs.Construct, id *string, props *CodeCommitMirrorProps)
func NewEcsServiceRoller_Override ¶
func NewEcsServiceRoller_Override(e EcsServiceRoller, scope constructs.Construct, id *string, props *EcsServiceRollerProps)
func NewEmailReceiver_Override ¶
func NewEmailReceiver_Override(e EmailReceiver, scope constructs.Construct, id *string, props *EmailReceiverProps)
func NewRollTrigger_Override ¶
func NewRollTrigger_Override(r RollTrigger)
func NewSamlFederatedPrincipal_Override
deprecated
func NewSamlFederatedPrincipal_Override(s SamlFederatedPrincipal, identityProvider SamlIdentityProvider)
Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
func NewSamlIdentityProvider_Override
deprecated
func NewSamlIdentityProvider_Override(s SamlIdentityProvider, scope constructs.Construct, id *string, props *SamlIdentityProviderProps)
Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
func NewSlackAppManifestDefinition_Override ¶
func NewSlackAppManifestDefinition_Override(s SlackAppManifestDefinition)
func NewSlackAppManifest_Override ¶
func NewSlackAppManifest_Override(s SlackAppManifest, props *SlackAppManifestProps)
func NewSlackApp_Override ¶
func NewSlackApp_Override(s SlackApp, scope constructs.Construct, id *string, props *SlackAppProps)
func NewSlackEvents_Override ¶
func NewSlackEvents_Override(s SlackEvents, scope constructs.Construct, id *string, props *SlackEventsProps)
func NewSlackTextract_Override ¶
func NewSlackTextract_Override(s SlackTextract, scope constructs.Construct, id *string, props *SlackTextractProps)
func NewSslServerTest_Override ¶ added in v0.6.8
func NewSslServerTest_Override(s SslServerTest, scope constructs.Construct, id *string, props *SslServerTestProps)
func NewStateMachineCustomResourceProvider_Override ¶
func NewStateMachineCustomResourceProvider_Override(s StateMachineCustomResourceProvider, scope constructs.Construct, id *string, props *StateMachineCustomResourceProviderProps)
func NewStaticWebsite_Override ¶
func NewStaticWebsite_Override(s StaticWebsite, scope constructs.Construct, id *string, props *StaticWebsiteProps)
func NewToolkitCleaner_Override ¶
func NewToolkitCleaner_Override(t ToolkitCleaner, scope constructs.Construct, id *string, props *ToolkitCleanerProps)
func NewUrlShortener_Override ¶
func NewUrlShortener_Override(u UrlShortener, scope constructs.Construct, id *string, props *UrlShortenerProps)
func SamlIdentityProvider_IsConstruct ¶
func SamlIdentityProvider_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func SlackApp_IsConstruct ¶
func SlackApp_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func SlackEvents_IsConstruct ¶
func SlackEvents_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func SlackTextract_IsConstruct ¶
func SlackTextract_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func SslServerTest_IsConstruct ¶ added in v0.6.8
func SslServerTest_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func StateMachineCustomResourceProvider_IsConstruct ¶
func StateMachineCustomResourceProvider_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func StaticWebsite_DefaultSecurityHeadersBehavior ¶
func StaticWebsite_DefaultSecurityHeadersBehavior() *awscloudfront.ResponseSecurityHeadersBehavior
func StaticWebsite_IsConstruct ¶
func StaticWebsite_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func StaticWebsite_SetDefaultSecurityHeadersBehavior ¶
func StaticWebsite_SetDefaultSecurityHeadersBehavior(val *awscloudfront.ResponseSecurityHeadersBehavior)
func ToolkitCleaner_IsConstruct ¶
func ToolkitCleaner_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func UrlShortener_IsConstruct ¶
func UrlShortener_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
Types ¶
type CodeCommitMirror ¶
type CodeCommitMirror interface {
constructs.Construct
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
Mirror a repository to AWS CodeCommit on schedule.
func NewCodeCommitMirror ¶
func NewCodeCommitMirror(scope constructs.Construct, id *string, props *CodeCommitMirrorProps) CodeCommitMirror
type CodeCommitMirrorProps ¶
type CodeCommitMirrorProps struct {
// The ECS cluster where to run the mirroring operation.
Cluster awsecs.ICluster `field:"required" json:"cluster" yaml:"cluster"`
// The source repository.
Repository CodeCommitMirrorSourceRepository `field:"required" json:"repository" yaml:"repository"`
// The schedule for the mirroring operation.
Schedule awsevents.Schedule `field:"optional" json:"schedule" yaml:"schedule"`
// Where to run the mirroring Fargate tasks.
SubnetSelection *awsec2.SubnetSelection `field:"optional" json:"subnetSelection" yaml:"subnetSelection"`
}
Properties for a CodeCommitMirror.
type CodeCommitMirrorSourceRepository ¶
type CodeCommitMirrorSourceRepository interface {
// The name of the repository.
Name() *string
// The HTTPS clone URL in plain text, used for a public repository.
PlainTextUrl() *string
// The HTTPS clone URL if the repository is private.
//
// The secret should contain the username and/or token.
//
// Example:
// `https://TOKEN@github.com/owner/name`
// `https://USERNAME:TOKEN@bitbucket.org/owner/name.git`
//
SecretUrl() awsecs.Secret
}
A source repository for AWS CodeCommit mirroring.
func CodeCommitMirrorSourceRepository_GitHub ¶
func CodeCommitMirrorSourceRepository_GitHub(owner *string, name *string) CodeCommitMirrorSourceRepository
Public GitHub repository.
func CodeCommitMirrorSourceRepository_Private ¶
func CodeCommitMirrorSourceRepository_Private(name *string, url awsecs.Secret) CodeCommitMirrorSourceRepository
Private repository with HTTPS clone URL stored in a AWS Secrets Manager secret or a AWS Systems Manager secure string parameter.
type EcsServiceRoller ¶
type EcsServiceRoller interface {
constructs.Construct
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
Roll your ECS service tasks on schedule or with a rule.
func NewEcsServiceRoller ¶
func NewEcsServiceRoller(scope constructs.Construct, id *string, props *EcsServiceRollerProps) EcsServiceRoller
type EcsServiceRollerProps ¶
type EcsServiceRollerProps struct {
// The ECS cluster where the services run.
Cluster awsecs.ICluster `field:"required" json:"cluster" yaml:"cluster"`
// The ECS service for which tasks should be rolled.
Service awsecs.IService `field:"required" json:"service" yaml:"service"`
// The rule or schedule that should trigger a roll.
Trigger RollTrigger `field:"optional" json:"trigger" yaml:"trigger"`
}
Properties for a EcsServiceRoller.
type EmailReceiver ¶
type EmailReceiver interface {
constructs.Construct
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
Receive emails through SES, save them to S3 and invokes a Lambda function.
func NewEmailReceiver ¶
func NewEmailReceiver(scope constructs.Construct, id *string, props *EmailReceiverProps) EmailReceiver
type EmailReceiverProps ¶
type EmailReceiverProps struct {
// A Lambda function to invoke after the message is saved to S3.
//
// The Lambda
// function will be invoked with a SESMessage as event.
Function awslambda.IFunction `field:"required" json:"function" yaml:"function"`
// The SES receipt rule set where a receipt rule will be added.
ReceiptRuleSet awsses.IReceiptRuleSet `field:"required" json:"receiptRuleSet" yaml:"receiptRuleSet"`
// The recipients for which emails should be received.
Recipients *[]*string `field:"required" json:"recipients" yaml:"recipients"`
// An existing rule after which the new rule will be placed in the rule set.
AfterRule awsses.IReceiptRule `field:"optional" json:"afterRule" yaml:"afterRule"`
// A regular expression to whitelist source email addresses.
SourceWhitelist *string `field:"optional" json:"sourceWhitelist" yaml:"sourceWhitelist"`
}
Properties for an EmailReceiver.
type IStateMachine ¶
type IStateMachine interface {
// The ARN of the state machine.
StateMachineArn() *string
}
A State Machine.
type RollTrigger ¶
type RollTrigger interface {
// Roll rule.
Rule() awsevents.Rule
// Roll schedule.
Schedule() awsevents.Schedule
}
The rule or schedule that should trigger a roll.
func RollTrigger_FromRule ¶
func RollTrigger_FromRule(rule awsevents.Rule) RollTrigger
Rule that should trigger a roll.
func RollTrigger_FromSchedule ¶
func RollTrigger_FromSchedule(schedule awsevents.Schedule) RollTrigger
Schedule that should trigger a roll.
type SamlFederatedPrincipal ¶
type SamlFederatedPrincipal interface {
awsiam.FederatedPrincipal
// When this Principal is used in an AssumeRole policy, the action to use.
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
AssumeRoleAction() *string
// The conditions under which the policy is in effect.
//
// See [the IAM documentation](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html).
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
Conditions() *map[string]interface{}
// federated identity provider (i.e. 'cognito-identity.amazonaws.com' for users authenticated through Cognito).
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
Federated() *string
// The principal to grant permissions to.
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
GrantPrincipal() awsiam.IPrincipal
// Return the policy fragment that identifies this principal in a Policy.
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
PolicyFragment() awsiam.PrincipalPolicyFragment
// The AWS account ID of this principal.
//
// Can be undefined when the account is not known
// (for example, for service principals).
// Can be a Token - in that case,
// it's assumed to be AWS::AccountId.
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
PrincipalAccount() *string
// Add to the policy of this principal.
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
AddToPolicy(statement awsiam.PolicyStatement) *bool
// Add to the policy of this principal.
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
AddToPrincipalPolicy(_statement awsiam.PolicyStatement) *awsiam.AddToPrincipalPolicyResult
// JSON-ify the principal.
//
// Used when JSON.stringify() is called
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
ToJSON() *map[string]*[]*string
// Returns a string representation of an object.
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
ToString() *string
// Returns a new PrincipalWithConditions using this principal as the base, with the passed conditions added.
//
// When there is a value for the same operator and key in both the principal and the
// conditions parameter, the value from the conditions parameter will be used.
//
// Returns: a new PrincipalWithConditions object.
// Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
WithConditions(conditions *map[string]interface{}) awsiam.IPrincipal
}
Principal entity that represents a SAML federated identity provider. Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
func NewSamlFederatedPrincipal
deprecated
func NewSamlFederatedPrincipal(identityProvider SamlIdentityProvider) SamlFederatedPrincipal
Deprecated: use `SamlPrincipal` from `aws-cdk-lib/aws-iam`.
type SamlIdentityProvider ¶
type SamlIdentityProvider interface {
constructs.Construct
// The tree node.
// Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
Node() constructs.Node
// The ARN of the SAML identity provider.
// Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
SamlIdentityProviderArn() *string
// Returns a string representation of this construct.
// Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
ToString() *string
}
Create a SAML identity provider. Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
func NewSamlIdentityProvider
deprecated
func NewSamlIdentityProvider(scope constructs.Construct, id *string, props *SamlIdentityProviderProps) SamlIdentityProvider
Deprecated: use `SamlProvider` from `aws-cdk-lib/aws-iam`.
type SamlIdentityProviderProps ¶
type SamlIdentityProviderProps struct {
// An XML document generated by an identity provider (IdP) that supports SAML 2.0.
//
// The document includes the issuer's name, expiration information, and keys that
// can be used to validate the SAML authentication response (assertions) that are
// received from the IdP. You must generate the metadata document using the identity
// management software that is used as your organization's IdP.
// Deprecated: use `SamlProviderProps` from `aws-cdk-lib/aws-iam`.
MetadataDocument *string `field:"required" json:"metadataDocument" yaml:"metadataDocument"`
// A name for the SAML identity provider.
// Deprecated: use `SamlProviderProps` from `aws-cdk-lib/aws-iam`.
Name *string `field:"optional" json:"name" yaml:"name"`
}
Properties for a SamlProvider. Deprecated: use `SamlProviderProps` from `aws-cdk-lib/aws-iam`.
type SlackApp ¶
type SlackApp interface {
constructs.Construct
// The ID of the application.
AppId() *string
// A dynamic reference to the client ID of the app.
ClientId() *string
// A dynamic reference to the client secret of the app.
ClientSecret() *string
// An AWS Secrets Manager secret containing the credentials of the application.
//
// “`
// {
// "appId": "...",
// "clientId": "...",
// "clientSecret": "...",
// "verificationToken": "...",
// "signingSecret": "..."
// }
// “`.
Credentials() awssecretsmanager.ISecret
// The tree node.
Node() constructs.Node
// A dynamic reference to the signing secret of the app.
SigningSecret() *string
// A dynamic reference to the verification token of the app.
VerificationToken() *string
// Returns a string representation of this construct.
ToString() *string
}
A Slack application deployed with a manifest. See: https://api.slack.com/reference/manifests
func NewSlackApp ¶
func NewSlackApp(scope constructs.Construct, id *string, props *SlackAppProps) SlackApp
type SlackAppManifest ¶
type SlackAppManifest interface {
Render(construct constructs.IConstruct) *string
}
A Slack app manifest. See: https://api.slack.com/reference/manifests
func NewSlackAppManifest ¶
func NewSlackAppManifest(props *SlackAppManifestProps) SlackAppManifest
type SlackAppManifestAppHome ¶
type SlackAppManifestAppHome struct {
// Wether the Home tab is enabled.
HomeTab *bool `field:"optional" json:"homeTab" yaml:"homeTab"`
// Wether the Messages is enabled.
MessagesTab *bool `field:"optional" json:"messagesTab" yaml:"messagesTab"`
// Whether the users can send messages to your app in the Messages tab of your App Home.
MessagesTabReadOnly *bool `field:"optional" json:"messagesTabReadOnly" yaml:"messagesTabReadOnly"`
}
App Home configuration. See: https://api.slack.com/surfaces/tabs
type SlackAppManifestDefinition ¶
type SlackAppManifestDefinition interface {
// Renders the JSON app manifest encoded as a string.
Render(construct constructs.IConstruct) *string
}
A Slack app manifest definition.
func SlackAppManifestDefinition_FromFile ¶
func SlackAppManifestDefinition_FromFile(file *string) SlackAppManifestDefinition
Creates a Slack app manifest from a file containg a JSON app manifest.
func SlackAppManifestDefinition_FromManifest ¶
func SlackAppManifestDefinition_FromManifest(props *SlackAppManifestProps) SlackAppManifestDefinition
Creates a Slack app manifest by specifying properties.
func SlackAppManifestDefinition_FromString ¶
func SlackAppManifestDefinition_FromString(manifest *string) SlackAppManifestDefinition
Create a Slack app manifest from a JSON app manifest encoded as a string.
type SlackAppManifestEventSubscriptions ¶
type SlackAppManifestEventSubscriptions struct {
// The full https URL that acts as the Events API request URL.
// See: https://api.slack.com/events-api#the-events-api__subscribing-to-event-types__events-api-request-urls
//
RequestUrl *string `field:"required" json:"requestUrl" yaml:"requestUrl"`
// Event types you want the app to subscribe to.
//
// A maximum of 100 event types can be used.
// See: https://api.slack.com/events
//
BotEvents *[]*string `field:"optional" json:"botEvents" yaml:"botEvents"`
// Event types you want the app to subscribe to on behalf of authorized users.
//
// A maximum of 100 event types can be used.
UserEvents *[]*string `field:"optional" json:"userEvents" yaml:"userEvents"`
}
Events API configuration for the app. See: https://api.slack.com/events-api
type SlackAppManifestInteractivity ¶
type SlackAppManifestInteractivity struct {
// Whether or not interactivity features are enabled.
Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"`
// The full https URL that acts as th interactive Options Load URL.
MessageMenuOptionsUrl *string `field:"optional" json:"messageMenuOptionsUrl" yaml:"messageMenuOptionsUrl"`
// The full https URL that acts as the interactive Request URL.
RequestUrl *string `field:"optional" json:"requestUrl" yaml:"requestUrl"`
}
Interactivity configuration for the app. See: https://api.slack.com/interactivity/handling#setup
type SlackAppManifestOauthConfig ¶
type SlackAppManifestOauthConfig struct {
// Bot scopes to request upon app installation.
//
// A maximum of 255 scopes can be included.
// See: https://api.slack.com/scopes
//
BotScopes *[]*string `field:"optional" json:"botScopes" yaml:"botScopes"`
// OAuth redirect URLs.
//
// A maximum of 1000 redirect URLs can be included.
// See: https://api.slack.com/authentication/oauth-v2#redirect_urls
//
RedirectUrls *[]*string `field:"optional" json:"redirectUrls" yaml:"redirectUrls"`
// User scopes to request upon app installation.
//
// A maximum of 255 scopes can be included.
// See: https://api.slack.com/scopes
//
UserScopes *[]*string `field:"optional" json:"userScopes" yaml:"userScopes"`
}
OAuth configuration for the app.
type SlackAppManifestProps ¶
type SlackAppManifestProps struct {
// The name of the app.
//
// Maximum length is 35 characters.
Name *string `field:"required" json:"name" yaml:"name"`
// An array of IP addresses that conform to the Allowed IP Ranges feature.
// See: https://api.slack.com/authentication/best-practices#ip_allowlisting
//
AllowedIpAddressRanges *[]*string `field:"optional" json:"allowedIpAddressRanges" yaml:"allowedIpAddressRanges"`
// App Home configuration.
// See: https://api.slack.com/surfaces/tabs
//
AppHome *SlackAppManifestAppHome `field:"optional" json:"appHome" yaml:"appHome"`
// A hex color value that specifies the background color used on hovercards that display information about your app.
//
// Can be 3-digit (#000) or 6-digit (#000000) hex values with or without #.
BackgroundColor *string `field:"optional" json:"backgroundColor" yaml:"backgroundColor"`
// Bot user configuration.
// See: https://api.slack.com/bot-users
//
BotUser *SlackkAppManifestBotUser `field:"optional" json:"botUser" yaml:"botUser"`
// A short description of the app for display to users.
//
// Maximum length is 140 characters.
Description *string `field:"optional" json:"description" yaml:"description"`
// Events API configuration for the app.
// See: https://api.slack.com/events-api
//
EventSubscriptions *SlackAppManifestEventSubscriptions `field:"optional" json:"eventSubscriptions" yaml:"eventSubscriptions"`
// Interactivity configuration for the app.
Interactivity *SlackAppManifestInteractivity `field:"optional" json:"interactivity" yaml:"interactivity"`
// A longer version of the description of the app.
//
// Maximum length is 4000 characters.
LongDescription *string `field:"optional" json:"longDescription" yaml:"longDescription"`
// The major version of the manifest schema to target.
MajorVersion *float64 `field:"optional" json:"majorVersion" yaml:"majorVersion"`
// The minor version of the manifest schema to target.
MinorVersion *float64 `field:"optional" json:"minorVersion" yaml:"minorVersion"`
// OAuth configuration for the app.
OauthConfig *SlackAppManifestOauthConfig `field:"optional" json:"oauthConfig" yaml:"oauthConfig"`
// Whether org-wide deploy is enabled.
// See: https://api.slack.com/enterprise/apps
//
OrgDeploy *bool `field:"optional" json:"orgDeploy" yaml:"orgDeploy"`
// Shortcuts configuration.
//
// A maximum of 5 shortcuts can be included.
// See: https://api.slack.com/interactivity/shortcuts
//
Shortcuts *[]*SlackAppManifestShortcut `field:"optional" json:"shortcuts" yaml:"shortcuts"`
// Slash commands configuration.
//
// A maximum of 5 slash commands can be included.
// See: https://api.slack.com/interactivity/slash-commands
//
SlashCommands *[]*SlackAppManifestSlashCommand `field:"optional" json:"slashCommands" yaml:"slashCommands"`
// Whether Socket Mode is enabled.
// See: https://api.slack.com/apis/connections/socket
//
SocketMode *bool `field:"optional" json:"socketMode" yaml:"socketMode"`
// Valid unfurl domains to register.
//
// A maximum of 5 unfurl domains can be included.
// See: https://api.slack.com/reference/messaging/link-unfurling#configuring_domains
//
UnfurlDomains *[]*string `field:"optional" json:"unfurlDomains" yaml:"unfurlDomains"`
// Workflow steps.
//
// A maximum of 10 workflow steps can be included.
// See: https://api.slack.com/workflows/steps
//
WorkflowSteps *[]*SlackAppManifestWorkflowStep `field:"optional" json:"workflowSteps" yaml:"workflowSteps"`
}
Properties for a Slack app manifest. See: https://api.slack.com/reference/manifests
type SlackAppManifestSettings ¶
type SlackAppManifestSettings struct {
// An array of IP addresses that conform to the Allowed IP Ranges feature.
// See: https://api.slack.com/authentication/best-practices#ip_allowlisting
//
AllowedIpAddressRanges *[]*string `field:"optional" json:"allowedIpAddressRanges" yaml:"allowedIpAddressRanges"`
// Events API configuration for the app.
// See: https://api.slack.com/events-api
//
EventSubscriptions *SlackAppManifestEventSubscriptions `field:"optional" json:"eventSubscriptions" yaml:"eventSubscriptions"`
// Interactivity configuration for the app.
Interactivity *SlackAppManifestInteractivity `field:"optional" json:"interactivity" yaml:"interactivity"`
// Whether org-wide deploy is enabled.
// See: https://api.slack.com/enterprise/apps
//
OrgDeploy *bool `field:"optional" json:"orgDeploy" yaml:"orgDeploy"`
// Whether Socket Mode is enabled.
// See: https://api.slack.com/apis/connections/socket
//
SocketMode *bool `field:"optional" json:"socketMode" yaml:"socketMode"`
}
Settings section of the app config pages.
type SlackAppManifestShortcut ¶
type SlackAppManifestShortcut struct {
// The callback ID of the shortcut.
//
// Maximum length is 255 characters.
CallbackId *string `field:"required" json:"callbackId" yaml:"callbackId"`
// A short description of the shortcut.
//
// Maximum length is 150 characters.
Description *string `field:"required" json:"description" yaml:"description"`
// The name of the shortcut.
Name *string `field:"required" json:"name" yaml:"name"`
// The type of shortcut.
// See: https://api.slack.com/interactivity/shortcuts
//
Type SlackAppManifestShortcutType `field:"required" json:"type" yaml:"type"`
}
Shortcut configuration. See: https://api.slack.com/interactivity/shortcuts
type SlackAppManifestShortcutType ¶
type SlackAppManifestShortcutType string
Type of shortcuts. See: https://api.slack.com/interactivity/shortcuts
const ( // Message shortcuts are shown to users in the context menus of messages within Slack. // See: https://api.slack.com/interactivity/shortcuts/using#message_shortcuts // SlackAppManifestShortcutType_MESSAGE SlackAppManifestShortcutType = "MESSAGE" // Global shortcuts are available to users via the shortcuts button in the composer, and when using search in Slack. // See: https://api.slack.com/interactivity/shortcuts/using#global_shortcuts // SlackAppManifestShortcutType_GLOBAL SlackAppManifestShortcutType = "GLOBAL" )
type SlackAppManifestSlashCommand ¶
type SlackAppManifestSlashCommand struct {
// The actual slash command.
//
// Maximum length is 32 characters.
Command *string `field:"required" json:"command" yaml:"command"`
// The description of the slash command.
//
// Maximum length is 2000 characters.
Description *string `field:"required" json:"description" yaml:"description"`
// Whether channels, users, and links typed with the slash command should be escaped.
ShouldEscape *bool `field:"optional" json:"shouldEscape" yaml:"shouldEscape"`
// The full https URL that acts as the slash command's request URL.
// See: https://api.slack.com/interactivity/slash-commands#creating_commands
//
Url *string `field:"optional" json:"url" yaml:"url"`
// The short usage hint about the slash command for users.
//
// Maximum length is 1000 characters.
UsageHint *string `field:"optional" json:"usageHint" yaml:"usageHint"`
}
Slash command configuration. See: https://api.slack.com/interactivity/slash-commands
type SlackAppManifestWorkflowStep ¶
type SlackAppManifestWorkflowStep struct {
// The callback ID of the workflow step.
//
// Maximum length of 50 characters.
CallbackId *string `field:"required" json:"callbackId" yaml:"callbackId"`
// The name of the workflow step.
//
// Maximum length of 50 characters.
Name *string `field:"required" json:"name" yaml:"name"`
}
Workflow step. See: https://api.slack.com/workflows/steps
type SlackAppProps ¶
type SlackAppProps struct {
// An AWS Secrets Manager secret containing the app configuration token.
//
// Must use the following JSON format:
//
// “`
// {
// "refreshToken": "<token>"
// }
// “`.
ConfigurationTokenSecret awssecretsmanager.ISecret `field:"required" json:"configurationTokenSecret" yaml:"configurationTokenSecret"`
// The definition of the app manifest.
// See: https://api.slack.com/reference/manifests
//
Manifest SlackAppManifestDefinition `field:"required" json:"manifest" yaml:"manifest"`
// The AWS Secrets Manager secret where to store the app credentials.
CredentialsSecret awssecretsmanager.ISecret `field:"optional" json:"credentialsSecret" yaml:"credentialsSecret"`
}
Properties for a SlackApp.
type SlackEvents ¶
type SlackEvents interface {
constructs.Construct
// The custom event bus where Slack events are sent.
EventBus() awsevents.EventBus
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
Send Slack events to Amazon EventBridge.
func NewSlackEvents ¶
func NewSlackEvents(scope constructs.Construct, id *string, props *SlackEventsProps) SlackEvents
type SlackEventsProps ¶
type SlackEventsProps struct {
// The signing secret of the Slack app.
SigningSecret awscdk.SecretValue `field:"required" json:"signingSecret" yaml:"signingSecret"`
// A name for the API Gateway resource.
ApiName *string `field:"optional" json:"apiName" yaml:"apiName"`
// Whether to use a custom event bus.
CustomEventBus *bool `field:"optional" json:"customEventBus" yaml:"customEventBus"`
}
Properties for a SlackEvents.
type SlackTextract ¶
type SlackTextract interface {
constructs.Construct
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
Extract text from images posted to Slack using Amazon Textract.
func NewSlackTextract ¶
func NewSlackTextract(scope constructs.Construct, id *string, props *SlackTextractProps) SlackTextract
type SlackTextractProps ¶
type SlackTextractProps struct {
// The application id of the Slack app.
AppId *string `field:"required" json:"appId" yaml:"appId"`
// The **bot** token of the Slack app.
//
// The following scopes are required: `chat:write` and `files:read`.
BotToken awscdk.SecretValue `field:"required" json:"botToken" yaml:"botToken"`
// The signing secret of the Slack app.
SigningSecret awscdk.SecretValue `field:"required" json:"signingSecret" yaml:"signingSecret"`
}
Properties for a SlackTextract.
type SlackkAppManifestBotUser ¶
type SlackkAppManifestBotUser struct {
// The display name of the bot user.
//
// Maximum length is 80 characters.
DisplayName *string `field:"required" json:"displayName" yaml:"displayName"`
// Whether the bot user will always appear to be online.
AlwaysOnline *bool `field:"optional" json:"alwaysOnline" yaml:"alwaysOnline"`
}
Bot user configuration. See: https://api.slack.com/bot-users
type SslServerTest ¶ added in v0.6.8
type SslServerTest interface {
constructs.Construct
// The topic to which the SSL test results are sent when the grade is below the minimum grade.
AlarmTopic() awssns.ITopic
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
Perform SSL server test for a hostname.
func NewSslServerTest ¶ added in v0.6.8
func NewSslServerTest(scope constructs.Construct, id *string, props *SslServerTestProps) SslServerTest
type SslServerTestGrade ¶ added in v0.6.8
type SslServerTestGrade string
SSL Server test grade.
const ( SslServerTestGrade_A_PLUS SslServerTestGrade = "A_PLUS" SslServerTestGrade_A SslServerTestGrade = "A" SslServerTestGrade_A_MINUS SslServerTestGrade = "A_MINUS" SslServerTestGrade_B SslServerTestGrade = "B" SslServerTestGrade_C SslServerTestGrade = "C" SslServerTestGrade_D SslServerTestGrade = "D" SslServerTestGrade_E SslServerTestGrade = "E" SslServerTestGrade_F SslServerTestGrade = "F" )
type SslServerTestProps ¶ added in v0.6.8
type SslServerTestProps struct {
// The hostname to test.
Host *string `field:"required" json:"host" yaml:"host"`
// The topic to which the results must be sent when the grade is below the minimum grade.
AlarmTopic awssns.ITopic `field:"optional" json:"alarmTopic" yaml:"alarmTopic"`
// Minimum grade for the test. The grade is calculated using the worst grade of all endpoints.
//
// Used to send the results to an alarm SNS topic.
MinimumGrade SslServerTestGrade `field:"optional" json:"minimumGrade" yaml:"minimumGrade"`
// The schedule for the test.
Schedule awsevents.Schedule `field:"optional" json:"schedule" yaml:"schedule"`
}
Properties for a SslServerTest.
type StateMachineCustomResourceProvider ¶
type StateMachineCustomResourceProvider interface {
constructs.Construct
// The tree node.
Node() constructs.Node
// The service token.
ServiceToken() *string
// Returns a string representation of this construct.
ToString() *string
}
A state machine custom resource provider.
func NewStateMachineCustomResourceProvider ¶
func NewStateMachineCustomResourceProvider(scope constructs.Construct, id *string, props *StateMachineCustomResourceProviderProps) StateMachineCustomResourceProvider
type StateMachineCustomResourceProviderProps ¶
type StateMachineCustomResourceProviderProps struct {
// The state machine.
StateMachine IStateMachine `field:"required" json:"stateMachine" yaml:"stateMachine"`
// Timeout.
Timeout awscdk.Duration `field:"optional" json:"timeout" yaml:"timeout"`
}
Properties for a StateMachineCustomResourceProvider.
type StaticWebsite ¶
type StaticWebsite interface {
constructs.Construct
// The S3 bucket of this static website.
Bucket() awss3.Bucket
// The CloudFront distribution of this static website.
Distribution() awscloudfront.Distribution
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
A CloudFront static website hosted on S3.
func NewStaticWebsite ¶
func NewStaticWebsite(scope constructs.Construct, id *string, props *StaticWebsiteProps) StaticWebsite
type StaticWebsiteProps ¶
type StaticWebsiteProps struct {
// The domain name for this static website.
//
// Example:
// www.my-static-website.com
//
DomainName *string `field:"required" json:"domainName" yaml:"domainName"`
// The hosted zone where records should be added.
HostedZone awsroute53.IHostedZone `field:"required" json:"hostedZone" yaml:"hostedZone"`
// A backend configuration that will be saved as `config.json` in the S3 bucket of the static website.
//
// The frontend can query this config by doing `fetch('/config.json')`.
//
// Example:
// { userPoolId: '1234', apiEndoint: 'https://www.my-api.com/api' }
//
BackendConfiguration interface{} `field:"optional" json:"backendConfiguration" yaml:"backendConfiguration"`
// A list of domain names that should redirect to `domainName`.
Redirects *[]*string `field:"optional" json:"redirects" yaml:"redirects"`
// Response headers policy for the default behavior.
ResponseHeadersPolicy awscloudfront.ResponseHeadersPolicy `field:"optional" json:"responseHeadersPolicy" yaml:"responseHeadersPolicy"`
}
Properties for a StaticWebsite.
type ToolkitCleaner ¶
type ToolkitCleaner interface {
constructs.Construct
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
Clean unused S3 and ECR assets from your CDK Toolkit.
func NewToolkitCleaner ¶
func NewToolkitCleaner(scope constructs.Construct, id *string, props *ToolkitCleanerProps) ToolkitCleaner
type ToolkitCleanerProps ¶
type ToolkitCleanerProps struct {
// Only output number of assets and total size that would be deleted but without actually deleting assets.
DryRun *bool `field:"optional" json:"dryRun" yaml:"dryRun"`
// Retain unused assets that were created recently.
RetainAssetsNewerThan awscdk.Duration `field:"optional" json:"retainAssetsNewerThan" yaml:"retainAssetsNewerThan"`
// The schedule for the cleaner.
Schedule awsevents.Schedule `field:"optional" json:"schedule" yaml:"schedule"`
// Whether to clean on schedule.
//
// If you'd like to run the cleanup manually
// via the console, set to `false`.
ScheduleEnabled *bool `field:"optional" json:"scheduleEnabled" yaml:"scheduleEnabled"`
}
Properties for a ToolkitCleaner.
type UrlShortener ¶
type UrlShortener interface {
constructs.Construct
// The underlying API Gateway REST API.
Api() awsapigateway.LambdaRestApi
// The endpoint of the URL shortener API.
ApiEndpoint() *string
// The tree node.
Node() constructs.Node
// Returns a string representation of this construct.
ToString() *string
}
URL shortener.
func NewUrlShortener ¶
func NewUrlShortener(scope constructs.Construct, id *string, props *UrlShortenerProps) UrlShortener
type UrlShortenerProps ¶
type UrlShortenerProps struct {
// The hosted zone for the short URLs domain.
HostedZone awsroute53.IHostedZone `field:"required" json:"hostedZone" yaml:"hostedZone"`
// Authorizer for API gateway.
ApiGatewayAuthorizer awsapigateway.IAuthorizer `field:"optional" json:"apiGatewayAuthorizer" yaml:"apiGatewayAuthorizer"`
// An interface VPC endpoint for API gateway.
//
// Specifying this property will
// make the API private.
// See: https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-apis.html
//
ApiGatewayEndpoint awsec2.IInterfaceVpcEndpoint `field:"optional" json:"apiGatewayEndpoint" yaml:"apiGatewayEndpoint"`
// A name for the bucket saving the redirects.
BucketName *string `field:"optional" json:"bucketName" yaml:"bucketName"`
// Allowed origins for CORS.
CorsAllowOrigins *[]*string `field:"optional" json:"corsAllowOrigins" yaml:"corsAllowOrigins"`
// Expiration for short urls.
Expiration awscdk.Duration `field:"optional" json:"expiration" yaml:"expiration"`
// The record name to use in the hosted zone.
RecordName *string `field:"optional" json:"recordName" yaml:"recordName"`
}
Properties for a UrlShortener.
Source Files
¶
- cloudstructs.go
- cloudstructs_CodeCommitMirror.go
- cloudstructs_CodeCommitMirrorProps.go
- cloudstructs_CodeCommitMirrorSourceRepository.go
- cloudstructs_EcsServiceRoller.go
- cloudstructs_EcsServiceRollerProps.go
- cloudstructs_EmailReceiver.go
- cloudstructs_EmailReceiverProps.go
- cloudstructs_IStateMachine.go
- cloudstructs_RollTrigger.go
- cloudstructs_SamlFederatedPrincipal.go
- cloudstructs_SamlIdentityProvider.go
- cloudstructs_SamlIdentityProviderProps.go
- cloudstructs_SlackApp.go
- cloudstructs_SlackAppManifest.go
- cloudstructs_SlackAppManifestAppHome.go
- cloudstructs_SlackAppManifestDefinition.go
- cloudstructs_SlackAppManifestEventSubscriptions.go
- cloudstructs_SlackAppManifestInteractivity.go
- cloudstructs_SlackAppManifestOauthConfig.go
- cloudstructs_SlackAppManifestProps.go
- cloudstructs_SlackAppManifestSettings.go
- cloudstructs_SlackAppManifestShortcut.go
- cloudstructs_SlackAppManifestShortcutType.go
- cloudstructs_SlackAppManifestSlashCommand.go
- cloudstructs_SlackAppManifestWorkflowStep.go
- cloudstructs_SlackAppProps.go
- cloudstructs_SlackEvents.go
- cloudstructs_SlackEventsProps.go
- cloudstructs_SlackTextract.go
- cloudstructs_SlackTextractProps.go
- cloudstructs_SlackkAppManifestBotUser.go
- cloudstructs_SslServerTest.go
- cloudstructs_SslServerTestGrade.go
- cloudstructs_SslServerTestProps.go
- cloudstructs_StateMachineCustomResourceProvider.go
- cloudstructs_StateMachineCustomResourceProviderProps.go
- cloudstructs_StaticWebsite.go
- cloudstructs_StaticWebsiteProps.go
- cloudstructs_ToolkitCleaner.go
- cloudstructs_ToolkitCleanerProps.go
- cloudstructs_UrlShortener.go
- cloudstructs_UrlShortenerProps.go