github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/cmd/chore/boom-debug/main.go (about) 1 package main 2 3 import ( 4 "context" 5 "flag" 6 7 "github.com/caos/orbos/internal/ctrlcrd" 8 9 "github.com/caos/orbos/pkg/git" 10 11 "github.com/caos/orbos/internal/helpers" 12 "github.com/caos/orbos/internal/operator/boom" 13 "github.com/caos/orbos/mntr" 14 _ "k8s.io/client-go/plugin/pkg/client/auth/gcp" 15 ) 16 17 func main() { 18 19 gitops := flag.Bool("gitops", false, "defines if the operator should run in gitops mode not crd mode") 20 orbconfig := flag.String("orbconfig", "~/.orb/config", "The orbconfig file to use") 21 verbose := flag.Bool("verbose", false, "Print debug levelled logs") 22 metricsAddr := flag.String("metrics-addr", ":8080", "The address the metric endpoint binds to.") 23 24 flag.Parse() 25 26 monitor := mntr.Monitor{ 27 OnInfo: mntr.LogMessage, 28 OnChange: mntr.LogMessage, 29 OnError: mntr.LogError, 30 } 31 32 if *verbose { 33 monitor = monitor.Verbose() 34 } 35 36 if !*gitops { 37 if err := ctrlcrd.Start(monitor, "crdoperators", "./artifacts", *metricsAddr, "", ctrlcrd.Boom); err != nil { 38 panic(err) 39 } 40 } else { 41 42 ensure := git.New(context.Background(), monitor.WithField("task", "ensure"), "Boom", "boom@caos.ch") 43 query := git.New(context.Background(), monitor.WithField("task", "query"), "Boom", "boom@caos.ch") 44 45 ensure.Clone() 46 query.Clone() 47 48 takeoff, _ := boom.Takeoff( 49 monitor, 50 "./artifacts", 51 helpers.PruneHome(*orbconfig), 52 ensure, query, 53 ) 54 55 for { 56 takeoff() 57 } 58 } 59 }