Skip to content

Commit

Permalink
Fix #39 have specific runtime and network option for start command
Browse files Browse the repository at this point in the history
  • Loading branch information
innobead committed Nov 23, 2020
1 parent 15a991b commit f3fd755
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 16 deletions.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,12 +69,12 @@ Usage:
kubefire cluster create [name] [flags]

Flags:
--bootstrapper string Bootstrapper type, options: [kubeadm, k3s, rke] (default "kubeadm")
--config string Cluster configuration file (ex: use 'config-template' command to generate the default cluster config)
--extra-options string Extra options (ex: key=value,...) for bootstrapper
-b, --bootstrapper string Bootstrapper type, options: [kubeadm, k3s, rke] (default "kubeadm")
-c, --config string Cluster configuration file (ex: use 'config-template' command to generate the default cluster config)
-o, --extra-options string Extra options (ex: key=value,...) for bootstrapper
-f, --force Force to recreate if the cluster exists
-h, --help help for create
--image string Rootfs container image (default "ghcr.io/innobead/kubefire-opensuse-leap:15.2")
-i, --image string Rootfs container image (default "ghcr.io/innobead/kubefire-opensuse-leap:15.2")
--kernel-args string Kernel arguments (default "console=ttyS0 reboot=k panic=1 pci=off ip=dhcp security=apparmor apparmor=1")
--kernel-image string Kernel container image (default "ghcr.io/innobead/kubefire-ignite-kernel:4.19.125-amd64")
--master-count int Count of master node (default 1)
Expand All @@ -83,8 +83,8 @@ Flags:
--master-size string Disk size of master node (default "10GB")
--no-cache Forget caches
--no-start Don't start nodes
--pubkey string Public key
--version string Version of Kubernetes supported by bootstrapper (ex: v1.18, v1.18.8, empty)
-k, --pubkey string Public key
-v, --version string Version of Kubernetes supported by bootstrapper (ex: v1.18, v1.18.8, empty)
--worker-count int Count of worker node
--worker-cpu int CPUs of worker node (default 2)
--worker-memory string Memory of worker node (default "2GB")
Expand Down
12 changes: 6 additions & 6 deletions cmd/kubefire/cmd/cluster/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -97,13 +97,13 @@ var createCmd = &cobra.Command{
func init() {
flags := createCmd.Flags()

flags.StringVar(&cluster.Bootstrapper, "bootstrapper", cluster.Bootstrapper, util.FlagsValuesUsage("Bootstrapper type", bootstrap.BuiltinTypes))
flags.StringVar(&cluster.Pubkey, "pubkey", "", "Public key")
flags.StringVar(&cluster.Version, "version", "", "Version of Kubernetes supported by bootstrapper (ex: v1.18, v1.18.8, empty)")
flags.StringVar(&cluster.Image, "image", cluster.Image, "Rootfs container image")
flags.StringVarP(&cluster.Bootstrapper, "bootstrapper", "b", cluster.Bootstrapper, util.FlagsValuesUsage("Bootstrapper type", bootstrap.BuiltinTypes))
flags.StringVarP(&cluster.Pubkey, "pubkey", "k", "", "Public key")
flags.StringVarP(&cluster.Version, "version", "v", "", "Version of Kubernetes supported by bootstrapper (ex: v1.18, v1.18.8, empty)")
flags.StringVarP(&cluster.Image, "image", "i", cluster.Image, "Rootfs container image")
flags.StringVar(&cluster.KernelImage, "kernel-image", cluster.KernelImage, "Kernel container image")
flags.StringVar(&cluster.KernelArgs, "kernel-args", cluster.KernelArgs, "Kernel arguments")
flags.StringVar(&extraOptions, "extra-options", "", "Extra options (ex: key=value,...) for bootstrapper")
flags.StringVarP(&extraOptions, "extra-options", "o", "", "Extra options (ex: key=value,...) for bootstrapper")

flags.IntVar(&cluster.Master.Count, "master-count", cluster.Master.Count, "Count of master node")
flags.IntVar(&cluster.Master.Cpus, "master-cpu", cluster.Master.Cpus, "CPUs of master node")
Expand All @@ -114,7 +114,7 @@ func init() {
flags.IntVar(&cluster.Worker.Cpus, "worker-cpu", cluster.Worker.Cpus, "CPUs of worker node")
flags.StringVar(&cluster.Worker.Memory, "worker-memory", cluster.Worker.Memory, "Memory of worker node")
flags.StringVar(&cluster.Worker.DiskSize, "worker-size", cluster.Worker.DiskSize, "Disk size of worker node")
flags.StringVar(&configFile, "config", "", "Cluster configuration file (ex: use 'config-template' command to generate the default cluster config)")
flags.StringVarP(&configFile, "config", "c", "", "Cluster configuration file (ex: use 'config-template' command to generate the default cluster config)")

flags.BoolVarP(&forceDeleteCluster, "force", "f", false, "Force to recreate if the cluster exists")
flags.BoolVar(&noCache, "no-cache", false, "Forget caches")
Expand Down
9 changes: 5 additions & 4 deletions pkg/node/ignite.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,11 @@ import (
)

const (
RunCmd = `ignite run {{.Image}} --name={{.Name}} --label=cluster={{.Cluster}} --ssh={{.Pubkey}} --kernel-image={{.KernelImage}} --kernel-image={{.KernelImage}} --cpus={{.Cpus}} --memory={{.Memory}} --size={{.DiskSize}}`
CreateCmd = `ignite create {{.Image}} --name={{.Name}} --label=cluster={{.Cluster}} --ssh={{.Pubkey}} --kernel-image={{.KernelImage}} --kernel-image={{.KernelImage}} --cpus={{.Cpus}} --memory={{.Memory}} --size={{.DiskSize}}`
DeleteCmd = "ignite rm {{.Name}} --force"
StartCmd = "ignite start {{.Name}}"
RunCmd = `ignite run {{.Image}} --name={{.Name}} --label=cluster={{.Cluster}} --ssh={{.Pubkey}} --kernel-image={{.KernelImage}} --kernel-image={{.KernelImage}} --cpus={{.Cpus}} --memory={{.Memory}} --size={{.DiskSize}}`
CreateCmd = `ignite create {{.Image}} --name={{.Name}} --label=cluster={{.Cluster}} --ssh={{.Pubkey}} --kernel-image={{.KernelImage}} --kernel-image={{.KernelImage}} --cpus={{.Cpus}} --memory={{.Memory}} --size={{.DiskSize}}`
DeleteCmd = "ignite rm {{.Name}} --force"
//FIXME: ignite 0.8.0 issue, need specific runtime and network plugin options even there are default values already
StartCmd = "ignite start {{.Name}} --runtime containerd --network-plugin cni"
StopCmd = "ignite stop {{.Name}}"
ListImageCmd = "ignite {{.Image}} ls -q"
InspectCmd = "ignite inspect {{.Resource}} {{.ResourceName}} -t \"{{.ResourceFilter}}\""
Expand Down

0 comments on commit f3fd755

Please sign in to comment.