github.com/unionj-cloud/go-doudou@v1.3.8-0.20221011095552-0088008e5b31/framework/internal/banner/banner.go (about) 1 package banner 2 3 import ( 4 "github.com/common-nighthawk/go-figure" 5 "github.com/unionj-cloud/go-doudou/framework/internal/config" 6 "github.com/unionj-cloud/go-doudou/toolkit/cast" 7 "github.com/unionj-cloud/go-doudou/toolkit/stringutils" 8 "sync" 9 ) 10 11 var once sync.Once 12 13 func Print() { 14 once.Do(func() { 15 if !config.CheckDev() { 16 return 17 } 18 banner := config.DefaultGddBanner 19 if b, err := cast.ToBoolE(config.GddBanner.Load()); err == nil { 20 banner = b 21 } 22 if banner { 23 bannerText := config.DefaultGddBannerText 24 if stringutils.IsNotEmpty(config.GddBannerText.Load()) { 25 bannerText = config.GddBannerText.Load() 26 } 27 figure.NewColorFigure(bannerText, "doom", "green", true).Print() 28 } 29 }) 30 }