backupPVC:=fs.String("backup-pvc","felis-backups",`the world archive PVC, in the [k8s] namespace ("" when backups are off)`)
dbDir:=fs.String("db-dir",dbbackup.DefaultDir,`database bundle directory ("" copies no bundles)`)
registry:=fs.String("registry","",`host[:port] of the registry whose user images are copied (default: the in-cluster registry's loopback hostPort; "off" copies none)`)
uploadsDir:=fs.String("uploads-dir","","host directory of the submission uploads volume (default: resolved from the uploads PVC through the cluster)")
uploadsPVC:=fs.String("uploads-pvc",platform.UploadsPVCName,`the submission uploads PVC, in the control-plane namespace ("" copies no uploads)`)
statusFile:=fs.String("status-file",offsite.DefaultStatusFile,"where the result of this run is recorded for the watchdog and `status`")
return"",fmt.Errorf("archive volume %s is not a directory on a node (local or hostPath); pass -archive-dir with where it is mounted on this host",pv.Name)
return"",fmt.Errorf("%s %s is not a directory on a node (local or hostPath); pass %s with where it is mounted on this host",kind.what,pv.Name,kind.dirFlag)
}
iffi,err:=os.Stat(dir);err!=nil||!fi.IsDir(){
return"",fmt.Errorf("archive volume %s is %s on its node, which is not a directory here; run this on the node that holds it, or pass -archive-dir",pv.Name,dir)
return"",fmt.Errorf("%s %s is %s on its node, which is not a directory here; run this on the node that holds it, or pass %s",kind.what,pv.Name,dir,kind.dirFlag)
cfgPath:=fs.String("config","/etc/felis/felis.toml","path to felis.toml (the host copy)")
envFile:=fs.String("env-file",defaultOffsiteEnvFile,"file with the [offsite] secrets, for variables not already set")
uploadsDir:=fs.String("uploads-dir","","host directory of the submission uploads volume (default: resolved from the uploads PVC, binding it if needed)")
uploadsPVC:=fs.String("uploads-pvc",platform.UploadsPVCName,"the submission uploads PVC, in the control-plane namespace")
at:=fs.String("at","","uploads index version to restore (default: the newest; `felis offsite list` shows them)")
fmt.Fprintf(stderr,"felis offsite fetch-uploads: [registry] user_uploads_context %q is not the uploads volume; pass -uploads-dir to restore into a directory anyway\n",cfg.Registry.UserUploadsContext)
Changes for cmd/felis/run.go: 1 added line, 1 removed line.
Original line number
Diff line number
Diff line
@@ -13,7 +13,7 @@ Usage:
Commands:
migrate up Apply embedded database migrations under an advisory lock (snapshots the database first)
db Back up, verify, list and restore the control-plane database (backup|restore|verify|list|check)
offsite Copy world archives, database bundles and user images to an off-site bucket, and fetch them back (sync|status|list|fetch-db|fetch-worlds|fetch-images|keygen)
offsite Copy world archives, database bundles, user images and uploads to an off-site bucket, and fetch them back (sync|status|list|fetch-db|fetch-worlds|fetch-images|fetch-uploads|keygen)
operator Run the MinecraftServer controller-manager
api Run the felis-api HTTP server
nano Run the Felis-nano hasJoined multiplexer (multi-Yggdrasil, no control plane)