Documentation
¶
Index ¶
- type Cmd
- type CreateCmd
- type DeleteCmd
- type DescribeCmd
- type LabelCmds
- func (lc *LabelCmds) AddCobraCommand(s state.State) *cobra.Command
- func (lc *LabelCmds) RemoveCobraCommand(s state.State) *cobra.Command
- func (lc *LabelCmds) RunAdd(s state.State, cmd *cobra.Command, args []string) error
- func (lc *LabelCmds) RunRemove(s state.State, cmd *cobra.Command, args []string) error
- type ListCmd
- type SetRdnsCmd
- type UpdateCmd
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Cmd ¶
type Cmd struct { BaseCobraCommand func(hcapi2.Client) *cobra.Command Run func(state.State, *cobra.Command, []string) error }
Cmd allows defining commands for generic resource-based commands
type CreateCmd ¶ added in v1.40.0
type CreateCmd struct { BaseCobraCommand func(hcapi2.Client) *cobra.Command // Run is the function that will be called when the command is executed. // It should return the created resource, the schema of the resource and an error. Run func(state.State, *cobra.Command, []string) (any, any, error) PrintResource func(state.State, *cobra.Command, any) }
CreateCmd allows defining commands for resource creation
type DeleteCmd ¶ added in v1.25.0
type DeleteCmd struct { ResourceNameSingular string // e.g. "server" ResourceNamePlural string // e.g. "servers" ShortDescription string NameSuggestions func(client hcapi2.Client) func() []string AdditionalFlags func(*cobra.Command) Fetch func(s state.State, cmd *cobra.Command, idOrName string) (interface{}, *hcloud.Response, error) Delete func(s state.State, cmd *cobra.Command, resource interface{}) (*hcloud.Action, error) }
DeleteCmd allows defining commands for deleting a resource.
func (*DeleteCmd) CobraCommand ¶ added in v1.25.0
CobraCommand creates a command that can be registered with cobra.
type DescribeCmd ¶
type DescribeCmd struct { ResourceNameSingular string // e.g. "server" ShortDescription string // key in API response JSON to use for extracting object from response body for JSON output. JSONKeyGetByID string // e.g. "server" JSONKeyGetByName string // e.g. "servers" NameSuggestions func(client hcapi2.Client) func() []string AdditionalFlags func(*cobra.Command) // Fetch is called to fetch the resource to describe. // The first returned interface is the resource itself as a hcloud struct, the second is the schema for the resource. Fetch func(s state.State, cmd *cobra.Command, idOrName string) (interface{}, interface{}, error) PrintText func(s state.State, cmd *cobra.Command, resource interface{}) error }
DescribeCmd allows defining commands for describing a resource.
func (*DescribeCmd) CobraCommand ¶
func (dc *DescribeCmd) CobraCommand(s state.State) *cobra.Command
CobraCommand creates a command that can be registered with cobra.
type LabelCmds ¶
type LabelCmds struct { ResourceNameSingular string ShortDescriptionAdd string ShortDescriptionRemove string NameSuggestions func(client hcapi2.Client) func() []string LabelKeySuggestions func(client hcapi2.Client) func(idOrName string) []string FetchLabels func(s state.State, idOrName string) (map[string]string, int64, error) SetLabels func(s state.State, id int64, labels map[string]string) error }
LabelCmds allows defining commands for adding labels to resources.
func (*LabelCmds) AddCobraCommand ¶
AddCobraCommand creates a command that can be registered with cobra.
func (*LabelCmds) RemoveCobraCommand ¶
RemoveCobraCommand creates a command that can be registered with cobra.
type ListCmd ¶
type ListCmd struct { ResourceNamePlural string // e.g. "servers" JSONKeyGetByName string // e.g. "servers" DefaultColumns []string Fetch func(state.State, *pflag.FlagSet, hcloud.ListOpts, []string) ([]interface{}, error) AdditionalFlags func(*cobra.Command) OutputTable func(client hcapi2.Client) *output.Table Schema func([]interface{}) interface{} }
ListCmd allows defining commands for listing resources
func (*ListCmd) CobraCommand ¶
CobraCommand creates a command that can be registered with cobra.
type SetRdnsCmd ¶ added in v1.28.1
type SetRdnsCmd struct { ResourceNameSingular string // e.g. "server" ShortDescription string NameSuggestions func(client hcapi2.Client) func() []string AdditionalFlags func(*cobra.Command) Fetch func(s state.State, cmd *cobra.Command, idOrName string) (interface{}, *hcloud.Response, error) GetDefaultIP func(resource interface{}) net.IP }
SetRdnsCmd allows defining commands for setting the RDNS of a resource.
func (*SetRdnsCmd) CobraCommand ¶ added in v1.28.1
func (rc *SetRdnsCmd) CobraCommand(s state.State) *cobra.Command
CobraCommand creates a command that can be registered with cobra.
type UpdateCmd ¶ added in v1.25.0
type UpdateCmd struct { ResourceNameSingular string // e.g. "server" ShortDescription string NameSuggestions func(client hcapi2.Client) func() []string DefineFlags func(*cobra.Command) Fetch func(s state.State, cmd *cobra.Command, idOrName string) (interface{}, *hcloud.Response, error) Update func(s state.State, cmd *cobra.Command, resource interface{}, flags map[string]pflag.Value) error }
UpdateCmd allows defining commands for updating a resource.
func (*UpdateCmd) CobraCommand ¶ added in v1.25.0
CobraCommand creates a command that can be registered with cobra.