Documentation ¶
Index ¶
- Constants
- Variables
- func AddCommonFlags(command *cobra.Command, flags *CommonFlags)
- func AddNodeFlags(command *cobra.Command)
- func AddNodeFlagsOnly(command *cobra.Command)
- func GetCredentials() (*azidentity.ChainedTokenCredential, error)
- func GetNodeResourceID(ctx context.Context, nodeName string) (string, error)
- func ParseVMSSResourceID(id string, vm *VirtualMachineScaleSetVM) error
- func VirtualMachineScaleSetVMsViaAzureAPI(subID, rg, clusterName string) (map[string]*VirtualMachineScaleSetVM, error)
- func VirtualMachineScaleSetVMsViaKubeconfig() (map[string]*VirtualMachineScaleSetVM, error)
- type CommonFlags
- type OutputTruncate
- type RunCommandResult
- type VirtualMachineScaleSetVM
Constants ¶
const ( NodeKey = "node" SubscriptionIDKey = "subscription" ResourceGroupKey = "resource-group" ClusterNameKey = "cluster-name" NodeResourceGroupKey = "node-resource-group" VMSSKey = "vmss" VMSSInstanceIDKey = "instance-id" ResourceIDKey = "id" )
const ( OutputTruncateHead OutputTruncate = iota OutputTruncateTail BytesLimit = 4096 DefaultRunCommandTimeoutInSeconds = 300 )
Variables ¶
var DefaultSpinner = spinner.New(spinner.CharSets[9], 200*time.Millisecond)
var KubernetesConfigFlags = genericclioptions.NewConfigFlags(false)
Functions ¶
func AddCommonFlags ¶
func AddCommonFlags(command *cobra.Command, flags *CommonFlags)
func AddNodeFlags ¶
AddNodeFlags adds node flags and binds them to config/environment variables Every command that allows user to specify the node name has three options: (1) Provide the kubernetes node name (2) Provide the VMMS instance information (--subscription, --node-resource-group, --vmss and --instance-id) (3) Provide Resource ID (/subscriptions/mySubID/resourceGroups/myRG/providers/myProvider/virtualMachineScaleSets/myVMSS/virtualMachines/myInsID)
func AddNodeFlagsOnly ¶
AddNodeFlagsOnly adds node flags without binding config/environment variables
func GetCredentials ¶
func GetCredentials() (*azidentity.ChainedTokenCredential, error)
GetCredentials returns a credential chain that will try to authenticate using the Azure CLI and then using the interactive browser. Further details about authentication: https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/azidentity
func GetNodeResourceID ¶
GetNodeResourceID retrieve the Azure resource ID of a given node. In other words, the resource ID of the VM scale set instance. It returns format: /subscriptions/mySubID/resourceGroups/myRG/providers/myProvider/virtualMachineScaleSets/myVMSS/virtualMachines/myInsID
func ParseVMSSResourceID ¶
func ParseVMSSResourceID(id string, vm *VirtualMachineScaleSetVM) error
ParseVMSSResourceID extracts elements from a given VMSS resource ID with format: /subscriptions/mySubID/resourceGroups/myRG/providers/myProvider/virtualMachineScaleSets/myVMSS/virtualMachines/myInsID
func VirtualMachineScaleSetVMsViaAzureAPI ¶ added in v0.2.2
func VirtualMachineScaleSetVMsViaAzureAPI(subID, rg, clusterName string) (map[string]*VirtualMachineScaleSetVM, error)
func VirtualMachineScaleSetVMsViaKubeconfig ¶
func VirtualMachineScaleSetVMsViaKubeconfig() (map[string]*VirtualMachineScaleSetVM, error)
Types ¶
type CommonFlags ¶
type CommonFlags struct {
Verbose bool
}
CommonFlags contains CLI flags common for all subcommands
type OutputTruncate ¶ added in v0.2.1
type OutputTruncate int
type RunCommandResult ¶ added in v0.2.2
func RunCommand ¶
func RunCommand( ctx context.Context, cred azcore.TokenCredential, vm *VirtualMachineScaleSetVM, command *string, verbose bool, timeout *int, outputTruncate OutputTruncate, ) ( *RunCommandResult, error, )
type VirtualMachineScaleSetVM ¶
type VirtualMachineScaleSetVM struct { SubscriptionID string NodeResourceGroup string VMScaleSet string InstanceID string }
func VirtualMachineScaleSetVMFromConfig ¶
func VirtualMachineScaleSetVMFromConfig() (*VirtualMachineScaleSetVM, error)
VirtualMachineScaleSetVMFromConfig returns a VirtualMachineScaleSetVM object it assumes that the config is set and valid