diff --git a/recreate.go b/recreate.go index 46c3f6e..3d6bab4 100644 --- a/recreate.go +++ b/recreate.go @@ -42,9 +42,9 @@ func (c *cage) Recreate(ctx context.Context) (*RecreateResult, error) { return nil, err } transitServiceName := fmt.Sprintf("%s-%d", *oldService.ServiceName, c.Time.Now().Unix()) - newServiceInput := *c.Env.ServiceDefinitionInput - curDesiredCount := oldService.DesiredCount c.Env.ServiceDefinitionInput.TaskDefinition = td.TaskDefinitionArn + curDesiredCount := oldService.DesiredCount + newServiceInput := *c.Env.ServiceDefinitionInput transitServiceDifinitonInput := *c.Env.ServiceDefinitionInput transitServiceDifinitonInput.ServiceName = &transitServiceName transitServiceDifinitonInput.DesiredCount = aws.Int32(1) diff --git a/recreate_test.go b/recreate_test.go index ede0f54..ba0216b 100644 --- a/recreate_test.go +++ b/recreate_test.go @@ -100,6 +100,9 @@ func TestRecreate(t *testing.T) { assert.Equal(t, mocker.RunningTaskSize(), 1) assert.Equal(t, len(mocker.TaskDefinitions.List()), 1) assert.Equal(t, *mocker.Services["service"].ServiceName, *result.Service.ServiceName) + td := mocker.TaskDefinitions.List()[0] + assert.Equal(t, *td.TaskDefinitionArn, *result.TaskDefinition.TaskDefinitionArn) + assert.Equal(t, *mocker.Services["service"].TaskDefinition, *result.TaskDefinition.TaskDefinitionArn) }) t.Run("should error if failed to describe old service", func(t *testing.T) { cagecli, _, ecsMock, _ := setup(t, 0)