Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AwsVpcConfiguration ¶
type AwsVpcConfiguration struct { // Whether the task's elastic network interface receives a public IP address. The default value is DISABLED. AssignPublicIp string `json:"AssignPublicIp,omitempty"` // The security groups associated with the task or service. If you do not specify a security group, the default security group for the VPC is used. There is a limit of 5 security groups that can be specified per AwsVpcConfiguration. SecurityGroups []string `json:"SecurityGroups,omitempty"` // The subnets associated with the task or service. There is a limit of 16 subnets that can be specified per AwsVpcConfiguration. Subnets []string `json:"Subnets"` }
AwsVpcConfiguration The VPC subnets and security groups associated with a task. All specified subnets and security groups must be from the same VPC.
func (*AwsVpcConfiguration) MarshalJSON ¶
func (strct *AwsVpcConfiguration) MarshalJSON() ([]byte, error)
func (*AwsVpcConfiguration) UnmarshalJSON ¶
func (strct *AwsVpcConfiguration) UnmarshalJSON(b []byte) error
type LoadBalancer ¶
type LoadBalancer struct { // The name of the container (as it appears in a container definition) to associate with the load balancer. ContainerName string `json:"ContainerName,omitempty"` // The port on the container to associate with the load balancer. This port must correspond to a containerPort in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they are launched on must allow ingress traffic on the hostPort of the port mapping. ContainerPort int `json:"ContainerPort,omitempty"` // The name of the load balancer to associate with the Amazon ECS service or task set. A load balancer name is only specified when using a Classic Load Balancer. If you are using an Application Load Balancer or a Network Load Balancer this should be omitted. LoadBalancerName string `json:"LoadBalancerName,omitempty"` // The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group or groups associated with a service or task set. A target group ARN is only specified when using an Application Load Balancer or Network Load Balancer. If you are using a Classic Load Balancer this should be omitted. For services using the ECS deployment controller, you can specify one or multiple target groups. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/register-multiple-targetgroups.html in the Amazon Elastic Container Service Developer Guide. For services using the CODE_DEPLOY deployment controller, you are required to define two target groups for the load balancer. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-bluegreen.html in the Amazon Elastic Container Service Developer Guide. If your service's task definition uses the awsvpc network mode (which is required for the Fargate launch type), you must choose ip as the target type, not instance, when creating your target groups because tasks that use the awsvpc network mode are associated with an elastic network interface, not an Amazon EC2 instance. TargetGroupArn string `json:"TargetGroupArn,omitempty"` }
LoadBalancer A load balancer object representing the load balancer to use with the task set. The supported load balancer types are either an Application Load Balancer or a Network Load Balancer.
func (*LoadBalancer) MarshalJSON ¶
func (strct *LoadBalancer) MarshalJSON() ([]byte, error)
func (*LoadBalancer) UnmarshalJSON ¶
func (strct *LoadBalancer) UnmarshalJSON(b []byte) error
type NetworkConfiguration ¶
type NetworkConfiguration struct {
AwsVpcConfiguration *AwsVpcConfiguration `json:"AwsVpcConfiguration,omitempty"`
}
NetworkConfiguration An object representing the network configuration for a task or service.
func (*NetworkConfiguration) MarshalJSON ¶
func (strct *NetworkConfiguration) MarshalJSON() ([]byte, error)
func (*NetworkConfiguration) UnmarshalJSON ¶
func (strct *NetworkConfiguration) UnmarshalJSON(b []byte) error
type Resource ¶
type Resource struct { // The short name or full Amazon Resource Name (ARN) of the cluster that hosts the service to create the task set in. Cluster string `json:"Cluster"` // An optional non-unique tag that identifies this task set in external systems. If the task set is associated with a service discovery registry, the tasks in this task set will have the ECS_TASK_SET_EXTERNAL_ID AWS Cloud Map attribute set to the provided value. ExternalId string `json:"ExternalId,omitempty"` // The ID of the task set. Id string `json:"Id,omitempty"` // The launch type that new tasks in the task set will use. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html in the Amazon Elastic Container Service Developer Guide. LaunchType string `json:"LaunchType,omitempty"` LoadBalancers []*LoadBalancer `json:"LoadBalancers,omitempty"` NetworkConfiguration *NetworkConfiguration `json:"NetworkConfiguration,omitempty"` // The platform version that the tasks in the task set should use. A platform version is specified only for tasks using the Fargate launch type. If one isn't specified, the LATEST platform version is used by default. PlatformVersion string `json:"PlatformVersion,omitempty"` // A floating-point percentage of the desired number of tasks to place and keep running in the task set. Scale *Scale `json:"Scale,omitempty"` // The short name or full Amazon Resource Name (ARN) of the service to create the task set in. Service string `json:"Service"` // The details of the service discovery registries to assign to this task set. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html. ServiceRegistries []*ServiceRegistry `json:"ServiceRegistries,omitempty"` // The short name or full Amazon Resource Name (ARN) of the task definition for the tasks in the task set to use. TaskDefinition string `json:"TaskDefinition"` }
Resource Create a task set in the specified cluster and service. This is used when a service uses the EXTERNAL deployment controller type. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.htmlin the Amazon Elastic Container Service Developer Guide.
func (*Resource) MarshalJSON ¶
func (*Resource) UnmarshalJSON ¶
type Scale ¶
type Scale struct { // The unit of measure for the scale value. Unit string `json:"Unit,omitempty"` // The value, specified as a percent total of a service's desiredCount, to scale the task set. Accepted values are numbers between 0 and 100. Value float64 `json:"Value,omitempty"` }
Scale
func (*Scale) MarshalJSON ¶
func (*Scale) UnmarshalJSON ¶
type ServiceRegistry ¶
type ServiceRegistry struct { // The container name value, already specified in the task definition, to be used for your service discovery service. If the task definition that your service task specifies uses the bridge or host network mode, you must specify a containerName and containerPort combination from the task definition. If the task definition that your service task specifies uses the awsvpc network mode and a type SRV DNS record is used, you must specify either a containerName and containerPort combination or a port value, but not both. ContainerName string `json:"ContainerName,omitempty"` // The port value, already specified in the task definition, to be used for your service discovery service. If the task definition your service task specifies uses the bridge or host network mode, you must specify a containerName and containerPort combination from the task definition. If the task definition your service task specifies uses the awsvpc network mode and a type SRV DNS record is used, you must specify either a containerName and containerPort combination or a port value, but not both. ContainerPort int `json:"ContainerPort,omitempty"` // The port value used if your service discovery service specified an SRV record. This field may be used if both the awsvpc network mode and SRV records are used. Port int `json:"Port,omitempty"` // The Amazon Resource Name (ARN) of the service registry. The currently supported service registry is AWS Cloud Map. For more information, see https://docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html RegistryArn string `json:"RegistryArn,omitempty"` }
ServiceRegistry
func (*ServiceRegistry) MarshalJSON ¶
func (strct *ServiceRegistry) MarshalJSON() ([]byte, error)
func (*ServiceRegistry) UnmarshalJSON ¶
func (strct *ServiceRegistry) UnmarshalJSON(b []byte) error