flag.StringVar(&VeleroCfg.CloudProvider,"cloud-provider","","cloud that Velero will be installed into. Required.")
flag.StringVar(&VeleroCfg.ObjectStoreProvider,"object-store-provider","","provider of object store plugin. Required if cloud-provider is kind, otherwise ignored.")
flag.StringVar(&VeleroCfg.BSLBucket,"bucket","","name of the object storage bucket where backups from e2e tests should be stored. Required.")
flag.StringVar(&VeleroCfg.CloudCredentialsFile,"credentials-file","","file containing credentials for backup and volume provider. Required.")
flag.StringVar(&VeleroCfg.VeleroCLI,"velerocli","velero","path to the velero application to use.")
flag.StringVar(&VeleroCfg.VeleroImage,"velero-image","velero/velero:main","image for the velero server to be tested.")
flag.StringVar(&VeleroCfg.Plugins,"plugins","","provider plugins to be tested.")
flag.StringVar(&VeleroCfg.AddBSLPlugins,"additional-bsl-plugins","","additional plugins to be tested.")
flag.StringVar(&VeleroCfg.VeleroVersion,"velero-version","main","image version for the velero server to be tested with.")
flag.BoolVar(&VeleroCfg.UseNodeAgent,"use-node-agent",true,"whether deploy node agent daemonset velero during the test. Optional.")
flag.BoolVar(&VeleroCfg.UseVolumeSnapshots,"use-volume-snapshots",true,"Whether or not to create snapshot location automatically. Set to false if you do not plan to create volume snapshots via a storage provider.")
flag.StringVar(&VeleroCfg.RegistryCredentialFile,"registry-credential-file","","file containing credential for the image registry, follows the same format rules as the ~/.docker/config.json file. Optional.")
flag.StringVar(&VeleroCfg.KibishiiDirectory,"kibishii-directory","github.com/vmware-tanzu-experiments/distributed-data-generator/kubernetes/yaml/","The file directory or URL path to install Kibishii. Optional.")
flag.StringVar(&VeleroCfg.AdditionalBSLProvider,"additional-bsl-object-store-provider","","Provider of object store plugin for additional backup storage location. Required if testing multiple credentials support.")
flag.StringVar(&VeleroCfg.AdditionalBSLBucket,"additional-bsl-bucket","","name of the object storage bucket for additional backup storage location. Required if testing multiple credentials support.")
flag.StringVar(&VeleroCfg.AdditionalBSLPrefix,"additional-bsl-prefix","","prefix under which all Velero data should be stored within the bucket for additional backup storage location. Optional.")
flag.StringVar(&VeleroCfg.AdditionalBSLConfig,"additional-bsl-config","","configuration to use for the additional backup storage location. Format is key1=value1,key2=value2")
flag.StringVar(&VeleroCfg.AdditionalBSLCredentials,"additional-bsl-credentials-file","","file containing credentials for additional backup storage location provider. Required if testing multiple credentials support.")
var_=Describe("[APIGroup][APIExtensions] CRD of apiextentions v1beta1 should be B/R successfully from cluster(k8s version < 1.22) to cluster(k8s version >= 1.22)",APIExtensionsVersionsTest)
var_=Describe("[Basic][Restic] Velero tests on cluster using the plugin provider for object storage and Restic for volume backups",BackupRestoreWithRestic)
var_=Describe("[Basic][Snapshot] Velero tests on cluster using the plugin provider for object storage and snapshots for volume backups",BackupRestoreWithSnapshots)
var_=Describe("[Upgrade][Restic] Velero upgrade tests on cluster using the plugin provider for object storage and Restic for volume backups",BackupUpgradeRestoreWithRestic)
var_=Describe("[Upgrade][Snapshot] Velero upgrade tests on cluster using the plugin provider for object storage and snapshots for volume backups",BackupUpgradeRestoreWithSnapshots)
// test filter objects by namespace, type, or labels when backup or restore.
var_=Describe("[ResourceFiltering][ExcludeFromBackup] Resources with the label velero.io/exclude-from-backup=true are not included in backup",ExcludeFromBackupTest)
var_=Describe("[ResourceFiltering][ExcludeNamespaces][Backup] Velero test on exclude namespace from the cluster backup",BackupWithExcludeNamespaces)
var_=Describe("[ResourceFiltering][ExcludeNamespaces][Restore] Velero test on exclude namespace from the cluster restore",RestoreWithExcludeNamespaces)
var_=Describe("[ResourceFiltering][ExcludeResources][Backup] Velero test on exclude resources from the cluster backup",BackupWithExcludeResources)
var_=Describe("[ResourceFiltering][ExcludeResources][Restore] Velero test on exclude resources from the cluster restore",RestoreWithExcludeResources)
var_=Describe("[ResourceFiltering][IncludeNamespaces][Backup] Velero test on include namespace from the cluster backup",BackupWithIncludeNamespaces)
var_=Describe("[ResourceFiltering][IncludeNamespaces][Restore] Velero test on include namespace from the cluster restore",RestoreWithIncludeNamespaces)
var_=Describe("[ResourceFiltering][IncludeResources][Backup] Velero test on include resources from the cluster backup",BackupWithIncludeResources)
var_=Describe("[ResourceFiltering][IncludeResources][Restore] Velero test on include resources from the cluster restore",RestoreWithIncludeResources)
var_=Describe("[ResourceFiltering][LabelSelector] Velero test on backup include resources matching the label selector",BackupWithLabelSelector)
var_=Describe("[Backups][TTL][LongTime] Local backups and restic repos will be deleted once the corresponding backup storage location is deleted",TTLTest)
var_=Describe("[Backups][BackupsSync] Backups in object storage are synced to a new Velero and deleted backups in object storage are synced to be deleted in Velero",BackupsSyncTest)
var_=Describe("[Schedule][BackupCreation] Schedule controller wouldn't create a new backup when it still has pending or InProgress backup",ScheduleBackupCreationTest)
var_=Describe("[BSL][Deletion][Snapshot] Local backups will be deleted once the corresponding backup storage location is deleted",BslDeletionWithSnapshots)
var_=Describe("[BSL][Deletion][Restic] Local backups and restic repos will be deleted once the corresponding backup storage location is deleted",BslDeletionWithRestic)
var_=Describe("[NamespaceMapping][Multiple][Restic] Backup resources should follow the specific order in schedule",MultiNamespacesMappingResticTest)
var_=Describe("[NamespaceMapping][Single][Snapshot] Backup resources should follow the specific order in schedule",OneNamespaceMappingSnapshotTest)
var_=Describe("[NamespaceMapping][Multiple][Snapshot] Backup resources should follow the specific order in schedule",MultiNamespacesMappingSnapshotTest)
var_=Describe("[Basic][StorageClass] Storage class of persistent volumes and persistent volume claims can be changed during restores",StorageClasssChangingTest)
// 2. E2E tests require a kubernetes cluster to install and run velero which further requires more configuration. See above referenced command line flags.