refactor: support to list repository menu from command menu
This commit is contained in:
parent
dfbd70b326
commit
f7b2fcb5bd
@ -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"
|
|
||||||
}
|
|
39
go/tasks/list_repo_menus.go
Normal file
39
go/tasks/list_repo_menus.go
Normal file
@ -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"
|
||||||
|
}
|
@ -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"
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user