in projects/aws/bottlerocket-bootstrap/pkg/bootstrap.go [52:92]
func Bootstrap() {
err := waitForPreReqs()
if err != nil {
fmt.Printf("Error waiting for bottlerocket pre-reqs: %v", err)
os.Exit(1)
}
fmt.Println("Initiating bottlerocket bootstrap")
acquireLock()
userData, err := utils.ResolveHostContainerUserData()
if err != nil {
fmt.Printf("Error parsing user-data: %v\n", err)
os.Exit(1)
}
b := buildBootstrapper(userData)
if err = b.InitializeDirectories(); err != nil {
fmt.Printf("Error initializing directories: %v\n", err)
os.Exit(1)
}
if err = utils.WriteUserDataFiles(userData); err != nil {
fmt.Printf("Error writing files from user-data: %v\n", err)
os.Exit(1)
}
if err = b.RunCmd(); err != nil {
fmt.Printf("Error running bootstrapper cmd: %v\n", err)
os.Exit(1)
}
// Bootstrapping done
err = utils.DisableBootstrapContainer()
if err != nil {
fmt.Printf("Error disabling bootstrap container: %v\n", err)
os.Exit(1)
}
fmt.Println("Bottlerocket bootstrap was successful. Disabled bootstrap container")
os.Exit(0)
}