From f7b2fcb5bd30c74b52da63944291d5f322a36c24 Mon Sep 17 00:00:00 2001 From: oscarzhou Date: Mon, 9 Jan 2023 12:04:27 +1300 Subject: [PATCH] refactor: support to list repository menu from command menu --- go/tasks/list_repo_actions.go | 36 -------------------------------- go/tasks/list_repo_menus.go | 39 +++++++++++++++++++++++++++++++++++ go/tasks/list_repos.go | 34 ------------------------------ 3 files changed, 39 insertions(+), 70 deletions(-) delete mode 100644 go/tasks/list_repo_actions.go create mode 100644 go/tasks/list_repo_menus.go delete mode 100644 go/tasks/list_repos.go diff --git a/go/tasks/list_repo_actions.go b/go/tasks/list_repo_actions.go deleted file mode 100644 index 52f85eb..0000000 --- a/go/tasks/list_repo_actions.go +++ /dev/null @@ -1,36 +0,0 @@ -package tasks - -import ( - "ocl/portainer-devtool/configs" - "ocl/portainer-devtool/repositories/unpacker" - "ocl/portainer-devtool/tasks/common" -) - -type ListRepoActionsSubTask struct { - Config *configs.Config - ParentTasks []common.Tasker -} - -func NewListRepoActionsSubTask(cfg *configs.Config) *ListRepoActionsSubTask { - return &ListRepoActionsSubTask{ - Config: cfg, - } -} - -func (task *ListRepoActionsSubTask) Execute() error { - subTaskItems := []common.Tasker{ - unpacker.NewBuildDockerImageSubTask(task.Config), - } - - common.ListCommandMenu(subTaskItems, "Which management commands do you want to choose:", false, task.ParentTasks) - - return nil -} - -func (task *ListRepoActionsSubTask) SetParentTaskers(tasks []common.Tasker) { - task.ParentTasks = tasks -} - -func (task *ListRepoActionsSubTask) String() string { - return "Choose Repository Commands" -} diff --git a/go/tasks/list_repo_menus.go b/go/tasks/list_repo_menus.go new file mode 100644 index 0000000..13aa508 --- /dev/null +++ b/go/tasks/list_repo_menus.go @@ -0,0 +1,39 @@ +package tasks + +import ( + "ocl/portainer-devtool/configs" + "ocl/portainer-devtool/repositories/agent" + portaineree "ocl/portainer-devtool/repositories/portainer-ee" + "ocl/portainer-devtool/repositories/unpacker" + "ocl/portainer-devtool/tasks/common" +) + +type ListRepositoryMenuTask struct { + common.GeneralTask +} + +func NewListRepositoryMenuTask(cfg *configs.Config) *ListRepositoryMenuTask { + return &ListRepositoryMenuTask{ + GeneralTask: *common.NewGeneralTask(cfg), + } +} + +func (task *ListRepositoryMenuTask) Execute() error { + subTaskItems := []common.Tasker{ + portaineree.NewMenuSubTask(task.Config), + agent.NewMenuSubTask(task.Config), + unpacker.NewMenuSubTask(task.Config), + } + + for _, taskItem := range subTaskItems { + taskItem.SetParentTaskers(subTaskItems) + } + + common.ListCommandMenu(subTaskItems, "Which management commands do you want to choose:", false, task.ParentTasks) + + return nil +} + +func (task *ListRepositoryMenuTask) String() string { + return "Choose Repositories" +} diff --git a/go/tasks/list_repos.go b/go/tasks/list_repos.go deleted file mode 100644 index 2be0ccf..0000000 --- a/go/tasks/list_repos.go +++ /dev/null @@ -1,34 +0,0 @@ -package tasks - -import ( - "ocl/portainer-devtool/configs" - "ocl/portainer-devtool/tasks/common" -) - -type ListRepositoriesTask struct { - common.GeneralTask -} - -func NewListRepositoriesTask(cfg *configs.Config) *ListRepositoriesTask { - return &ListRepositoriesTask{ - GeneralTask: *common.NewGeneralTask(cfg), - } -} - -func (task *ListRepositoriesTask) Execute() error { - subTaskItems := []common.Tasker{ - NewListRepoActionsSubTask(task.Config), - } - - for _, taskItem := range subTaskItems { - taskItem.SetParentTaskers(subTaskItems) - } - - common.ListCommandMenu(subTaskItems, "Which management commands do you want to choose:", false, task.ParentTasks) - - return nil -} - -func (task *ListRepositoriesTask) String() string { - return "List All Repositories" -}