@@ -63,6 +63,7 @@ const (
6363 FlagNameBuildMode = "build-mode"
6464 FlagNameBuildControls = "build-controls"
6565 FlagNameBuildGateways = "build-gateways"
66+ FlagNameObservabilityTargets = "o11y-targets"
6667 FlagNameAutoUpgrade = "auto-upgrade"
6768 FlagNameFailFast = "fail-fast"
6869 FlagNameReady = "ready"
@@ -395,14 +396,19 @@ func Run(ctx context.Context) error {
395396 },
396397 }
397398
398- buildModeFlags := []cli.Flag {
399+ builFlags := []cli.Flag {
399400 & cli.StringFlag {
400401 Name : FlagNameBuildMode ,
401402 Aliases : []string {"mode" , "m" },
402403 Usage : "build mode: one of " + strings .Join (buildModes , ", " ),
403404 EnvVars : []string {"HHFAB_BUILD_MODE" },
404405 Value : string (recipe .BuildModeISO ),
405406 },
407+ & cli.StringFlag {
408+ Name : FlagNameObservabilityTargets ,
409+ Usage : "inject extra observability targets" ,
410+ EnvVars : []string {"HHFAB_O11Y_TARGETS" },
411+ },
406412 }
407413
408414 var joinToken string
@@ -708,7 +714,7 @@ func Run(ctx context.Context) error {
708714 {
709715 Name : "build" ,
710716 Usage : "build installers" ,
711- Flags : flatten (defaultFlags , hModeFlags , buildModeFlags , joinTokenFlags , []cli.Flag {
717+ Flags : flatten (defaultFlags , hModeFlags , builFlags , joinTokenFlags , []cli.Flag {
712718 & cli.BoolFlag {
713719 Name : FlagNameBuildControls ,
714720 Aliases : []string {"controls" },
@@ -725,11 +731,12 @@ func Run(ctx context.Context) error {
725731 Before : before (false ),
726732 Action : func (c * cli.Context ) error {
727733 if err := hhfab .Build (ctx , workDir , cacheDir , hhfab.BuildOpts {
728- HydrateMode : hhfab .HydrateMode (hydrateMode ),
729- BuildMode : recipe .BuildMode (c .String (FlagNameBuildMode )),
730- BuildControls : c .Bool (FlagNameBuildControls ),
731- BuildGateways : c .Bool (FlagNameBuildGateways ),
732- SetJoinToken : joinToken ,
734+ HydrateMode : hhfab .HydrateMode (hydrateMode ),
735+ BuildMode : recipe .BuildMode (c .String (FlagNameBuildMode )),
736+ BuildControls : c .Bool (FlagNameBuildControls ),
737+ BuildGateways : c .Bool (FlagNameBuildGateways ),
738+ SetJoinToken : joinToken ,
739+ ObservabilityTargets : c .String (FlagNameObservabilityTargets ),
733740 }); err != nil {
734741 return fmt .Errorf ("building: %w" , err )
735742 }
@@ -780,7 +787,7 @@ func Run(ctx context.Context) error {
780787 {
781788 Name : "up" ,
782789 Usage : "run VLAB" ,
783- Flags : flatten (defaultFlags , hModeFlags , buildModeFlags , joinTokenFlags , []cli.Flag {
790+ Flags : flatten (defaultFlags , hModeFlags , builFlags , joinTokenFlags , []cli.Flag {
784791 & cli.BoolFlag {
785792 Name : FlagNameReCreate ,
786793 Aliases : []string {"f" },
@@ -845,10 +852,11 @@ func Run(ctx context.Context) error {
845852 }
846853
847854 if err := hhfab .VLABUp (ctx , workDir , cacheDir , hhfab.VLABUpOpts {
848- HydrateMode : hhfab .HydrateMode (hydrateMode ),
849- ReCreate : c .Bool (FlagNameReCreate ),
850- BuildMode : recipe .BuildMode (c .String (FlagNameBuildMode )),
851- SetJoinToken : joinToken ,
855+ HydrateMode : hhfab .HydrateMode (hydrateMode ),
856+ ReCreate : c .Bool (FlagNameReCreate ),
857+ BuildMode : recipe .BuildMode (c .String (FlagNameBuildMode )),
858+ SetJoinToken : joinToken ,
859+ ObservabilityTargets : c .String (FlagNameObservabilityTargets ),
852860 VLABRunOpts : hhfab.VLABRunOpts {
853861 KillStale : c .Bool (FlagNameKillStale ),
854862 ControlsRestricted : c .Bool (FlagNameControlsRestricted ),
0 commit comments