Skip to content

Commit d796bf1

Browse files
karanvasnaniprateekchaudhry
authored andcommitted
Add RestartPolicy config for ServiceConnect Relay Task
1 parent 549bb63 commit d796bf1

1 file changed

Lines changed: 7 additions & 6 deletions

File tree

agent/engine/serviceconnect/manager_linux.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import (
3131
"github.com/aws/amazon-ecs-agent/agent/dockerclient/dockerapi"
3232
"github.com/aws/amazon-ecs-agent/agent/taskresource"
3333
"github.com/aws/amazon-ecs-agent/agent/utils/loader"
34+
apicontainerrestart "github.com/aws/amazon-ecs-agent/ecs-agent/api/container/restart"
3435
apicontainerstatus "github.com/aws/amazon-ecs-agent/ecs-agent/api/container/status"
3536
"github.com/aws/amazon-ecs-agent/ecs-agent/api/ecs"
3637
apitaskstatus "github.com/aws/amazon-ecs-agent/ecs-agent/api/task/status"
@@ -360,12 +361,6 @@ func (m *manager) CreateInstanceTask(cfg *config.Config) (*apitask.Task, error)
360361
containerRunning := apicontainerstatus.ContainerRunning
361362
dockerHostConfig := dockercontainer.HostConfig{
362363
NetworkMode: apitask.HostNetworkMode,
363-
// do not restart relay if it's stopped manually.
364-
// the default value of 0 for MaximumRetryCount means that we will not enforce a maximum count
365-
RestartPolicy: dockercontainer.RestartPolicy{
366-
Name: "on-failure",
367-
MaximumRetryCount: 0,
368-
},
369364
}
370365
rawHostConfig, err := json.Marshal(&dockerHostConfig)
371366
if err != nil {
@@ -402,6 +397,12 @@ func (m *manager) CreateInstanceTask(cfg *config.Config) (*apitask.Task, error)
402397
TransitionDependenciesMap: make(map[apicontainerstatus.ContainerStatus]apicontainer.TransitionDependencySet),
403398
Essential: true,
404399
SteadyStateStatusUnsafe: &containerRunning,
400+
// Restart Relay if it exits or crashes
401+
// RestartAttemptPeriod value 60 ensures it has run for atleast 60 seconds and prevents a crash/restart loop
402+
RestartPolicy: &apicontainerrestart.RestartPolicy{
403+
Enabled: true,
404+
RestartAttemptPeriod: 60,
405+
},
405406
DockerConfig: apicontainer.DockerConfig{
406407
Config: aws.String(rawConfig),
407408
HostConfig: aws.String(string(rawHostConfig)),

0 commit comments

Comments
 (0)