func init()

in cmd/hub/cmd/cluster.go [311:404]


func init() {
	createClusterCmd.Flags().StringVarP(&environmentSelector, "environment", "e", "",
		"Put cluster in Environment, supply name or id")
	createClusterCmd.Flags().StringVarP(&templateSelector, "template", "m", "",
		"Use specified template, by name or id")
	createClusterCmd.Flags().StringVarP(&clusterRegion, "region", "", "",
		"Cloud region if different from Cloud Account default region")
	createClusterCmd.Flags().StringVarP(&clusterZone, "zone", "", "",
		"Cloud zone if different from Cloud Account default zone")
	createClusterCmd.Flags().StringVarP(&eksAdmin, "eks-admin", "", "",
		"Set AWS EKS cluster admin IAM user https://docs.aws.amazon.com/eks/latest/userguide/add-user-role.html")
	createClusterCmd.Flags().StringVarP(&eksClusterName, "eks-cluster", "", "",
		"Set AWS EKS cluster native name")
	createClusterCmd.Flags().StringVarP(&gkeClusterName, "gke-cluster", "", "",
		"Set GCP GKE cluster native name")
	createClusterCmd.Flags().StringVarP(&aksClusterName, "aks-cluster", "", "",
		"Set Azure AKS cluster native name")
	createClusterCmd.Flags().StringVarP(&azureResourceGroup, "azure-resource-group", "", "",
		"Set Azure resource group name")
	createClusterCmd.Flags().BoolVarP(&autoCreateTemplate, "create-template", "", true,
		"Create adapter template if no existing template is found for reuse")
	createClusterCmd.Flags().BoolVarP(&createNewTemplate, "create-new-template", "", false,
		"Do not reuse existing template, always create fresh one (set name via --template)")
	createClusterCmd.Flags().BoolVarP(&waitAndTailDeployLogs, "wait", "w", false,
		"Wait for deployment and tail logs")
	createClusterCmd.Flags().BoolVarP(&dryRun, "dry", "y", false,
		"Save parameters and envrc to Template's Git but do not start the deployment")

	createClusterCmd.Flags().Float32VarP(&spotPrice, "spot-price", "s", 0,
		"AWS use spot instances at specified spot price")
	createClusterCmd.Flags().BoolVarP(&preemptibleVMs, "preemptible-vms", "p", false,
		"GCP use preemptible VMs")
	createClusterCmd.Flags().IntVarP(&volumeSize, "volume-size", "z", 0,
		"Node root volume size (default 30GB)")

	createClusterCmd.Flags().BoolVarP(&acm, "acm", "", false,
		"Provision ACM for ingress TLS (AWS only)")
	createClusterCmd.Flags().BoolVarP(&certManager, "cert-manager", "", true,
		"Provision Cert-Manager for ingress TLS")
	createClusterCmd.Flags().BoolVarP(&autoscaler, "autoscale", "a", true,
		"Autoscale workers with cluster-autoscaler (EPAM Systems and EKS Kubernetes only)")
	createClusterCmd.Flags().BoolVarP(&kubeDashboard, "kube-dashboard", "", false,
		"Provision Kube Dashboard")
	createClusterCmd.Flags().StringVarP(&kubeDashboardMode, "kube-dashboard-mode", "", "read-only",
		"Kube Dashboard access mode, one of: read-only, admin")

	importClusterCmd.Flags().StringVarP(&environmentSelector, "environment", "e", "",
		"Put cluster in Environment, supply name or id")
	importClusterCmd.Flags().StringVarP(&templateSelector, "template", "m", "",
		"Use specified adapter template, by name or id")
	importClusterCmd.Flags().StringVarP(&clusterRegion, "region", "", "",
		"Cloud region if different from Cloud Account default region")
	importClusterCmd.Flags().StringVarP(&clusterZone, "zone", "", "",
		"Cloud zone if different from Cloud Account default zone")
	importClusterCmd.Flags().StringVarP(&k8sEndpoint, "k8s-endpoint", "", "",
		"EPAM Systems Kubernetes cluster API endpoint, default to api.{domain}")
	importClusterCmd.Flags().StringVarP(&eksClusterName, "eks-cluster", "", "",
		"AWS EKS cluster native name")
	importClusterCmd.Flags().StringVarP(&eksEndpoint, "eks-endpoint", "", "",
		"AWS EKS cluster API endpoint (discovered via AWS EKS API if cluster name is supplied)")
	importClusterCmd.Flags().StringVarP(&gkeClusterName, "gke-cluster", "", "",
		"GCP GKE cluster native name")
	importClusterCmd.Flags().StringVarP(&aksClusterName, "aks-cluster", "", "",
		"Azure AKS cluster native name")
	importClusterCmd.Flags().StringVarP(&azureResourceGroup, "azure-resource-group", "", "",
		"Azure resource group name")
	importClusterCmd.Flags().StringVarP(&metalEndpoint, "metal-endpoint", "", "",
		"Bare-metal cluster Kubernetes API endpoint (IP or hostname [:port])")
	importClusterCmd.Flags().StringVarP(&metalIngress, "metal-ingress", "", "",
		"Bare-metal cluster static ingress (IP or hostname, default to IP or hostname of the API endpoint)")
	importClusterCmd.Flags().StringVarP(&bearerToken, "bearer-token", "b", "",
		"Use Bearer token to authenticate (to the OpenShift cluster)")
	importClusterCmd.Flags().BoolVarP(&autoCreateTemplate, "create-template", "", true,
		"Create adapter template if no existing template is found for reuse")
	importClusterCmd.Flags().BoolVarP(&createNewTemplate, "create-new-template", "", false,
		"Do not reuse existing template, always create fresh one (set name via --template)")
	importClusterCmd.Flags().BoolVarP(&waitAndTailDeployLogs, "wait", "w", false,
		"Wait for deployment and tail logs")
	importClusterCmd.Flags().BoolVarP(&dryRun, "dry", "y", false,
		"Save parameters and envrc to Template's Git but do not start the import")

	importClusterCmd.Flags().BoolVarP(&acm, "acm", "", false,
		"Provision ACM for ingress TLS (AWS only)")
	importClusterCmd.Flags().BoolVarP(&certManager, "cert-manager", "", true,
		"Provision Cert-Manager for ingress TLS")
	importClusterCmd.Flags().BoolVarP(&kubeDashboard, "kube-dashboard", "", false,
		"Provision Kube Dashboard")
	importClusterCmd.Flags().StringVarP(&kubeDashboardMode, "kube-dashboard-mode", "", "read-only",
		"Kube Dashboard access mode, one of: read-only, admin")

	clusterCmd.AddCommand(createClusterCmd)
	clusterCmd.AddCommand(importClusterCmd)
	apiCmd.AddCommand(clusterCmd)
}