cfn

package
v0.0.0-...-60236ee Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 27, 2026 License: MIT Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OutputsBucketName           = "bucketName"
	OutputsCIRoleARN            = "ciRoleArn"
	OutputsCodeBuildProjectName = "codeBuildProjectName"
	OutputsLogGroupARN          = "logGroupArn"
	OutputsTemplateVersion      = "templateVersion"
)
View Source
const (
	ParamsCIRoleName              = "CIRoleName"              // Name of the CI IAM role (optional)
	ParamsOidcProviderAudiences   = "OidcProviderAudiences"   // Comma-delimited list of OIDC provider trusted audiences (optional)
	ParamsOidcProviderClaims      = "OidcProviderClaims"      // Comma-delimited list of additional OIDC claim conditions as JSON "key":"value" pairs (optional)
	ParamsOidcProviderIssuer      = "OidcProviderIssuer"      // OIDC provider trusted issuer (optional)
	ParamsOidcProviderSubjects    = "OidcProviderSubjects"    // Comma-delimited list of OIDC provider trusted subject patterns (optional)
	ParamsOidcProviderThumbprints = "OidcProviderThumbprints" // Comma-delimited list of OIDC provider thumbprints (optional)
	ParamsRetainBucket            = "RetainBucket"            // "true"/"false" - Whether to retain S3 bucket on stack deletion
)
View Source
const (
	TagKeyCreatedBy   = "defang:CreatedBy"
	TagKeyManagedBy   = "defang:ManagedBy"
	TagKeyPrefix      = "defang:Prefix"
	TagKeyStackName   = "defang:CloudFormationStackName"
	TagKeyStackRegion = "defang:CloudFormationStackRegion"
)
View Source
const TemplateRevision = 4 // bump this when the template changes!

Variables

This section is empty.

Functions

func CreateTemplate

func CreateTemplate(stack string) (*cloudformation.Template, error)

CreateTemplate creates a parameterized CloudFormation template for the CD infrastructure. Uses CodeBuild instead of ECS for running Pulumi deployments.

func FetchThumbprints

func FetchThumbprints(iss string) ([]string, error)

func MakeQuickCreateURL

func MakeQuickCreateURL(templateURL string, args QuickCreateArgs) (string, error)

Types

type AwsCfn

type AwsCfn struct {
	awscodebuild.AwsCodeBuild
	// contains filtered or unexported fields
}

func New

func New(stack string, region region.Region) *AwsCfn

func (*AwsCfn) FillOutputs

func (a *AwsCfn) FillOutputs(ctx context.Context) error

func (*AwsCfn) SetUp

func (a *AwsCfn) SetUp(ctx context.Context, force bool) (bool, error)

func (*AwsCfn) TearDown

func (a *AwsCfn) TearDown(ctx context.Context) error

type ErrStackNotFoundException

type ErrStackNotFoundException = cfnTypes.StackNotFoundException

type Jwk

type Jwk struct {
	Kty string   `json:"kty"`
	Kid string   `json:"kid,omitempty"`
	Alg string   `json:"alg,omitempty"`
	Use string   `json:"use,omitempty"`
	N   string   `json:"n,omitempty"`   // RSA modulus, base64url-encoded
	E   string   `json:"e,omitempty"`   // RSA exponent, base64url-encoded
	X5c [][]byte `json:"x5c,omitempty"` // DER-encoded cert(s)
	X5t string   `json:"x5t,omitempty"` // base64url-encoded
}

type JwkSet

type JwkSet struct {
	Keys []Jwk `json:"keys"`
}

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"`
}

type QuickCreateArgs

type QuickCreateArgs struct {
	Region    string
	StackName string
	Params    map[string]string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL