feat: main flow created
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
package tui
|
||||
|
||||
import (
|
||||
"os/exec"
|
||||
"time"
|
||||
|
||||
tea "charm.land/bubbletea/v2"
|
||||
)
|
||||
|
||||
// --- Messages ---
|
||||
|
||||
// Docker installation check
|
||||
type DockerCheckedMsg struct{ Installed bool }
|
||||
type DockerInstalledMsg struct{ Err error }
|
||||
type TickMsg struct{}
|
||||
|
||||
// Image downloading
|
||||
type ImageDownloadFinishedMsg struct {
|
||||
Err error
|
||||
}
|
||||
type DownloadTickMsg struct{}
|
||||
|
||||
// --- Commands ---
|
||||
|
||||
func CheckDockerCmd() tea.Cmd {
|
||||
return func() tea.Msg {
|
||||
_, err := exec.LookPath("docker")
|
||||
return DockerCheckedMsg{Installed: err == nil}
|
||||
}
|
||||
}
|
||||
|
||||
func tickCmd() tea.Cmd {
|
||||
return tea.Tick(100*time.Millisecond, func(t time.Time) tea.Msg {
|
||||
return TickMsg{}
|
||||
})
|
||||
}
|
||||
|
||||
func downloadImageCmd() tea.Cmd {
|
||||
return func() tea.Msg {
|
||||
|
||||
err := docker.PullImage("hub.davinti.com.br:443/app-dono/app-cliente:latest")
|
||||
|
||||
return ImageDownloadFinishedMsg{
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user