exec shell handler for services panel

This commit is contained in:
Jesse Duffield 2022-05-19 15:30:39 +10:00
parent 3abff083ad
commit 14af9f4547
3 changed files with 26 additions and 0 deletions

View file

@ -523,6 +523,11 @@ func (gui *Gui) handleContainersExecShell(g *gocui.Gui, v *gocui.View) error {
if err != nil {
return nil
}
return gui.containerExecShell(container)
}
func (gui *Gui) containerExecShell(container *commands.Container) error {
commandObject := gui.DockerCommand.NewCommandObject(commands.CommandObject{
Container: container,
})

View file

@ -367,6 +367,13 @@ func (gui *Gui) GetInitialKeybindings() []*Binding {
Handler: gui.handleServicesBulkCommand,
Description: gui.Tr.ViewBulkCommands,
},
{
ViewName: "services",
Key: 'E',
Modifier: gocui.ModNone,
Handler: gui.handleServicesExecShell,
Description: gui.Tr.ExecShell,
},
{
ViewName: "services",
Key: 'w',

View file

@ -442,6 +442,20 @@ func (gui *Gui) handleServicesBulkCommand(g *gocui.Gui, v *gocui.View) error {
return gui.createBulkCommandMenu(bulkCommands, commandObject)
}
func (gui *Gui) handleServicesExecShell(g *gocui.Gui, v *gocui.View) error {
service, err := gui.getSelectedService()
if err != nil {
return nil
}
container := service.Container
if container == nil {
return gui.createErrorPanel(gui.g, gui.Tr.NoContainers)
}
return gui.containerExecShell(container)
}
func (gui *Gui) handleServicesOpenInBrowserCommand(g *gocui.Gui, v *gocui.View) error {
service, err := gui.getSelectedService()
if err != nil {