Documentation
¶
Index ¶
- Constants
- func CreateTemplate(stack string, containers []clouds.Container) (*cloudformation.Template, error)
- func FetchThumbprints(iss string) ([]string, error)
- func MakeQuickCreateURL(templateURL string, args QuickCreateArgs) (string, error)
- func OptionVPCAndSubnetID(ctx context.Context, vpcID, subnetID string) func(clouds.Driver) error
- type AwsEcsCfn
- func (a *AwsEcsCfn) FillOutputs(ctx context.Context) error
- func (a *AwsEcsCfn) GetInfo(ctx context.Context, taskArn awsecs.TaskArn) (*clouds.TaskInfo, error)
- func (a *AwsEcsCfn) Run(ctx context.Context, env map[string]string, cmd ...string) (awsecs.TaskArn, error)
- func (a *AwsEcsCfn) SetUp(ctx context.Context, containers []clouds.Container) error
- func (a *AwsEcsCfn) Stop(ctx context.Context, taskArn awsecs.TaskArn) error
- func (a *AwsEcsCfn) Tail(ctx context.Context, taskArn awsecs.TaskArn) error
- func (a *AwsEcsCfn) TearDown(ctx context.Context) error
- type ErrStackNotFoundException
- type Jwk
- type JwkSet
- type OIDCProvider
- type OpenIdConfiguration
- type QuickCreateArgs
Constants ¶
const ( OutputsBucketName = "bucketName" OutputsCIRoleARN = "ciRoleArn" OutputsClusterName = "clusterName" OutputsDefaultSecurityGroupID = "defaultSecurityGroupId" OutputsLogGroupARN = "logGroupArn" OutputsSecurityGroupID = "securityGroupId" OutputsSubnetID = "subnetId" OutputsTaskDefArn = "taskDefArn" OutputsTemplateVersion = "templateVersion" )
const ( ParamsCIRoleName = "CIRoleName" ParamsDockerHubAccessToken = "DockerHubAccessToken" ParamsDockerHubUsername = "DockerHubUsername" ParamsEnablePullThroughCache = "EnablePullThroughCache" ParamsExistingVpcId = "ExistingVpcId" ParamsOidcProviderAudiences = "OidcProviderAudiences" ParamsOidcProviderClaims = "OidcProviderClaims" ParamsOidcProviderIssuer = "OidcProviderIssuer" ParamsOidcProviderSubjects = "OidcProviderSubjects" ParamsOidcProviderThumbprints = "OidcProviderThumbprints" ParamsRetainBucket = "RetainBucket" )
const ( TagKeyCreatedBy = "defang:CreatedBy" TagKeyManagedBy = "defang:ManagedBy" TagKeyPrefix = "defang:Prefix" TagKeyStackName = "defang:CloudFormationStackName" TagKeyStackRegion = "defang:CloudFormationStackRegion" )
const TemplateRevision = 2 // bump this when the template changes!
Variables ¶
This section is empty.
Functions ¶
func CreateTemplate ¶
CreateStaticTemplate creates a parameterized CloudFormation template that can be statically served All conditional logic is moved to CloudFormation parameters and conditions. This allows the template to be generated once and reused across different deployments by providing different parameter values during stack creation/update.
Parameters supported: - ExistingVpcId: VPC ID string or empty to create new VPC - RetainBucket: "true"/"false" - Whether to retain S3 bucket on stack deletion - EnablePullThroughCache: "true"/"false" - Whether to enable ECR pull-through cache - DockerHubUsername: Username for Docker Hub authentication (optional) - DockerHubAccessToken: Access token for Docker Hub authentication (optional) - OidcProviderIssuer: OIDC provider trusted issuer (optional) - OidcProviderSubjects: Comma-delimited list of OIDC provider trusted subject patterns (optional) - OidcProviderThumbprints: Comma-delimited list of OIDC provider thumbprints (optional)
func FetchThumbprints ¶
func MakeQuickCreateURL ¶
func MakeQuickCreateURL(templateURL string, args QuickCreateArgs) (string, error)
Types ¶
type AwsEcsCfn ¶
type ErrStackNotFoundException ¶
type ErrStackNotFoundException = cfnTypes.StackNotFoundException
type OIDCProvider ¶
type OIDCProvider struct {
// ClientIdList AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html#cfn-iam-oidcprovider-clientidlist
ClientIdList interface{} `json:"ClientIdList,omitempty"`
// Tags AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html#cfn-iam-oidcprovider-tags
Tags []tags.Tag `json:"Tags,omitempty"`
// ThumbprintList AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html#cfn-iam-oidcprovider-thumbprintlist
ThumbprintList interface{} `json:"ThumbprintList,omitempty"` // added "omitempty" to fix marshalling bug
// Url AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html#cfn-iam-oidcprovider-url
Url *string `json:"Url,omitempty"`
// AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy
AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"`
// AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy
AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"`
// AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource
AWSCloudFormationDependsOn []string `json:"-"`
// AWSCloudFormationMetadata stores structured data associated with this resource
AWSCloudFormationMetadata map[string]interface{} `json:"-"`
// AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created
AWSCloudFormationCondition string `json:"-"`
}
OIDCProvider AWS CloudFormation Resource (AWS::IAM::OIDCProvider) See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html
func (*OIDCProvider) AWSCloudFormationType ¶
func (r *OIDCProvider) AWSCloudFormationType() string
AWSCloudFormationType returns the AWS CloudFormation resource type
func (OIDCProvider) MarshalJSON ¶
func (r OIDCProvider) MarshalJSON() ([]byte, error)
MarshalJSON is a custom JSON marshalling hook that embeds this object into an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'.
func (*OIDCProvider) UnmarshalJSON ¶
func (r *OIDCProvider) UnmarshalJSON(b []byte) error
UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer AWS CloudFormation resource object, and just keeps the 'Properties' field.
type OpenIdConfiguration ¶
type OpenIdConfiguration struct {
JwksUri string `json:"jwks_uri"`
}