cmd

package
v0.3.0-beta Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 21, 2021 License: GPL-3.0 Imports: 35 Imported by: 0

Documentation

Overview

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Copyright © 2021 Melvin Hillsman <mrhillsman@redhat.com>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Index

Constants

This section is empty.

Variables

View Source
var ClusterId string
View Source
var Company string
View Source
var Namespace string

Functions

func Execute

func Execute()

Execute adds all child commands to the root command and sets flags appropriately. This is called by main.main(). It only needs to happen once to the rootCmd.

func NewCreateClusterCommand

func NewCreateClusterCommand() *cobra.Command

NewCreateClusterCommand creates a command that generates and applies cluster deployment artifacts.

Types

type Options

type Options struct {
	Name      string
	Namespace string
	//SSHPublicKeyFile                  string
	//SSHPublicKey                      string
	//SSHPrivateKeyFile                 string
	BaseDomain                        string
	PullSecret                        string
	PullSecretFile                    string
	BoundServiceAccountSigningKeyFile string
	Cloud                             string
	CredsFile                         string
	CredentialsModeManual             bool
	ClusterImageSet                   string
	ReleaseImage                      string
	ReleaseImageSource                string
	DeleteAfter                       string
	HibernateAfter                    string
	HibernateAfterDur                 *time.Duration
	ServingCert                       string
	ServingCertKey                    string
	UseClusterImageSet                bool
	ManageDNS                         bool
	Output                            string
	IncludeSecrets                    bool
	InstallOnce                       bool
	UninstallOnce                     bool
	SimulateBootstrapFailure          bool
	WorkerNodesCount                  int64
	CreateSampleSyncsets              bool
	ManifestsDir                      string
	Adopt                             bool
	AdoptAdminKubeConfig              string
	AdoptInfraID                      string
	AdoptClusterID                    string
	AdoptAdminUsername                string
	AdoptAdminPassword                string
	MachineNetwork                    string
	Region                            string
	Labels                            []string
	Annotations                       []string
	SkipMachinePools                  bool
	AdditionalTrustBundle             string
	CentralMachineManagement          bool
	Internal                          bool

	// AWS
	AWSUserTags    []string
	AWSPrivateLink bool

	// Azure
	AzureBaseDomainResourceGroupName string

	// OpenStack
	OpenStackCloud             string
	OpenStackExternalNetwork   string
	OpenStackMasterFlavor      string
	OpenStackComputeFlavor     string
	OpenStackAPIFloatingIP     string
	OpenStackIngressFloatingIP string

	// VSphere
	VSphereVCenter          string
	VSphereDatacenter       string
	VSphereDefaultDataStore string
	VSphereFolder           string
	VSphereCluster          string
	VSphereAPIVIP           string
	VSphereIngressVIP       string
	VSphereNetwork          string
	VSphereCACerts          string

	// Ovirt
	OvirtClusterID       string
	OvirtStorageDomainID string
	OvirtNetworkName     string
	OvirtAPIVIP          string
	OvirtIngressVIP      string
	OvirtCACerts         string
	// contains filtered or unexported fields
}

Options is the set of options to generate and apply a new cluster deployment

func (*Options) Complete

func (o *Options) Complete(cmd *cobra.Command, args []string) error

Complete finishes parsing arguments for the command

func (*Options) GenerateObjects

func (o *Options) GenerateObjects() ([]runtime.Object, error)

GenerateObjects generates resources for a new cluster deployment

func (*Options) Run

func (o *Options) Run() error

Run executes the command

func (*Options) Validate

func (o *Options) Validate(cmd *cobra.Command) error

Validate ensures that option values make sense

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL