Skip to content
This repository was archived by the owner on Feb 26, 2024. It is now read-only.

Commit 5db7caa

Browse files
committed
chore: spinner for each setup step
1 parent 6b1f840 commit 5db7caa

File tree

3 files changed

+59
-17
lines changed

3 files changed

+59
-17
lines changed

commands/setup.go

Lines changed: 57 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -197,40 +197,75 @@ var SetupServer = &cobra.Command{
197197
// return err
198198
//}
199199

200-
//- import_tasks: "../roles/stackhead_module_api/tasks_internal/load-all-modules-config.yml"
201-
//
202-
//- import_tasks: "../roles/stackhead_setup/tasks/facts-deploy.yml"
203-
r.PrintLn("Preparing setup.")
204-
200+
prepareSpinner := r.TaskRunner.GetNewSubtaskSpinner("Preparing setup")
205201
if err := basicSetup(); err != nil {
206-
fmt.Println("\nUnable to prepare setup. (" + err.Error() + ")")
202+
if prepareSpinner != nil {
203+
prepareSpinner.UpdateMessage("Unable to prepare setup. (" + err.Error() + ")")
204+
prepareSpinner.Error()
205+
} else {
206+
fmt.Println("Unable to prepare setup. (" + err.Error() + ")")
207+
}
207208
os.Exit(1)
208209
}
210+
if prepareSpinner != nil {
211+
prepareSpinner.Complete()
212+
}
209213

210-
r.PrintLn("Setting up SSH keys.")
214+
sshSpinner := r.TaskRunner.GetNewSubtaskSpinner("Setting up SSH keys")
211215
if err := setupSshKeys(); err != nil {
212-
fmt.Println("\nUnable to setup SSH keys. (" + err.Error() + ")")
216+
if sshSpinner != nil {
217+
sshSpinner.UpdateMessage("Unable to setup SSH keys. (\" + err.Error() + \")")
218+
sshSpinner.Error()
219+
} else {
220+
fmt.Println("Unable to setup SSH keys. (" + err.Error() + ")")
221+
}
213222
os.Exit(1)
214223
}
224+
if sshSpinner != nil {
225+
sshSpinner.Complete()
226+
}
215227

216-
r.PrintLn("Setting up users.")
228+
userSpinner := r.TaskRunner.GetNewSubtaskSpinner("Setting up users")
217229
if err := userSetup(); err != nil {
218-
fmt.Println("\nUnable to create StackHead users. (" + err.Error() + ")")
230+
if userSpinner != nil {
231+
userSpinner.UpdateMessage("Unable to create StackHead users. (" + err.Error() + ")")
232+
userSpinner.Error()
233+
} else {
234+
fmt.Println("Unable to create StackHead users. (" + err.Error() + ")")
235+
}
219236
os.Exit(1)
220237
}
238+
if userSpinner != nil {
239+
userSpinner.Complete()
240+
}
221241

222-
r.PrintLn("Setting up folders.")
242+
folderSpinner := r.TaskRunner.GetNewSubtaskSpinner("Setting up folders")
223243
if err := folderSetup(); err != nil {
224-
fmt.Println("\nUnable to create folders. (" + err.Error() + ")")
244+
if folderSpinner != nil {
245+
folderSpinner.UpdateMessage("Unable to create folders. (" + err.Error() + ")")
246+
folderSpinner.Error()
247+
} else {
248+
fmt.Println("Unable to create folders. (" + err.Error() + ")")
249+
}
225250
os.Exit(1)
226251
}
252+
if folderSpinner != nil {
253+
folderSpinner.Complete()
254+
}
227255

256+
versionSpinner := r.TaskRunner.GetNewSubtaskSpinner("Writing StackHead version")
228257
if err := system.WriteVersion(); err != nil {
229-
fmt.Println("\nUnable to write version. (" + err.Error() + ")")
258+
if versionSpinner != nil {
259+
versionSpinner.UpdateMessage("Unable to write version. (" + err.Error() + ")")
260+
versionSpinner.Error()
261+
} else {
262+
fmt.Println("Unable to write version. (" + err.Error() + ")")
263+
}
230264
os.Exit(1)
231265
}
232-
233-
//- import_tasks: "../roles/stackhead_module_api/tasks_internal/setup.yml"
266+
if versionSpinner != nil {
267+
versionSpinner.Complete()
268+
}
234269

235270
return err
236271
},
@@ -248,14 +283,21 @@ var SetupServer = &cobra.Command{
248283
if module.GetConfig().Type == "plugin" || module.GetConfig().Type == "dns" {
249284
continue
250285
}
286+
moduleSpinner := r.TaskRunner.GetNewSubtaskSpinner("Setup " + module.GetConfig().Name)
251287
event.MustFire(
252288
"setup.modules.pre-install-module."+module.GetConfig().Type+"."+module.GetConfig().Name,
253289
event.M{"module": module},
254290
)
255291
moduleSettings := system.GetModuleSettings(module.GetConfig().Name)
256292
if err := module.Install(moduleSettings); err != nil {
293+
if moduleSpinner != nil {
294+
moduleSpinner.Error()
295+
}
257296
return err
258297
}
298+
if moduleSpinner != nil {
299+
moduleSpinner.Complete()
300+
}
259301
event.MustFire(
260302
"setup.modules.post-install-module."+module.GetConfig().Type+"."+module.GetConfig().Name,
261303
event.M{"module": module},

modules/container/docker/install.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ func PrepareCredentialsStore() error {
114114
return fmt.Errorf("unable to lookup GPG key for Docker Credentials Store: " + err.Error())
115115
}
116116
}
117-
fmt.Println("Docker Credentials encryption key is " + key)
117+
//fmt.Println("Docker Credentials encryption key is " + key)
118118
// todo: log created resource
119119

120120
_, err = system.SimpleRemoteRun("pass", system.RemoteRunOpts{User: "stackhead", Args: []string{"init", key}})

routines/tasks.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ func (t *TaskRunner) GetNewSubtaskSpinner(name string) *ysmrr.Spinner {
6969
if t.spinnerManager == nil {
7070
return nil
7171
}
72-
spinner := t.spinnerManager.AddSpinner(name)
72+
spinner := t.spinnerManager.AddSpinner(" " + name)
7373
return spinner
7474
}
7575

0 commit comments

Comments
 (0)