Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: local files generated by svc and pipeline are not deleted #1034

Merged
merged 6 commits into from
Jun 22, 2020
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
16 changes: 8 additions & 8 deletions internal/pkg/cli/app_delete.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ const (
deleteAppConfigStartMsg = "Deleting application configuration."
deleteAppConfigStopMsg = "Deleted application configuration."

deleteAppWsStartMsg = "Deleting local workspace folder."
deleteAppWsStopMsg = "Deleted local workspace folder."
fmtDeleteAppWsStartMsg = "Deleting local %s file."
fmtDeleteAppWsStopMsg = "Deleted local %s file."
)

var (
Expand All @@ -53,7 +53,7 @@ type deleteAppOpts struct {
spinner progress

store store
ws workspaceDeleter
ws wsFileDeleter
sessProvider sessionProvider
cfn deployer
s3 func(session *awssession.Session) bucketEmptier
Expand Down Expand Up @@ -292,12 +292,12 @@ func (o *deleteAppOpts) deleteAppConfigs() error {
}

func (o *deleteAppOpts) deleteWs() error {
o.spinner.Start(deleteAppWsStartMsg)
if err := o.ws.DeleteAll(); err != nil {
o.spinner.Stop(log.Serror("Error deleting local workspace folder."))
return fmt.Errorf("delete workspace: %w", err)
o.spinner.Start(fmt.Sprintf(fmtDeleteAppWsStartMsg, workspace.SummaryFileName))
if err := o.ws.DeleteWorkspaceFile(); err != nil {
o.spinner.Stop(log.Serrorf("Error deleting %s file.", workspace.SummaryFileName))
return fmt.Errorf("delete %s file: %w", workspace.SummaryFileName, err)
}
o.spinner.Stop(log.Ssuccess(deleteAppWsStopMsg))
o.spinner.Stop(log.Ssuccess(fmt.Sprintf(fmtDeleteAppWsStopMsg, workspace.SummaryFileName)))
return nil
}

Expand Down
16 changes: 8 additions & 8 deletions internal/pkg/cli/app_delete_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ func TestDeleteAppOpts_Ask(t *testing.T) {
type deleteAppMocks struct {
spinner *mocks.Mockprogress
store *mocks.Mockstore
ws *mocks.MockworkspaceDeleter
ws *mocks.MockwsFileDeleter
sessProvider *session.Provider
deployer *mocks.Mockdeployer
svcDeleter *mocks.Mockexecutor
Expand Down Expand Up @@ -202,9 +202,9 @@ func TestDeleteAppOpts_Execute(t *testing.T) {
mocks.spinner.EXPECT().Stop(log.Ssuccess(deleteAppConfigStopMsg)),

// deleteWs
mocks.spinner.EXPECT().Start(deleteAppWsStartMsg),
mocks.ws.EXPECT().DeleteAll().Return(nil),
mocks.spinner.EXPECT().Stop(log.Ssuccess(deleteAppWsStopMsg)),
mocks.spinner.EXPECT().Start(fmt.Sprintf(fmtDeleteAppWsStartMsg, workspace.SummaryFileName)),
mocks.ws.EXPECT().DeleteWorkspaceFile().Return(nil),
mocks.spinner.EXPECT().Stop(log.Ssuccess(fmt.Sprintf(fmtDeleteAppWsStopMsg, workspace.SummaryFileName))),
)
},
wantedError: nil,
Expand Down Expand Up @@ -243,9 +243,9 @@ func TestDeleteAppOpts_Execute(t *testing.T) {
mocks.spinner.EXPECT().Stop(log.Ssuccess(deleteAppConfigStopMsg)),

// deleteWs
mocks.spinner.EXPECT().Start(deleteAppWsStartMsg),
mocks.ws.EXPECT().DeleteAll().Return(nil),
mocks.spinner.EXPECT().Stop(log.Ssuccess(deleteAppWsStopMsg)),
mocks.spinner.EXPECT().Start(fmt.Sprintf(fmtDeleteAppWsStartMsg, workspace.SummaryFileName)),
mocks.ws.EXPECT().DeleteWorkspaceFile().Return(nil),
mocks.spinner.EXPECT().Stop(log.Ssuccess(fmt.Sprintf(fmtDeleteAppWsStopMsg, workspace.SummaryFileName))),
)
},
wantedError: nil,
Expand All @@ -260,7 +260,7 @@ func TestDeleteAppOpts_Execute(t *testing.T) {

mockSpinner := mocks.NewMockprogress(ctrl)
mockStore := mocks.NewMockstore(ctrl)
mockWorkspace := mocks.NewMockworkspaceDeleter(ctrl)
mockWorkspace := mocks.NewMockwsFileDeleter(ctrl)
mockSession := session.NewProvider()
mockDeployer := mocks.NewMockdeployer(ctrl)

Expand Down
13 changes: 2 additions & 11 deletions internal/pkg/cli/interfaces.go
Original file line number Diff line number Diff line change
Expand Up @@ -183,8 +183,8 @@ type describer interface {
Describe() (describe.HumanJSONStringer, error)
}

type workspaceDeleter interface {
DeleteAll() error
type wsFileDeleter interface {
DeleteWorkspaceFile() error
}

type svcManifestReader interface {
Expand All @@ -204,10 +204,6 @@ type wsPipelineWriter interface {
WritePipelineManifest(marshaler encoding.BinaryMarshaler) (string, error)
}

type wsSvcDeleter interface {
DeleteService(name string) error
}

type wsServiceLister interface {
ServiceNames() ([]string, error)
}
Expand All @@ -217,11 +213,6 @@ type wsSvcReader interface {
svcManifestReader
}

type wsPipelineDeleter interface {
DeletePipelineManifest() error
wsPipelineManifestReader
}

type wsPipelineReader interface {
wsServiceLister
wsPipelineManifestReader
Expand Down
123 changes: 17 additions & 106 deletions internal/pkg/cli/mocks/mock_interfaces.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 1 addition & 13 deletions internal/pkg/cli/pipeline_delete.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ type deletePipelineOpts struct {
pipelineDeployer pipelineDeployer
prog progress
secretsmanager secretsManager
ws wsPipelineDeleter
ws wsPipelineReader
}

func newDeletePipelineOpts(vars deletePipelineVars) (*deletePipelineOpts, error) {
Expand Down Expand Up @@ -123,10 +123,6 @@ func (o *deletePipelineOpts) Execute() error {
return err
}

if err := o.deletePipelineFile(); err != nil {
return err
}

return nil
}

Expand Down Expand Up @@ -188,14 +184,6 @@ func (o *deletePipelineOpts) deleteStack() error {
return nil
}

func (o *deletePipelineOpts) deletePipelineFile() error {
err := o.ws.DeletePipelineManifest()
if err == nil {
log.Successln("Deleted pipeline manifest from workspace.")
}
return err
}

// RecommendedActions is a no-op for this command.
func (o *deletePipelineOpts) RecommendedActions() []string {
return nil
Expand Down
10 changes: 3 additions & 7 deletions internal/pkg/cli/pipeline_delete_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ type deletePipelineMocks struct {
prog *mocks.Mockprogress
secretsmanager *mocks.MocksecretsManager
deployer *mocks.MockpipelineDeployer
ws *mocks.MockwsPipelineDeleter
ws *mocks.MockwsPipelineReader
}

func TestDeletePipelineOpts_Validate(t *testing.T) {
Expand Down Expand Up @@ -86,7 +86,7 @@ stages:
ctrl := gomock.NewController(t)
defer ctrl.Finish()

mockWorkspace := mocks.NewMockwsPipelineDeleter(ctrl)
mockWorkspace := mocks.NewMockwsPipelineReader(ctrl)
mocks := deletePipelineMocks{
ws: mockWorkspace,
}
Expand Down Expand Up @@ -208,7 +208,6 @@ func TestDeletePipelineOpts_Execute(t *testing.T) {
mocks.prog.EXPECT().Start(fmt.Sprintf(fmtDeletePipelineStart, testPipelineName, testAppName)),
mocks.deployer.EXPECT().DeletePipeline(testPipelineName).Return(nil),
mocks.prog.EXPECT().Stop(log.Ssuccessf(fmtDeletePipelineComplete, testPipelineName, testAppName)),
mocks.ws.EXPECT().DeletePipelineManifest().Return(nil),
)
},
wantedError: nil,
Expand All @@ -230,7 +229,6 @@ func TestDeletePipelineOpts_Execute(t *testing.T) {
mocks.prog.EXPECT().Start(fmt.Sprintf(fmtDeletePipelineStart, testPipelineName, testAppName)),
mocks.deployer.EXPECT().DeletePipeline(testPipelineName).Return(nil),
mocks.prog.EXPECT().Stop(log.Ssuccessf(fmtDeletePipelineComplete, testPipelineName, testAppName)),
mocks.ws.EXPECT().DeletePipelineManifest().Return(nil),
)
},
wantedError: nil,
Expand All @@ -254,7 +252,6 @@ func TestDeletePipelineOpts_Execute(t *testing.T) {
mocks.prog.EXPECT().Start(fmt.Sprintf(fmtDeletePipelineStart, testPipelineName, testAppName)),
mocks.deployer.EXPECT().DeletePipeline(testPipelineName).Times(1).Return(nil),
mocks.prog.EXPECT().Stop(log.Ssuccessf(fmtDeletePipelineComplete, testPipelineName, testAppName)),
mocks.ws.EXPECT().DeletePipelineManifest().Return(nil),
)
},
wantedError: nil,
Expand All @@ -272,7 +269,6 @@ func TestDeletePipelineOpts_Execute(t *testing.T) {
mocks.prog.EXPECT().Start(fmt.Sprintf(fmtDeletePipelineStart, testPipelineName, testAppName)),
mocks.deployer.EXPECT().DeletePipeline(testPipelineName).Times(1).Return(testError),
mocks.prog.EXPECT().Stop(log.Serrorf(fmtDeletePipelineFailed, testPipelineName, testAppName, testError)),
mocks.ws.EXPECT().DeletePipelineManifest().Times(0),
)
},
wantedError: testError,
Expand All @@ -289,7 +285,7 @@ func TestDeletePipelineOpts_Execute(t *testing.T) {
mockProg := mocks.NewMockprogress(ctrl)
mockDeployer := mocks.NewMockpipelineDeployer(ctrl)
mockPrompter := mocks.NewMockprompter(ctrl)
mockWorkspace := mocks.NewMockwsPipelineDeleter(ctrl)
mockWorkspace := mocks.NewMockwsPipelineReader(ctrl)

mocks := deletePipelineMocks{
prompt: mockPrompter,
Expand Down