Documentation
¶
Overview ¶
Package ecs provides a client to retrieve Copilot ECS information.
Package ecs provides a client to retrieve Copilot ECS information.
Index ¶
- type Client
- func (c Client) ClusterARN(app, env string) (string, error)
- func (c Client) DescribeService(app, env, svc string) (*ServiceDesc, error)
- func (c Client) ListActiveAppEnvTasks(opts ListActiveAppEnvTasksOpts) ([]*ecs.Task, error)
- func (c Client) ListActiveDefaultClusterTasks(filter ListTasksFilter) ([]*ecs.Task, error)
- func (c Client) NetworkConfiguration(app, env, svc string) (*ecs.NetworkConfiguration, error)
- func (c Client) NetworkConfigurationForJob(app, env, job string) (*ecs.NetworkConfiguration, error)
- func (c Client) ServiceARN(app, env, svc string) (*ecs.ServiceArn, error)
- func (c Client) StopDefaultClusterTasks(familyName string) error
- func (c Client) StopOneOffTasks(app, env, family string) error
- func (c Client) StopWorkloadTasks(app, env, workload string) error
- func (c Client) TaskDefinition(app, env, svc string) (*ecs.TaskDefinition, error)
- type ECSServiceDescriber
- type ErrMultipleContainersInTaskDef
- type JobDescriber
- type ListActiveAppEnvTasksOpts
- type ListTasksFilter
- type NetworkConfiguration
- type RunTaskRequest
- func RunTaskRequestFromECSService(client ECSServiceDescriber, cluster, service string) (*RunTaskRequest, error)
- func RunTaskRequestFromJob(client JobDescriber, app, env, job string) (*RunTaskRequest, error)
- func RunTaskRequestFromService(client ServiceDescriber, app, env, svc string) (*RunTaskRequest, error)
- type ServiceDesc
- type ServiceDescriber
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
StepFuncClient stepFunctionsClient
// contains filtered or unexported fields
}
Client retrieves Copilot information from ECS endpoint.
func (Client) ClusterARN ¶ added in v1.1.0
ClusterARN returns the ARN of the cluster in an environment.
func (Client) DescribeService ¶ added in v1.1.0
func (c Client) DescribeService(app, env, svc string) (*ServiceDesc, error)
DescribeService returns the description of an ECS service given Copilot service info.
func (Client) ListActiveAppEnvTasks ¶ added in v1.1.0
func (c Client) ListActiveAppEnvTasks(opts ListActiveAppEnvTasksOpts) ([]*ecs.Task, error)
ListActiveAppEnvTasks returns the active Copilot tasks in the environment of an application.
func (Client) ListActiveDefaultClusterTasks ¶ added in v1.1.0
func (c Client) ListActiveDefaultClusterTasks(filter ListTasksFilter) ([]*ecs.Task, error)
ListActiveDefaultClusterTasks returns the active Copilot tasks in the default cluster.
func (Client) NetworkConfiguration ¶ added in v1.6.0
func (c Client) NetworkConfiguration(app, env, svc string) (*ecs.NetworkConfiguration, error)
NetworkConfiguration returns the network configuration of the service.
func (Client) NetworkConfigurationForJob ¶ added in v1.7.0
func (c Client) NetworkConfigurationForJob(app, env, job string) (*ecs.NetworkConfiguration, error)
NetworkConfigurationForJob returns the network configuration of the job.
func (Client) ServiceARN ¶ added in v1.1.0
func (c Client) ServiceARN(app, env, svc string) (*ecs.ServiceArn, error)
ServiceARN returns the ARN of an ECS service created with Copilot.
func (Client) StopDefaultClusterTasks ¶ added in v1.2.0
StopDefaultClusterTasks stops all copilot tasks from the given family in the default cluster.
func (Client) StopOneOffTasks ¶ added in v1.2.0
StopOneOffTasks stops all one-off tasks in the given application and environment with the family name.
func (Client) StopWorkloadTasks ¶ added in v1.2.0
StopWorkloadTasks stops all tasks in the given application, enviornment, and workload.
func (Client) TaskDefinition ¶ added in v1.6.0
func (c Client) TaskDefinition(app, env, svc string) (*ecs.TaskDefinition, error)
TaskDefinition returns the task definition of the service.
type ECSServiceDescriber ¶ added in v1.7.0
type ECSServiceDescriber interface {
Service(clusterName, serviceName string) (*awsecs.Service, error)
TaskDefinition(taskDefName string) (*awsecs.TaskDefinition, error)
NetworkConfiguration(cluster, serviceName string) (*awsecs.NetworkConfiguration, error)
}
ECSServiceDescriber provides information on an ECS service.
type ErrMultipleContainersInTaskDef ¶ added in v1.7.0
type ErrMultipleContainersInTaskDef struct {
// contains filtered or unexported fields
}
func (*ErrMultipleContainersInTaskDef) Error ¶ added in v1.7.0
func (e *ErrMultipleContainersInTaskDef) Error() string
type JobDescriber ¶ added in v1.7.0
type JobDescriber interface {
TaskDefinition(app, env, job string) (*awsecs.TaskDefinition, error)
NetworkConfigurationForJob(app, env, job string) (*awsecs.NetworkConfiguration, error)
ClusterARN(app, env string) (string, error)
}
JobDescriber provides information on a Copilot job.
type ListActiveAppEnvTasksOpts ¶ added in v1.1.0
type ListActiveAppEnvTasksOpts struct {
App string
Env string
ListTasksFilter
}
ListActiveAppEnvTasksOpts contains the parameters for ListActiveAppEnvTasks.
type ListTasksFilter ¶ added in v1.1.0
type ListTasksFilter struct {
TaskGroup string // Returns only tasks with the given TaskGroup name.
TaskID string // Returns only tasks with the given ID.
CopilotOnly bool // Returns only tasks with the `copilot-task` tag.
}
ListTasksFilter contains the filtering parameters for listing Copilot tasks.
type NetworkConfiguration ¶ added in v1.7.0
type NetworkConfiguration ecs.NetworkConfiguration
NetworkConfiguration wraps an ecs.NetworkConfiguration struct.
func (*NetworkConfiguration) UnmarshalJSON ¶ added in v1.7.0
func (n *NetworkConfiguration) UnmarshalJSON(b []byte) error
UnmarshalJSON implements custom logic to unmarshal only the network configuration from a state machine definition. Example state machine definition:
"Version": "1.0",
"Comment": "Run AWS Fargate task",
"StartAt": "Run Fargate Task",
"States": {
"Run Fargate Task": {
"Type": "Task",
"Resource": "arn:aws:states:::ecs:runTask.sync",
"Parameters": {
"LaunchType": "FARGATE",
"PlatformVersion": "1.4.0",
"Cluster": "cluster",
"TaskDefinition": "def",
"PropagateTags": "TASK_DEFINITION",
"Group.$": "$$.Execution.Name",
"NetworkConfiguration": {
"AwsvpcConfiguration": {
"Subnets": ["sbn-1", "sbn-2"],
"AssignPublicIp": "ENABLED",
"SecurityGroups": ["sg-1", "sg-2"]
}
}
},
"End": true
}
type RunTaskRequest ¶ added in v1.7.0
type RunTaskRequest struct {
// contains filtered or unexported fields
}
RunTaskRequest contains information to generate a task run command.
func RunTaskRequestFromECSService ¶ added in v1.7.0
func RunTaskRequestFromECSService(client ECSServiceDescriber, cluster, service string) (*RunTaskRequest, error)
RunTaskRequestFromECSService populates a RunTaskRequest with information from an ECS service.
func RunTaskRequestFromJob ¶ added in v1.7.0
func RunTaskRequestFromJob(client JobDescriber, app, env, job string) (*RunTaskRequest, error)
RunTaskRequestFromJob populates a RunTaskRequest with information from a Copilot job.
func RunTaskRequestFromService ¶ added in v1.7.0
func RunTaskRequestFromService(client ServiceDescriber, app, env, svc string) (*RunTaskRequest, error)
RunTaskRequestFromECSService populates a RunTaskRequest with information from a Copilot service.
func (RunTaskRequest) CLIString ¶ added in v1.7.0
func (r RunTaskRequest) CLIString() string
String stringifies a RunTaskRequest.
type ServiceDesc ¶ added in v1.1.0
type ServiceDesc struct {
Name string
ClusterName string
Tasks []*ecs.Task // Tasks is a list of tasks with DesiredStatus being RUNNING.
StoppedTasks []*ecs.Task
}
ServiceDesc contains the description of an ECS service.
type ServiceDescriber ¶ added in v1.7.0
type ServiceDescriber interface {
TaskDefinition(app, env, svc string) (*awsecs.TaskDefinition, error)
NetworkConfiguration(app, env, svc string) (*awsecs.NetworkConfiguration, error)
ClusterARN(app, env string) (string, error)
}
ServiceDescriber provides information on a Copilot service.