Documentation ¶
Index ¶
- Constants
- Variables
- type AppMesh
- type Architecture
- type AwsLogConfig
- type Capacity
- type CapacityProvider
- type CapacitySimple
- type ClusterArn
- type CommonContainerAttrs
- type CommonTaskAttrs
- type ConsoleTask
- func (con *ConsoleTask) ApplyDefaults()
- func (obj *ConsoleTask) IsEnabled() bool
- func (obj ConsoleTask) IsTaskStruct() bool
- func (ConsoleTask) JSONSchemaExtend(base *jsonschema.Schema)
- func (obj *ConsoleTask) MarshalJSON() ([]byte, error)
- func (con *ConsoleTask) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (con *ConsoleTask) Validate() error
- type Context
- type ContextCache
- type ContextEnv
- type CpuSpec
- type CronJob
- type DependsOn
- type Duration
- func (Duration) JSONSchema() *jsonschema.Schema
- func (obj *Duration) MarshalJSON() ([]byte, error)
- func (obj *Duration) MarshalYAML() (interface{}, error)
- func (obj *Duration) String() string
- func (obj Duration) ToAwsInt32() int32
- func (obj Duration) ToDuration() time.Duration
- func (a *Duration) UnmarshalYAML(unmarshal func(interface{}) error) error
- type EcsDeployerOptions
- func (obj *EcsDeployerOptions) ApplyDefaults()
- func (obj *EcsDeployerOptions) IsAllowedAccountId(acct string) bool
- func (obj *EcsDeployerOptions) IsVersionAllowed(versionStr string) (bool, []error)
- func (EcsDeployerOptions) JSONSchemaExtend(base *jsonschema.Schema)
- func (obj *EcsDeployerOptions) Validate() error
- type EnvVar
- func (e EnvVar) GetValue(tplRef any) (string, error)
- func (e EnvVar) IsPlain() bool
- func (e EnvVar) IsSSM() bool
- func (e EnvVar) IsTemplated() bool
- func (e EnvVar) IsUnset() bool
- func (EnvVar) JSONSchema() *jsonschema.Schema
- func (ev EnvVar) MarshalJSON() ([]byte, error)
- func (a *EnvVar) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (a *EnvVar) Validate() error
- type EnvVarMap
- type EnvVarType
- type FargateDefaults
- type FirelensAwsLogGroup
- type FirelensConfig
- type HealthCheck
- type ImageDigestAlg
- type ImageUri
- func (obj *ImageUri) ApplyDefaults()
- func (obj *ImageUri) IsResolved() bool
- func (ImageUri) JSONSchema() *jsonschema.Schema
- func (obj *ImageUri) MarshalJSON() ([]byte, error)
- func (obj *ImageUri) Parse(value string)
- func (img *ImageUri) Resolve(ctx *Context) (string, error)
- func (obj *ImageUri) SetResolved(value string)
- func (a *ImageUri) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (img *ImageUri) UsesDigest() bool
- func (def *ImageUri) Validate() error
- func (img *ImageUri) Value() string
- type IsTaskStruct
- type KeepInSync
- type LoadBalancer
- type LoadBalancers
- type LogRetention
- func (obj *LogRetention) Days() int32
- func (obj *LogRetention) EqualsLogGroup(group logTypes.LogGroup) bool
- func (obj *LogRetention) Forever() bool
- func (LogRetention) JSONSchema() *jsonschema.Schema
- func (obj LogRetention) MarshalJSON() ([]byte, error)
- func (obj *LogRetention) ToAwsInt32() *int32
- func (a *LogRetention) UnmarshalYAML(unmarshal func(interface{}) error) error
- type LoggingConfig
- type MemorySpec
- func (m *MemorySpec) Equals(other *MemorySpec) bool
- func (m *MemorySpec) GetValueOnly() int32
- func (MemorySpec) JSONSchema() *jsonschema.Schema
- func (obj MemorySpec) MarshalJSON() ([]byte, error)
- func (m *MemorySpec) MegabytesFromCpu(cpu *CpuSpec) (int32, error)
- func (m *MemorySpec) MegabytesPtrFromCpu(cpu *CpuSpec) (*int32, error)
- func (obj *MemorySpec) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (m *MemorySpec) Validate() error
- type NameArn
- func (obj *NameArn) AwsArn(ctx *Context, resolve resolverFunc) (*arn.ARN, error)
- func (obj *NameArn) InferArn(ctx *Context) (string, error)
- func (obj *NameArn) InferName(ctx *Context) (string, error)
- func (NameArn) JSONSchema() *jsonschema.Schema
- func (obj *NameArn) MarshalJSON() ([]byte, error)
- func (obj *NameArn) MarshalYAML() error
- func (obj *NameArn) Name(ctx *Context) (string, error)
- func (obj *NameArn) ParseFromString(value string) error
- func (obj *NameArn) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (obj *NameArn) Validate() error
- type NameTemplates
- type NameValuePair
- type NetworkConfiguration
- func (nc *NetworkConfiguration) ApplyDefaults()
- func (nc *NetworkConfiguration) IsResolveError() bool
- func (nc *NetworkConfiguration) IsResolved() bool
- func (nc *NetworkConfiguration) ResolveCWE(ctx *Context) (*eventTypes.NetworkConfiguration, error)
- func (nc *NetworkConfiguration) ResolveECS(ctx *Context) (*ecsTypes.NetworkConfiguration, error)
- func (nc *NetworkConfiguration) ResolveSched(ctx *Context) (*schedulerTypes.NetworkConfiguration, error)
- func (a *NetworkConfiguration) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (nc *NetworkConfiguration) Validate() error
- type NetworkFilter
- func (nf *NetworkFilter) IdSpecified() bool
- func (NetworkFilter) JSONSchema() *jsonschema.Schema
- func (obj *NetworkFilter) MarshalJSON() ([]byte, error)
- func (nf *NetworkFilter) ToAws() ec2Types.Filter
- func (a *NetworkFilter) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (nf *NetworkFilter) Validate() error
- type PortMapping
- type PreDeployTask
- type Project
- func (project *Project) ApplyDefaults()
- func (obj *Project) ApproxNumTasks() int
- func (Project) JSONSchemaExtend(base *jsonschema.Schema)
- func (obj *Project) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (project *Project) Validate() error
- func (project *Project) ValidateWithContext(ctx *Context) error
- type RoleArn
- type RolloutConfig
- func (dc *RolloutConfig) GetAwsConfig() *ecsTypes.DeploymentConfiguration
- func (obj *RolloutConfig) GetMinMaxCount(count int32) (int32, int32)
- func (obj *RolloutConfig) MaximumPercent() float64
- func (obj *RolloutConfig) MinimumPercent() float64
- func (a *RolloutConfig) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (def *RolloutConfig) Validate() error
- func (obj *RolloutConfig) ValidateWithDesiredCount(count int32) error
- type SSMImport
- func (obj *SSMImport) ApplyDefaults()
- func (obj *SSMImport) GetPath() string
- func (obj *SSMImport) IsEnabled() bool
- func (SSMImport) JSONSchemaExtend(base *jsonschema.Schema)
- func (obj *SSMImport) MarshalJSON() ([]byte, error)
- func (a *SSMImport) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (obj *SSMImport) Validate() error
- type Service
- func (obj *Service) ApplyDefaults()
- func (svc *Service) IsLoadBalanced() bool
- func (obj *Service) IsTaskStruct() bool
- func (svc *Service) IsWorker() bool
- func (Service) JSONSchemaExtend(base *jsonschema.Schema)
- func (a *Service) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (obj *Service) Validate() error
- type Settings
- type ShellCommand
- type Sidecar
- type SpotOverrides
- func (obj *SpotOverrides) ApplyDefaults()
- func (obj *SpotOverrides) ExportCapacityStrategy() []ecsTypes.CapacityProviderStrategyItem
- func (obj *SpotOverrides) ExportCapacityStrategyEventBridge() []eventTypes.CapacityProviderStrategyItem
- func (obj *SpotOverrides) ExportCapacityStrategyScheduler() []schedulerTypes.CapacityProviderStrategyItem
- func (obj *SpotOverrides) IsDisabled() bool
- func (SpotOverrides) JSONSchema() *jsonschema.Schema
- func (obj *SpotOverrides) MarshalJSON() ([]byte, error)
- func (obj *SpotOverrides) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (obj *SpotOverrides) Validate() error
- func (obj *SpotOverrides) WantsOnDemand() bool
- type StorageSpec
- type TargetGroupArn
- type TaskLoggingConfig
- type ValidationError
- type VersionConstraint
- func (obj *VersionConstraint) Check(ver *semver.Version) bool
- func (VersionConstraint) JSONSchema() *jsonschema.Schema
- func (obj VersionConstraint) MarshalJSON() ([]byte, error)
- func (obj *VersionConstraint) String() string
- func (a *VersionConstraint) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (obj *VersionConstraint) Validate(ver *semver.Version) (bool, []error)
- type WaitForStable
- func (obj *WaitForStable) ApplyDefaults()
- func (wfs *WaitForStable) IsDisabled() bool
- func (WaitForStable) JSONSchemaExtend(base *jsonschema.Schema)
- func (a *WaitForStable) UnmarshalYAML(unmarshal func(interface{}) error) error
- func (def *WaitForStable) Validate() error
- func (a *WaitForStable) WaitIndividually() bool
Constants ¶
const (
ConsoleTaskContainerName = "console"
)
const LoggingDisableFlag = "none"
Provide this value to the Driver or Type fields to disable
Variables ¶
var DefaultCronEnvVars = map[string]string{
"ECSDEPLOYER_CRON_SCHEDULE_ARN": "<aws.scheduler.schedule-arn>",
"ECSDEPLOYER_CRON_SCHEDULED_TIME": "<aws.scheduler.scheduled-time>",
"ECSDEPLOYER_CRON_EXECUTION_ID": "<aws.scheduler.execution-id>",
"ECSDEPLOYER_CRON_ATTEMPT": "<aws.scheduler.attempt-number>",
}
var DefaultDeploymentEnvVars = map[string]string{
"ECSDEPLOYER_PROJECT": "{{ .Project }}",
"ECSDEPLOYER_TASK_NAME": "{{ .Name }}",
"ECSDEPLOYER_STAGE": "{{ .Stage }}",
"ECSDEPLOYER_DEPLOYED_AT": "{{ .Date }}",
"ECSDEPLOYER_APP_VERSION": "{{ .Version }}",
"ECSDEPLOYER_IMAGE_TAG": "{{ .ImageTag }}",
}
var (
ErrInvalidLogRetention = errors.New("invalid log retention")
)
var (
ErrNetworkFilterFormatError error
)
var ErrValidation = errors.New("config validation error")
Functions ¶
This section is empty.
Types ¶
type AppMesh ¶
type AppMesh struct { Type *string `yaml:"type,omitempty" json:"type,omitempty"` ContainerName *string `yaml:"container_name,omitempty" json:"container_name,omitempty"` Properties map[string]string `yaml:"properties,omitempty" json:"properties,omitempty"` }
func (*AppMesh) ApplyDefaults ¶
func (nc *AppMesh) ApplyDefaults()
type Architecture ¶
type Architecture string
const ( ArchitectureARM64 Architecture = "arm64" ArchitectureAMD64 Architecture = "amd64" )
type AwsLogConfig ¶
type AwsLogConfig struct { Disabled bool `yaml:"disabled,omitempty" json:"disabled,omitempty"` Retention *LogRetention `yaml:"retention,omitempty" json:"retention,omitempty"` Options EnvVarMap `yaml:"options,omitempty" json:"options,omitempty"` }
Project level
func (*AwsLogConfig) ApplyDefaults ¶
func (obj *AwsLogConfig) ApplyDefaults()
func (*AwsLogConfig) IsDisabled ¶
func (obj *AwsLogConfig) IsDisabled() bool
func (AwsLogConfig) JSONSchemaExtend ¶
func (AwsLogConfig) JSONSchemaExtend(base *jsonschema.Schema)
func (*AwsLogConfig) UnmarshalYAML ¶
func (obj *AwsLogConfig) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*AwsLogConfig) Validate ¶
func (obj *AwsLogConfig) Validate() error
type Capacity ¶
type Capacity struct { SpotDisabled bool `yaml:"spot_disabled,omitempty" json:"spot_disabled,omitempty"` Spot *CapacitySimple `yaml:"spot,omitempty" json:"spot,omitempty"` OnDemand *CapacitySimple `yaml:"ondemand,omitempty" json:"ondemand,omitempty"` // Custom CapacityProvider specification Providers []CapacityProvider `yaml:"providers,omitempty" json:"providers,omitempty"` }
func (*Capacity) ApplyDefaults ¶
func (obj *Capacity) ApplyDefaults()
func (*Capacity) UnmarshalYAML ¶
type CapacityProvider ¶
type CapacityProvider struct { Provider *string `yaml:"provider" json:"provider"` Base *int32 `yaml:"base" json:"base"` Weight *int32 `yaml:"weight" json:"weight"` }
func (*CapacityProvider) ApplyDefaults ¶
func (obj *CapacityProvider) ApplyDefaults()
func (*CapacityProvider) Validate ¶
func (obj *CapacityProvider) Validate() error
type CapacitySimple ¶
type ClusterArn ¶
type ClusterArn struct {
NameArn
}
type CommonContainerAttrs ¶
type CommonContainerAttrs struct { Name string `yaml:"name,omitempty" json:"name,omitempty" jsonschema:"pattern=^[a-zA-Z][-_a-zA-Z0-9]*$"` Command *ShellCommand `yaml:"command,omitempty" json:"command,omitempty"` EntryPoint *ShellCommand `yaml:"entrypoint,omitempty" json:"entrypoint,omitempty"` Image *ImageUri `yaml:"image,omitempty" json:"image,omitempty"` Credentials *string `yaml:"credentials,omitempty" json:"credentials,omitempty"` Cpu *CpuSpec `yaml:"cpu,omitempty" json:"cpu,omitempty"` Memory *MemorySpec `yaml:"memory,omitempty" json:"memory,omitempty"` EnvVars EnvVarMap `yaml:"environment,omitempty" json:"environment,omitempty"` StartTimeout *Duration `yaml:"start_timeout,omitempty" json:"start_timeout,omitempty"` StopTimeout *Duration `yaml:"stop_timeout,omitempty" json:"stop_timeout,omitempty"` DockerLabels []NameValuePair `yaml:"labels,omitempty" json:"labels,omitempty"` DependsOn []DependsOn `yaml:"depends_on,omitempty" json:"depends_on,omitempty"` LoggingConfig *TaskLoggingConfig `yaml:"logging,omitempty" json:"logging,omitempty"` HealthCheck *HealthCheck `yaml:"healthcheck,omitempty" json:"healthcheck,omitempty"` }
func (*CommonContainerAttrs) TemplateFields ¶
func (cta *CommonContainerAttrs) TemplateFields() map[string]interface{}
func (*CommonContainerAttrs) Validate ¶
func (cta *CommonContainerAttrs) Validate() error
type CommonTaskAttrs ¶
type CommonTaskAttrs struct { CommonContainerAttrs `yaml:",inline" json:",inline"` Storage *StorageSpec `yaml:"storage,omitempty" json:"storage,omitempty"` Architecture *Architecture `yaml:"arch,omitempty" json:"arch,omitempty" jsonschema:"enum=arm64,enum=amd64,description=Task CPU Architecture"` PlatformVersion *string `` /* 132-byte string literal not displayed */ Tags []NameValuePair `yaml:"tags,omitempty" json:"tags,omitempty"` Network *NetworkConfiguration `yaml:"network,omitempty" json:"network,omitempty"` Sidecars []*Sidecar `yaml:"sidecars,omitempty" json:"sidecars,omitempty" jsonschema:"-"` }
func ExtractCommonTaskAttrs ¶
func ExtractCommonTaskAttrs(obj any) (*CommonTaskAttrs, error)
func (*CommonTaskAttrs) IsTaskStruct ¶
func (c *CommonTaskAttrs) IsTaskStruct() bool
func (*CommonTaskAttrs) TemplateFields ¶
func (cta *CommonTaskAttrs) TemplateFields() map[string]interface{}
func (*CommonTaskAttrs) Validate ¶
func (cta *CommonTaskAttrs) Validate() error
type ConsoleTask ¶
type ConsoleTask struct { CommonTaskAttrs `yaml:",inline" json:",inline"` PortMapping *PortMapping `yaml:"port,omitempty" json:"port,omitempty"` Enabled *bool `yaml:"enabled,omitempty" json:"enabled,omitempty"` Path *string `yaml:"path,omitempty" json:"path,omitempty"` }
func (*ConsoleTask) ApplyDefaults ¶
func (con *ConsoleTask) ApplyDefaults()
func (*ConsoleTask) IsEnabled ¶
func (obj *ConsoleTask) IsEnabled() bool
func (ConsoleTask) IsTaskStruct ¶
func (obj ConsoleTask) IsTaskStruct() bool
func (ConsoleTask) JSONSchemaExtend ¶
func (ConsoleTask) JSONSchemaExtend(base *jsonschema.Schema)
func (*ConsoleTask) MarshalJSON ¶
func (obj *ConsoleTask) MarshalJSON() ([]byte, error)
func (*ConsoleTask) UnmarshalYAML ¶
func (con *ConsoleTask) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*ConsoleTask) Validate ¶
func (con *ConsoleTask) Validate() error
type Context ¶
type Context struct { stdctx.Context Project *Project Date time.Time Env ContextEnv Deprecated bool // app info Version string ImageTag string ImageUriRef string Stage string Cache *ContextCache // contains filtered or unexported fields }
func NewFromYAML ¶
This is mainly used in tests, and will load a project from a YAML and then instantiate a Context
func NewWithTimeout ¶
NewWithTimeout new context with the given timeout.
func (*Context) AwsAccountId ¶
func (*Context) ClusterName ¶
type ContextCache ¶
type ContextEnv ¶
func ToEnv ¶
func ToEnv(env []string) ContextEnv
ToEnv converts a list of strings to an Env (aka a map[string]string).
type CpuSpec ¶
type CpuSpec int32
func NewCpuSpec ¶
func ParseCpuSpec ¶
Eventually, this can be used to accept "1 vcpu" or "1.5 vCPU" etc
func (*CpuSpec) ApplyDefaults ¶
func (nc *CpuSpec) ApplyDefaults()
func (CpuSpec) JSONSchema ¶
func (CpuSpec) JSONSchema() *jsonschema.Schema
func (*CpuSpec) UnmarshalYAML ¶
type CronJob ¶
type CronJob struct { CommonTaskAttrs `yaml:",inline" json:",inline"` Disabled bool `yaml:"disabled,omitempty" json:"disabled,omitempty"` Description string `yaml:"description,omitempty" json:"description,omitempty"` Schedule string `yaml:"schedule" json:"schedule" jsonschema:"minLength=5"` TimeZone *string `yaml:"timezone,omitempty" json:"timezone,omitempty"` EventBusName *string `yaml:"bus,omitempty" json:"bus,omitempty"` StartDate *time.Time `yaml:"start_date,omitempty" json:"start_date,omitempty"` EndDate *time.Time `yaml:"end_date,omitempty" json:"end_date,omitempty"` }
func (*CronJob) ApplyDefaults ¶
func (obj *CronJob) ApplyDefaults()
func (*CronJob) IsDisabled ¶
func (*CronJob) IsTaskStruct ¶
func (CronJob) JSONSchemaExtend ¶
func (CronJob) JSONSchemaExtend(base *jsonschema.Schema)
func (*CronJob) UnmarshalYAML ¶
type DependsOn ¶
type DependsOn struct { Condition ecsTypes.ContainerCondition `yaml:"condition" json:"condition"` Name *string `yaml:"name" json:"name"` }
func NewDependsOnFromString ¶
func (*DependsOn) ApplyDefaults ¶
func (obj *DependsOn) ApplyDefaults()
func (DependsOn) JSONSchema ¶
func (DependsOn) JSONSchema() *jsonschema.Schema
func (*DependsOn) UnmarshalYAML ¶
type Duration ¶
type Duration struct {
// contains filtered or unexported fields
}
func NewDurationFromString ¶
func NewDurationFromUint ¶
func (Duration) JSONSchema ¶
func (Duration) JSONSchema() *jsonschema.Schema
func (*Duration) MarshalJSON ¶
func (*Duration) MarshalYAML ¶
func (Duration) ToAwsInt32 ¶
func (Duration) ToDuration ¶
func (*Duration) UnmarshalYAML ¶
type EcsDeployerOptions ¶
type EcsDeployerOptions struct { RequiredVersion *VersionConstraint `yaml:"required_version,omitempty" json:"required_version,omitempty"` AllowedAccountId *string `yaml:"allowed_account_id,omitempty" json:"allowed_account_id,omitempty"` }
func (*EcsDeployerOptions) ApplyDefaults ¶
func (obj *EcsDeployerOptions) ApplyDefaults()
func (*EcsDeployerOptions) IsAllowedAccountId ¶
func (obj *EcsDeployerOptions) IsAllowedAccountId(acct string) bool
func (*EcsDeployerOptions) IsVersionAllowed ¶
func (obj *EcsDeployerOptions) IsVersionAllowed(versionStr string) (bool, []error)
func (EcsDeployerOptions) JSONSchemaExtend ¶
func (EcsDeployerOptions) JSONSchemaExtend(base *jsonschema.Schema)
func (*EcsDeployerOptions) Validate ¶
func (obj *EcsDeployerOptions) Validate() error
type EnvVar ¶
type EnvVar struct { ValueTemplate *string `yaml:"template,omitempty" json:"template,omitempty"` ValueSSM *string `yaml:"ssm,omitempty" json:"ssm,omitempty"` Value *string `yaml:"value,omitempty" json:"value,omitempty"` Unset bool `yaml:"unset,omitempty" json:"unset,omitempty"` }
func NewEnvVar ¶
func NewEnvVar(vartype EnvVarType, value string) EnvVar
func (EnvVar) IsTemplated ¶
func (EnvVar) JSONSchema ¶
func (EnvVar) JSONSchema() *jsonschema.Schema
func (EnvVar) MarshalJSON ¶
func (*EnvVar) UnmarshalYAML ¶
type EnvVarMap ¶
func MergeEnvVarMaps ¶
func (EnvVarMap) Filter ¶
Filters a map of env vars and removes any Unset values You should only use this at the very very end of an evaluation tree. (i.e. after merging parent maps)
func (EnvVarMap) JSONSchemaExtend ¶
func (EnvVarMap) JSONSchemaExtend(base *jsonschema.Schema)
type EnvVarType ¶
type EnvVarType int
const ( EnvVarTypePlain EnvVarType = iota EnvVarTypeSSM EnvVarTypeTemplated EnvVarTypeUnset )
type FargateDefaults ¶
type FargateDefaults struct { CommonTaskAttrs `yaml:",inline" json:",inline"` SpotOverride *SpotOverrides `yaml:"spot,omitempty" json:"spot,omitempty"` }
func (*FargateDefaults) ApplyDefaults ¶
func (obj *FargateDefaults) ApplyDefaults()
func (FargateDefaults) JSONSchemaExtend ¶
func (FargateDefaults) JSONSchemaExtend(base *jsonschema.Schema)
func (*FargateDefaults) UnmarshalYAML ¶
func (obj *FargateDefaults) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*FargateDefaults) Validate ¶
func (obj *FargateDefaults) Validate() error
type FirelensAwsLogGroup ¶
type FirelensAwsLogGroup struct {
Path string
}
func (*FirelensAwsLogGroup) Enabled ¶
func (obj *FirelensAwsLogGroup) Enabled() bool
func (FirelensAwsLogGroup) JSONSchema ¶
func (FirelensAwsLogGroup) JSONSchema() *jsonschema.Schema
func (FirelensAwsLogGroup) MarshalJSON ¶
func (obj FirelensAwsLogGroup) MarshalJSON() ([]byte, error)
func (*FirelensAwsLogGroup) UnmarshalYAML ¶
func (obj *FirelensAwsLogGroup) UnmarshalYAML(unmarshal func(interface{}) error) error
type FirelensConfig ¶
type FirelensConfig struct { Disabled bool `yaml:"disabled,omitempty" json:"disabled,omitempty"` Type *string `yaml:"type,omitempty" json:"type,omitempty"` Name *string `yaml:"container_name,omitempty" json:"container_name,omitempty"` Options EnvVarMap `yaml:"options,omitempty" json:"options,omitempty"` EnvVars EnvVarMap `yaml:"environment,omitempty" json:"environment,omitempty"` Credentials *string `yaml:"credentials,omitempty" json:"credentials,omitempty"` InheritEnv *bool `yaml:"inherit_env,omitempty" json:"inherit_env,omitempty"` Image *ImageUri `yaml:"image,omitempty" json:"image,omitempty"` Memory *MemorySpec `yaml:"memory,omitempty" json:"memory,omitempty"` // should we log the firelens container to AWSLogs (not the app logs, but firelens itself) LogToAwsLogs *FirelensAwsLogGroup `yaml:"log_to_awslogs,omitempty" json:"log_to_awslogs,omitempty"` }
func (*FirelensConfig) ApplyDefaults ¶
func (obj *FirelensConfig) ApplyDefaults()
func (*FirelensConfig) IsDisabled ¶
func (obj *FirelensConfig) IsDisabled() bool
func (FirelensConfig) JSONSchemaExtend ¶
func (FirelensConfig) JSONSchemaExtend(base *jsonschema.Schema)
func (*FirelensConfig) UnmarshalYAML ¶
func (obj *FirelensConfig) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*FirelensConfig) Validate ¶
func (obj *FirelensConfig) Validate() error
type HealthCheck ¶
type HealthCheck struct { Command []string `yaml:"command" json:"command"` Interval *Duration `yaml:"interval,omitempty" json:"interval,omitempty"` Retries *int32 `yaml:"retries,omitempty" json:"retries,omitempty"` StartPeriod *Duration `yaml:"start_period,omitempty" json:"start_period,omitempty"` Timeout *Duration `yaml:"timeout,omitempty" json:"timeout,omitempty"` }
func (*HealthCheck) ApplyDefaults ¶
func (obj *HealthCheck) ApplyDefaults()
func (*HealthCheck) Validate ¶
func (obj *HealthCheck) Validate() error
type ImageDigestAlg ¶
type ImageDigestAlg string
type ImageUri ¶
type ImageUri struct { Ecr *string `yaml:"ecr,omitempty" json:"ecr,omitempty"` Docker *string `yaml:"docker,omitempty" json:"docker,omitempty"` Tag *string `yaml:"tag,omitempty" json:"tag,omitempty"` Digest *string `yaml:"digest,omitempty" json:"digest,omitempty"` // contains filtered or unexported fields }
func NewImageUri ¶
func (*ImageUri) ApplyDefaults ¶
func (obj *ImageUri) ApplyDefaults()
func (*ImageUri) IsResolved ¶
func (ImageUri) JSONSchema ¶
func (ImageUri) JSONSchema() *jsonschema.Schema
func (*ImageUri) MarshalJSON ¶
func (*ImageUri) SetResolved ¶
func (*ImageUri) UnmarshalYAML ¶
func (*ImageUri) UsesDigest ¶
type IsTaskStruct ¶
type IsTaskStruct interface { // CommonTaskAttrs IsTaskStruct() bool }
type KeepInSync ¶
type KeepInSync struct { Services *bool `` /* 128-byte string literal not displayed */ LogRetention *bool `` /* 148-byte string literal not displayed */ Cronjobs *bool `` /* 128-byte string literal not displayed */ TaskDefinitions *bool `yaml:"task_definitions,omitempty" json:"task_definitions,omitempty" jsonschema:"description=Deregisters old task definitions"` }
Controls if we delete unused services/cron/predeploy
func NewKeepInSyncFromBool ¶
func NewKeepInSyncFromBool(val bool) KeepInSync
func (*KeepInSync) AllDisabled ¶
func (obj *KeepInSync) AllDisabled() bool
func (*KeepInSync) ApplyDefaults ¶
func (obj *KeepInSync) ApplyDefaults()
func (KeepInSync) JSONSchemaExtend ¶
func (KeepInSync) JSONSchemaExtend(base *jsonschema.Schema)
func (*KeepInSync) UnmarshalYAML ¶
func (a *KeepInSync) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*KeepInSync) Validate ¶
func (obj *KeepInSync) Validate() error
type LoadBalancer ¶
type LoadBalancer struct { // ContainerName *string `yaml:"container_name,omitempty" json:"container_name,omitempty"` PortMapping *PortMapping `yaml:"port" json:"port" jsonschema:"required"` TargetGroup *TargetGroupArn `yaml:"target_group" json:"target_group" jsonschema:"required"` GracePeriod *Duration `yaml:"grace,omitempty" json:"grace,omitempty"` }
func (*LoadBalancer) ApplyDefaults ¶
func (nc *LoadBalancer) ApplyDefaults()
func (*LoadBalancer) UnmarshalYAML ¶
func (a *LoadBalancer) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*LoadBalancer) Validate ¶
func (obj *LoadBalancer) Validate() error
type LoadBalancers ¶
type LoadBalancers []LoadBalancer
func (LoadBalancers) GetHealthCheckGracePeriod ¶
func (lbs LoadBalancers) GetHealthCheckGracePeriod() *int32
func (LoadBalancers) JSONSchemaExtend ¶
func (LoadBalancers) JSONSchemaExtend(base *jsonschema.Schema)
func (*LoadBalancers) UnmarshalYAML ¶
func (a *LoadBalancers) UnmarshalYAML(unmarshal func(interface{}) error) error
type LogRetention ¶
type LogRetention struct {
// contains filtered or unexported fields
}
func ParseLogRetention ¶
func (*LogRetention) Days ¶
func (obj *LogRetention) Days() int32
func (*LogRetention) EqualsLogGroup ¶
func (obj *LogRetention) EqualsLogGroup(group logTypes.LogGroup) bool
func (*LogRetention) Forever ¶
func (obj *LogRetention) Forever() bool
func (LogRetention) JSONSchema ¶
func (LogRetention) JSONSchema() *jsonschema.Schema
func (LogRetention) MarshalJSON ¶
func (obj LogRetention) MarshalJSON() ([]byte, error)
func (*LogRetention) ToAwsInt32 ¶
func (obj *LogRetention) ToAwsInt32() *int32
func (*LogRetention) UnmarshalYAML ¶
func (a *LogRetention) UnmarshalYAML(unmarshal func(interface{}) error) error
type LoggingConfig ¶
type LoggingConfig struct { Disabled bool `yaml:"disabled,omitempty" json:"disabled,omitempty"` FirelensConfig *FirelensConfig `yaml:"firelens,omitempty" json:"firelens,omitempty"` AwsLogConfig *AwsLogConfig `yaml:"awslogs,omitempty" json:"awslogs,omitempty"` }
Project level
func (*LoggingConfig) ApplyDefaults ¶
func (obj *LoggingConfig) ApplyDefaults()
func (*LoggingConfig) IsDisabled ¶
func (obj *LoggingConfig) IsDisabled() bool
func (LoggingConfig) JSONSchemaExtend ¶
func (LoggingConfig) JSONSchemaExtend(base *jsonschema.Schema)
func (*LoggingConfig) UnmarshalYAML ¶
func (obj *LoggingConfig) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*LoggingConfig) Validate ¶
func (obj *LoggingConfig) Validate() error
type MemorySpec ¶
type MemorySpec struct {
// contains filtered or unexported fields
}
func ParseMemorySpec ¶
func ParseMemorySpec(str string) (*MemorySpec, error)
func (*MemorySpec) Equals ¶
func (m *MemorySpec) Equals(other *MemorySpec) bool
func (*MemorySpec) GetValueOnly ¶
func (m *MemorySpec) GetValueOnly() int32
func (MemorySpec) JSONSchema ¶
func (MemorySpec) JSONSchema() *jsonschema.Schema
func (MemorySpec) MarshalJSON ¶
func (obj MemorySpec) MarshalJSON() ([]byte, error)
func (*MemorySpec) MegabytesFromCpu ¶
func (m *MemorySpec) MegabytesFromCpu(cpu *CpuSpec) (int32, error)
func (*MemorySpec) MegabytesPtrFromCpu ¶
func (m *MemorySpec) MegabytesPtrFromCpu(cpu *CpuSpec) (*int32, error)
func (*MemorySpec) UnmarshalYAML ¶
func (obj *MemorySpec) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*MemorySpec) Validate ¶
func (m *MemorySpec) Validate() error
type NameArn ¶
type NameArn struct {
// contains filtered or unexported fields
}
func (*NameArn) InferArn ¶
This tries to resolve the ARN THESE SHOULD BE OVERRIDDEN BY CHILD STRUCTS DO NOT CACHE WITHIN
func (NameArn) JSONSchema ¶
func (NameArn) JSONSchema() *jsonschema.Schema
func (*NameArn) MarshalJSON ¶
func (*NameArn) MarshalYAML ¶
func (*NameArn) ParseFromString ¶
func (*NameArn) UnmarshalYAML ¶
only parses a string
type NameTemplates ¶
type NameTemplates struct { TaskFamily *string `yaml:"task_family,omitempty" json:"task_family,omitempty" jsonschema:"minLength=1"` ServiceName *string `yaml:"service_name,omitempty" json:"service_name,omitempty" jsonschema:"minLength=1"` ContainerName *string `yaml:"container,omitempty" json:"container,omitempty" jsonschema:"minLength=1"` CronGroup *string `yaml:"cron_group,omitempty" json:"cron_group,omitempty"` ScheduleGroupName *string `yaml:"schedule_group,omitempty" json:"schedule_group,omitempty" jsonschema:"minLength=1"` ScheduleName *string `yaml:"schedule,omitempty" json:"schedule,omitempty" jsonschema:"minLength=1"` PreDeployGroup *string `yaml:"predeploy_group,omitempty" json:"predeploy_group,omitempty"` PreDeployStartedBy *string `yaml:"predeploy_started_by,omitempty" json:"predeploy_started_by,omitempty"` LogGroup *string `yaml:"log_group,omitempty" json:"log_group,omitempty" jsonschema:"minLength=1"` LogStreamPrefix *string `yaml:"log_stream_prefix,omitempty" json:"log_stream_prefix,omitempty" jsonschema:"minLength=1"` TargetGroup *string `yaml:"target_group,omitempty" json:"target_group,omitempty" jsonschema:"minLength=1"` MarkerTagKey *string `yaml:"marker_tag_key,omitempty" json:"marker_tag_key,omitempty" jsonschema:"minLength=1"` MarkerTagValue *string `yaml:"marker_tag_value,omitempty" json:"marker_tag_value,omitempty" jsonschema:"minLength=1"` // old CronRule *string `yaml:"cron_rule,omitempty" json:"cron_rule,omitempty" jsonschema:"minLength=1" jsonschema_extras:"deprecated=true"` CronTarget *string `yaml:"cron_target,omitempty" json:"cron_target,omitempty" jsonschema:"minLength=1" jsonschema_extras:"deprecated=true"` }
func (*NameTemplates) ApplyDefaults ¶
func (def *NameTemplates) ApplyDefaults()
func (NameTemplates) JSONSchemaExtend ¶
func (NameTemplates) JSONSchemaExtend(base *jsonschema.Schema)
func (*NameTemplates) UnmarshalYAML ¶
func (a *NameTemplates) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*NameTemplates) Validate ¶
func (nt *NameTemplates) Validate() error
type NameValuePair ¶
type NameValuePair struct { Name *string `yaml:"name" json:"name"` Value *string `yaml:"value" json:"value"` }
func (NameValuePair) JSONSchema ¶
func (NameValuePair) JSONSchema() *jsonschema.Schema
func (*NameValuePair) UnmarshalYAML ¶
func (a *NameValuePair) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*NameValuePair) Validate ¶
func (def *NameValuePair) Validate() error
type NetworkConfiguration ¶
type NetworkConfiguration struct { Subnets []NetworkFilter `yaml:"subnets,omitempty" json:"subnets,omitempty" jsonschema:"description=List of SubnetIds or Subnet Filters"` SecurityGroups []NetworkFilter `` /* 140-byte string literal not displayed */ AllowPublicIp *bool `` /* 138-byte string literal not displayed */ // contains filtered or unexported fields }
func (*NetworkConfiguration) ApplyDefaults ¶
func (nc *NetworkConfiguration) ApplyDefaults()
func (*NetworkConfiguration) IsResolveError ¶
func (nc *NetworkConfiguration) IsResolveError() bool
func (*NetworkConfiguration) IsResolved ¶
func (nc *NetworkConfiguration) IsResolved() bool
func (*NetworkConfiguration) ResolveCWE ¶
func (nc *NetworkConfiguration) ResolveCWE(ctx *Context) (*eventTypes.NetworkConfiguration, error)
func (*NetworkConfiguration) ResolveECS ¶
func (nc *NetworkConfiguration) ResolveECS(ctx *Context) (*ecsTypes.NetworkConfiguration, error)
func (*NetworkConfiguration) ResolveSched ¶ added in v0.1.0
func (nc *NetworkConfiguration) ResolveSched(ctx *Context) (*schedulerTypes.NetworkConfiguration, error)
func (*NetworkConfiguration) UnmarshalYAML ¶
func (a *NetworkConfiguration) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*NetworkConfiguration) Validate ¶
func (nc *NetworkConfiguration) Validate() error
type NetworkFilter ¶
type NetworkFilter struct { ID *string `yaml:"id" json:"id,omitempty"` Name *string `yaml:"name" json:"name,omitempty"` Values []string `yaml:"values" json:"values,omitempty"` }
func (*NetworkFilter) IdSpecified ¶
func (nf *NetworkFilter) IdSpecified() bool
func (NetworkFilter) JSONSchema ¶
func (NetworkFilter) JSONSchema() *jsonschema.Schema
func (*NetworkFilter) MarshalJSON ¶
func (obj *NetworkFilter) MarshalJSON() ([]byte, error)
func (*NetworkFilter) ToAws ¶
func (nf *NetworkFilter) ToAws() ec2Types.Filter
This doesn't allow templates... but that's ok for first release
func (*NetworkFilter) UnmarshalYAML ¶
func (a *NetworkFilter) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*NetworkFilter) Validate ¶
func (nf *NetworkFilter) Validate() error
type PortMapping ¶
type PortMapping struct { Port *int32 `yaml:"port" json:"port"` Protocol ecsTypes.TransportProtocol `yaml:"protocol" json:"protocol"` }
func NewPortMappingFromString ¶
func NewPortMappingFromString(value string) (*PortMapping, error)
func (*PortMapping) ApplyDefaults ¶
func (obj *PortMapping) ApplyDefaults()
func (PortMapping) JSONSchema ¶
func (PortMapping) JSONSchema() *jsonschema.Schema
func (*PortMapping) ToAwsPortMapping ¶
func (obj *PortMapping) ToAwsPortMapping() ecsTypes.PortMapping
func (*PortMapping) UnmarshalYAML ¶
func (obj *PortMapping) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*PortMapping) Validate ¶
func (obj *PortMapping) Validate() error
type PreDeployTask ¶
type PreDeployTask struct { CommonTaskAttrs `yaml:",inline" json:",inline"` Timeout *Duration `yaml:"timeout,omitempty" json:"timeout,omitempty" jsonschema:"description=Abort task after specified time has elapsed"` Disabled bool `yaml:"disabled,omitempty" json:"disabled,omitempty" jsonschema:"default=false,description=Do not run this task"` IgnoreFailure bool `` /* 139-byte string literal not displayed */ }
func (*PreDeployTask) ApplyDefaults ¶
func (obj *PreDeployTask) ApplyDefaults()
func (*PreDeployTask) IsTaskStruct ¶
func (obj *PreDeployTask) IsTaskStruct() bool
func (PreDeployTask) JSONSchemaExtend ¶
func (PreDeployTask) JSONSchemaExtend(base *jsonschema.Schema)
func (*PreDeployTask) Validate ¶
func (obj *PreDeployTask) Validate() error
type Project ¶
type Project struct { EcsDeployerOptions *EcsDeployerOptions `yaml:"ecsdeployer,omitempty" json:"ecsdeployer,omitempty"` ProjectName string `yaml:"project" json:"project"` StageName *string `yaml:"stage,omitempty" json:"stage,omitempty"` Image *ImageUri `yaml:"image,omitempty" json:"image,omitempty"` Role *RoleArn `yaml:"role,omitempty" json:"role,omitempty"` ExecutionRole *RoleArn `yaml:"execution_role,omitempty" json:"execution_role,omitempty"` CronLauncherRole *RoleArn `yaml:"cron_launcher_role,omitempty" json:"cron_launcher_role,omitempty"` Services []*Service `yaml:"services,omitempty" json:"services,omitempty"` CronJobs []*CronJob `yaml:"cronjobs,omitempty" json:"cronjobs,omitempty"` PreDeployTasks []*PreDeployTask `yaml:"predeploy,omitempty" json:"predeploy,omitempty"` ConsoleTask *ConsoleTask `yaml:"console,omitempty" json:"console,omitempty"` EnvVars EnvVarMap `yaml:"environment,omitempty" json:"environment,omitempty"` TaskDefaults *FargateDefaults `yaml:"task_defaults,omitempty" json:"task_defaults,omitempty"` Templates *NameTemplates `yaml:"name_templates,omitempty" json:"name_templates,omitempty"` Logging *LoggingConfig `yaml:"logging,omitempty" json:"logging,omitempty"` Tags []NameValuePair `yaml:"tags,omitempty" json:"tags,omitempty"` Network *NetworkConfiguration `yaml:"network,omitempty" json:"network,omitempty"` Cluster *ClusterArn `yaml:"cluster" json:"cluster"` Settings *Settings `yaml:"settings,omitempty" json:"settings,omitempty"` // This is used to allow YAML aliases. It is not serialized Aliases map[string]interface{} `yaml:"aliases,omitempty" json:"-" jsonschema:"-"` Env []string `yaml:"env,omitempty" json:"env,omitempty" jsonschema:"-"` // this is generic environment, not for the app }
func LoadFromBytes ¶
func (*Project) ApplyDefaults ¶
func (project *Project) ApplyDefaults()
func (*Project) ApproxNumTasks ¶
how many tasks are we expecting to make?
func (Project) JSONSchemaExtend ¶
func (Project) JSONSchemaExtend(base *jsonschema.Schema)
func (*Project) UnmarshalYAML ¶
func (*Project) ValidateWithContext ¶
type RolloutConfig ¶
type RolloutConfig struct { Minimum *int32 `yaml:"min" json:"min" jsonschema:"required" jsonschema_extras:"minimum=0"` Maximum *int32 `yaml:"max" json:"max" jsonschema:"required" jsonschema_extras:"minimum=0"` }
func NewDeploymentConfigFromService ¶
func NewDeploymentConfigFromService(svc *Service) *RolloutConfig
func (*RolloutConfig) GetAwsConfig ¶
func (dc *RolloutConfig) GetAwsConfig() *ecsTypes.DeploymentConfiguration
func (*RolloutConfig) GetMinMaxCount ¶
func (obj *RolloutConfig) GetMinMaxCount(count int32) (int32, int32)
func (*RolloutConfig) MaximumPercent ¶
func (obj *RolloutConfig) MaximumPercent() float64
func (*RolloutConfig) MinimumPercent ¶
func (obj *RolloutConfig) MinimumPercent() float64
func (*RolloutConfig) UnmarshalYAML ¶
func (a *RolloutConfig) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*RolloutConfig) Validate ¶
func (def *RolloutConfig) Validate() error
func (*RolloutConfig) ValidateWithDesiredCount ¶
func (obj *RolloutConfig) ValidateWithDesiredCount(count int32) error
type SSMImport ¶
type SSMImport struct { Enabled bool `yaml:"enabled,omitempty" json:"enabled,omitempty"` Path *string `yaml:"path,omitempty" json:"path,omitempty"` Recursive *bool `` /* 146-byte string literal not displayed */ }
func (*SSMImport) ApplyDefaults ¶
func (obj *SSMImport) ApplyDefaults()
func (SSMImport) JSONSchemaExtend ¶
func (SSMImport) JSONSchemaExtend(base *jsonschema.Schema)
func (*SSMImport) MarshalJSON ¶
func (*SSMImport) UnmarshalYAML ¶
type Service ¶
type Service struct { CommonTaskAttrs `yaml:",inline" json:",inline"` DesiredCount int32 `yaml:"desired" json:"desired" jsonschema:"required,minimum=0"` RolloutConfig *RolloutConfig `yaml:"rollout,omitempty" json:"rollout,omitempty"` SkipWaitForStable bool `` /* 184-byte string literal not displayed */ SpotOverride *SpotOverrides `yaml:"spot,omitempty" json:"spot,omitempty"` LoadBalancers LoadBalancers `yaml:"load_balancer,omitempty" json:"load_balancer,omitempty"` }
func (*Service) ApplyDefaults ¶
func (obj *Service) ApplyDefaults()
func (*Service) IsLoadBalanced ¶
func (*Service) IsTaskStruct ¶
func (Service) JSONSchemaExtend ¶
func (Service) JSONSchemaExtend(base *jsonschema.Schema)
func (*Service) UnmarshalYAML ¶
type Settings ¶
type Settings struct { PreDeployParallel *bool `yaml:"predeploy_parallel,omitempty" json:"predeploy_parallel,omitempty"` PreDeployTimeout *Duration `yaml:"predeploy_timeout,omitempty" json:"predeploy_timeout,omitempty"` SkipDeploymentEnvVars bool `yaml:"skip_deployment_env_vars,omitempty" json:"skip_deployment_env_vars,omitempty"` SkipCronEnvVars bool `yaml:"skip_cron_env_vars,omitempty" json:"skip_cron_env_vars,omitempty"` DisableMarkerTag bool `yaml:"disable_marker_tag,omitempty" json:"disable_marker_tag,omitempty"` KeepInSync *KeepInSync `yaml:"keep_in_sync,omitempty" json:"keep_in_sync,omitempty"` WaitForStable *WaitForStable `yaml:"wait_for_stable,omitempty" json:"wait_for_stable,omitempty"` // Use the older eventbridge target/rule style to do cronjobs CronUsesEventing bool `yaml:"use_old_cron_eventbus,omitempty" json:"use_old_cron_eventbus,omitempty"` SSMImport *SSMImport `yaml:"ssm_import,omitempty" json:"ssm_import,omitempty"` }
func (*Settings) ApplyDefaults ¶
func (obj *Settings) ApplyDefaults()
func (*Settings) UnmarshalYAML ¶
type ShellCommand ¶
type ShellCommand []string
ShellCommand is a wrapper for an array of strings.
func (ShellCommand) JSONSchema ¶
func (a ShellCommand) JSONSchema() *jsonschema.Schema
func (ShellCommand) String ¶
func (sc ShellCommand) String() string
func (*ShellCommand) UnmarshalYAML ¶
func (a *ShellCommand) UnmarshalYAML(unmarshal func(interface{}) error) error
UnmarshalYAML is a custom unmarshaler that wraps strings in arrays.
type Sidecar ¶
type Sidecar struct { CommonContainerAttrs `yaml:",inline" json:",inline"` InheritEnv bool `yaml:"inherit_env,omitempty" json:"inherit_env,omitempty"` PortMappings []PortMapping `yaml:"port_mappings,omitempty" json:"port_mappings,omitempty"` MemoryReservation *MemorySpec `yaml:"memory_reservation,omitempty" json:"memory_reservation,omitempty"` Essential *bool `yaml:"essential,omitempty" json:"essential,omitempty"` }
func (*Sidecar) ApplyDefaults ¶
func (obj *Sidecar) ApplyDefaults()
func (*Sidecar) UnmarshalYAML ¶
type SpotOverrides ¶
type SpotOverrides struct { Enabled bool `yaml:"enabled,omitempty" json:"enabled,omitempty" jsonschema:"default=false,description=Enable Fargate Spot"` MinimumOnDemand *int32 `yaml:"minimum_ondemand,omitempty" json:"minimum_ondemand,omitempty"` MinimumOnDemandPercent *int32 `yaml:"minimum_ondemand_percent,omitempty" json:"minimum_ondemand_percent,omitempty"` }
func NewSpotOnDemand ¶
func NewSpotOnDemand() *SpotOverrides
func (*SpotOverrides) ApplyDefaults ¶
func (obj *SpotOverrides) ApplyDefaults()
func (*SpotOverrides) ExportCapacityStrategy ¶
func (obj *SpotOverrides) ExportCapacityStrategy() []ecsTypes.CapacityProviderStrategyItem
func (*SpotOverrides) ExportCapacityStrategyEventBridge ¶
func (obj *SpotOverrides) ExportCapacityStrategyEventBridge() []eventTypes.CapacityProviderStrategyItem
func (*SpotOverrides) ExportCapacityStrategyScheduler ¶ added in v0.1.0
func (obj *SpotOverrides) ExportCapacityStrategyScheduler() []schedulerTypes.CapacityProviderStrategyItem
func (*SpotOverrides) IsDisabled ¶
func (obj *SpotOverrides) IsDisabled() bool
func (SpotOverrides) JSONSchema ¶
func (SpotOverrides) JSONSchema() *jsonschema.Schema
func (*SpotOverrides) MarshalJSON ¶
func (obj *SpotOverrides) MarshalJSON() ([]byte, error)
func (*SpotOverrides) UnmarshalYAML ¶
func (obj *SpotOverrides) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*SpotOverrides) Validate ¶
func (obj *SpotOverrides) Validate() error
func (*SpotOverrides) WantsOnDemand ¶
func (obj *SpotOverrides) WantsOnDemand() bool
type StorageSpec ¶
type StorageSpec int32
func NewStorageSpec ¶
func NewStorageSpec(gb int32) (*StorageSpec, error)
func (StorageSpec) Gigabytes ¶
func (ss StorageSpec) Gigabytes() int32
func (StorageSpec) JSONSchema ¶
func (StorageSpec) JSONSchema() *jsonschema.Schema
type TargetGroupArn ¶
type TargetGroupArn struct {
NameArn
}
type TaskLoggingConfig ¶
type TaskLoggingConfig struct { Driver *string `yaml:"driver,omitempty" json:"driver,omitempty"` Options EnvVarMap `yaml:"options,omitempty" json:"options,omitempty"` }
func (*TaskLoggingConfig) ApplyDefaults ¶
func (obj *TaskLoggingConfig) ApplyDefaults()
func (*TaskLoggingConfig) IsDisabled ¶
func (obj *TaskLoggingConfig) IsDisabled() bool
func (TaskLoggingConfig) JSONSchemaExtend ¶
func (TaskLoggingConfig) JSONSchemaExtend(base *jsonschema.Schema)
func (*TaskLoggingConfig) UnmarshalYAML ¶
func (obj *TaskLoggingConfig) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*TaskLoggingConfig) Validate ¶
func (obj *TaskLoggingConfig) Validate() error
type ValidationError ¶
func NewValidationError ¶
func NewValidationError(value any, values ...any) *ValidationError
Builds a new validation error If first parameter is an 'error', then validation error will wrap that First parameter is a string with optional format, followed by values to be formatted the last value may be an error object. if present, that will be wrapped. do not include it in your format string
func (*ValidationError) Error ¶
func (ve *ValidationError) Error() string
func (*ValidationError) Is ¶
func (ve *ValidationError) Is(err error) bool
func (*ValidationError) Unwrap ¶
func (ve *ValidationError) Unwrap() error
type VersionConstraint ¶
type VersionConstraint semver.Constraints
func NewVersionConstraint ¶
func NewVersionConstraint(value string) (*VersionConstraint, error)
func (*VersionConstraint) Check ¶
func (obj *VersionConstraint) Check(ver *semver.Version) bool
func (VersionConstraint) JSONSchema ¶
func (VersionConstraint) JSONSchema() *jsonschema.Schema
func (VersionConstraint) MarshalJSON ¶
func (obj VersionConstraint) MarshalJSON() ([]byte, error)
func (*VersionConstraint) String ¶
func (obj *VersionConstraint) String() string
func (*VersionConstraint) UnmarshalYAML ¶
func (a *VersionConstraint) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*VersionConstraint) Validate ¶
func (obj *VersionConstraint) Validate(ver *semver.Version) (bool, []error)
type WaitForStable ¶
type WaitForStable struct { Disabled *bool `yaml:"disabled,omitempty" json:"disabled,omitempty"` Individually *bool `yaml:"individually,omitempty" json:"individually,omitempty" jsonschema:"description=Don't use this"` Timeout *Duration `yaml:"timeout,omitempty" json:"timeout,omitempty"` }
func (*WaitForStable) ApplyDefaults ¶
func (obj *WaitForStable) ApplyDefaults()
func (*WaitForStable) IsDisabled ¶
func (wfs *WaitForStable) IsDisabled() bool
func (WaitForStable) JSONSchemaExtend ¶
func (WaitForStable) JSONSchemaExtend(base *jsonschema.Schema)
func (*WaitForStable) UnmarshalYAML ¶
func (a *WaitForStable) UnmarshalYAML(unmarshal func(interface{}) error) error
func (*WaitForStable) Validate ¶
func (def *WaitForStable) Validate() error
func (*WaitForStable) WaitIndividually ¶
func (a *WaitForStable) WaitIndividually() bool
Source Files ¶
- app_mesh.go
- awslogs_config.go
- capacity.go
- capacity_provider.go
- cluster_arn.go
- common_container_attrs.go
- common_task_attrs.go
- console_task.go
- context.go
- context_cache.go
- cpu_spec.go
- cronjobs.go
- defaults.go
- depends_on.go
- duration.go
- ecsdeployer_options.go
- env_var_map.go
- env_vars.go
- fargate_defaults.go
- firelens_aws_log_group.go
- firelens_config.go
- healthcheck.go
- image_uri.go
- interfaces.go
- keep_in_sync.go
- load_balancer.go
- log_retention.go
- logging_config.go
- memory_spec.go
- name_arn.go
- name_value_pair.go
- network.go
- network_filter.go
- port_mapping.go
- predeploy_task.go
- project.go
- role_arn.go
- rollout_config.go
- services.go
- settings.go
- shell_command.go
- sidecar.go
- spot_overrides.go
- ssm_import.go
- storage_spec.go
- target_group_arn.go
- task_logging_config.go
- templates.go
- util.go
- validation_error.go
- version_constraint.go
- wait_for_stable.go