diff --git a/backend/cmd/web/main.go b/backend/cmd/web/main.go index 4272f80..73558c2 100644 --- a/backend/cmd/web/main.go +++ b/backend/cmd/web/main.go @@ -37,7 +37,10 @@ var ( } if bootstrap == true || !initialised { log.Info("Bootstrap flag set or uninitialised workdir, bootstrapping") - processes.BootstrapEnv(&appConfig) + err := processes.BootstrapEnv(&appConfig) + if err != nil { + log.Errorf("Errors were encountered during bootstrap process. Please check the errorlog for more details.") + } } router := web.DefineRoutes(appConfig) diff --git a/backend/internal/database/operations.go b/backend/internal/database/operations.go index f703027..4c857ed 100644 --- a/backend/internal/database/operations.go +++ b/backend/internal/database/operations.go @@ -96,6 +96,12 @@ func (g GormDatastore) StoreSSMParams(p []config.SSMParameter, owner string) err model.Value = param.Value model.Owner = owner + log.WithFields(log.Fields{ + "name": param.Name, + "type": param.Type, + "owner": owner, + }).Info("Storing SSM parameter") + // Use Save to insert or update the record if err := g.db.Save(&model).Error; err != nil { // Handle error for Save diff --git a/backend/internal/processes/bootstrap.go b/backend/internal/processes/bootstrap.go index 2256a12..89fa4f3 100644 --- a/backend/internal/processes/bootstrap.go +++ b/backend/internal/processes/bootstrap.go @@ -17,7 +17,7 @@ import ( "github.com/unity-sds/unity-management-console/backend/types" ) -func BootstrapEnv(appconf *config.AppConfig) { +func BootstrapEnv(appconf *config.AppConfig) error { // Print out everything in appConfig log.Infof("AppConfig contents:") log.Infof("GithubToken: %s", appconf.GithubToken) @@ -36,6 +36,8 @@ func BootstrapEnv(appconf *config.AppConfig) { for _, item := range appconf.MarketplaceItems { log.Infof(" - Name: %s, Version: %s", item.Name, item.Version) } + + log.Infof("Creating Local Database") store, err := database.NewGormDatastore() if err != nil { log.WithError(err).Error("Problem creating database") @@ -43,9 +45,10 @@ func BootstrapEnv(appconf *config.AppConfig) { if err != nil { log.WithError(err).Error("Problem writing to auditlog") } - return + return err } + log.Infof("Provisioning S3 Bucket") err = provisionS3(appconf) if err != nil { log.WithError(err).Error("Error provisioning S3 bucket") @@ -53,8 +56,10 @@ func BootstrapEnv(appconf *config.AppConfig) { if err != nil { log.WithError(err).Error("Problem writing to auditlog") } - return + return err } + + log.Infof("Setting Up Default SSM Parameters") err = storeDefaultSSMParameters(appconf, store) if err != nil { log.WithError(err).Error("Error setting SSM Parameters") @@ -62,8 +67,10 @@ func BootstrapEnv(appconf *config.AppConfig) { if err != nil { log.WithError(err).Error("Problem writing to auditlog") } - return + return err } + + log.Infof("Setting Up Terraform") err = initTerraform(store, appconf) if err != nil { log.WithError(err).Error("Error installing Terraform") @@ -71,7 +78,7 @@ func BootstrapEnv(appconf *config.AppConfig) { if err != nil { log.WithError(err).Error("Problem writing to auditlog") } - return + return err } //r := action.ActRunnerImpl{} @@ -79,6 +86,8 @@ func BootstrapEnv(appconf *config.AppConfig) { //if err != nil { // log.WithError(err).Error("Problem updating ssm config") //} + + log.Infof("Setting Up HTTPD Gateway from Marketplace") err = installGateway(store, appconf) if err != nil { log.WithError(err).Error("Error installing HTTPD Gateway") @@ -86,9 +95,10 @@ func BootstrapEnv(appconf *config.AppConfig) { if err != nil { log.WithError(err).Error("Problem writing to auditlog") } - return + return err } + log.Infof("Setting Up Health Status Lambda") err = installHealthStatusLambda(store, appconf) if err != nil { log.WithError(err).Error("Error installing Health Status") @@ -96,9 +106,10 @@ func BootstrapEnv(appconf *config.AppConfig) { if err != nil { log.WithError(err).Error("Problem writing to auditlog") } - return + return err } + log.Infof("Setting Up Basic API Gateway from Marketplace") err = installBasicAPIGateway(store, appconf) if err != nil { log.WithError(err).Error("Error installing API Gateway") @@ -106,9 +117,10 @@ func BootstrapEnv(appconf *config.AppConfig) { if err != nil { log.WithError(err).Error("Problem writing to auditlog") } - return + return err } + log.Infof("Setting Up Unity UI from Marketplace") err = installUnityUi(store, appconf) if err != nil { log.WithError(err).Error("Error installing unity-ui") @@ -116,14 +128,17 @@ func BootstrapEnv(appconf *config.AppConfig) { if err != nil { log.WithError(err).Error("Problem writing to auditlog") } - return + return err } err = store.AddToAudit(application.Bootstrap_Successful, "test") if err != nil { log.WithError(err).Error("Problem writing to auditlog") + return err } + log.Infof("Bootstrap Process Completed Succesfully") + return nil } func provisionS3(appConfig *config.AppConfig) error {