worldsHostPath:=fs.String("worlds-host-path","","node directory under which each world PVC is visible as <path>/<pvc>; enables the reaper CronJob (requires --backup-pvc and --archive-local-path)")
archiveLocalPath:=fs.String("archive-local-path","","path the backup PVC is mounted at in the reaper CronJob; MUST equal felis.toml [archive] local_path")
varvelocityCIDRsmultiFlag
fs.Var(&velocityCIDRs,"velocity-cidr","CIDR of an off-cluster Velocity proxy host allowed to reach game port 25565 (repeatable, REQUIRED)")
fs.Var(&velocityCIDRs,"velocity-cidr","CIDR of a Velocity proxy host allowed to reach game port 25565 (repeatable, REQUIRED)")
varpackageCIDRsmultiFlag
fs.Var(&packageCIDRs,"package-cidr","CIDR of a package mirror build Pods may reach (repeatable; default none = no internet egress)")
iferr:=fs.Parse(args);err!=nil{
return2
}
// --velocity-cidr is mandatory: the game policy is fail-closed, so omitting it
// would render a server nobody can reach. Fail loudly at generation time.
// Keep proxy placement explicit. This matters for remote proxies and documents
// the expected source even when Velocity runs on the resident node.
iflen(velocityCIDRs)==0{
fmt.Fprintln(stderr,"felis manifests: at least one --velocity-cidr is required "+
"(the game NetworkPolicy fails closed without it; pass the Velocity proxy host CIDR, e.g. --velocity-cidr 10.0.0.5/32)")
"(pass the Velocity proxy host CIDR, e.g. --velocity-cidr 10.0.0.5/32)")