mirror of
https://github.com/lingble/talos.git
synced 2025-11-27 11:23:46 +00:00
This implements `osctl cluster destroy` for Firecracker, adds new utility command `osctl cluser show`. Firecracker mode now has control process for firecracker VMs, allowing clean reboots and background operations. Lots of small fixes to Firecracker mode, clean CNI shutdown, cleaning up netns, etc. Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
46 lines
1.3 KiB
Go
46 lines
1.3 KiB
Go
// This Source Code Form is subject to the terms of the Mozilla Public
|
|
// License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
package config
|
|
|
|
import "github.com/talos-systems/talos/pkg/config/types/v1alpha1/generate"
|
|
|
|
// BundleOption controls config options specific to config bundle generation.
|
|
type BundleOption func(o *BundleOptions) error
|
|
|
|
// InputOptions holds necessary params for generating an input
|
|
type InputOptions struct {
|
|
ClusterName string
|
|
Endpoint string
|
|
KubeVersion string
|
|
GenOptions []generate.GenOption
|
|
}
|
|
|
|
// BundleOptions describes generate parameters.
|
|
type BundleOptions struct {
|
|
ExistingConfigs string // path to existing config files
|
|
InputOptions *InputOptions
|
|
}
|
|
|
|
// DefaultBundleOptions returns default options.
|
|
func DefaultBundleOptions() BundleOptions {
|
|
return BundleOptions{}
|
|
}
|
|
|
|
// WithExistingConfigs sets the path to existing config files
|
|
func WithExistingConfigs(configPath string) BundleOption {
|
|
return func(o *BundleOptions) error {
|
|
o.ExistingConfigs = configPath
|
|
return nil
|
|
}
|
|
}
|
|
|
|
// WithInputOptions allows passing in of various params for net-new input generation
|
|
func WithInputOptions(inputOpts *InputOptions) BundleOption {
|
|
return func(o *BundleOptions) error {
|
|
o.InputOptions = inputOpts
|
|
return nil
|
|
}
|
|
}
|