Documentation ¶
Overview ¶
Package commands contains commands available to ctpu users.
Index ¶
- func AuthCommand(cfg *config.Config, cp AuthResourceManagementCP) subcommands.Command
- func ConfigCommand(cfg *config.Config, cli ConfigGcloudCLI) subcommands.Command
- func ConfigCommandAlias(cfg *config.Config, cli ConfigGcloudCLI) subcommands.Command
- func DeleteCommand(cfg *config.Config, tpu DeleteTPUCP, gce DeleteGCECP) subcommands.Command
- func DeleteCommandAlias(cfg *config.Config, tpu DeleteTPUCP, gce DeleteGCECP) subcommands.Command
- func ListCommand(cfg *config.Config, tpu ListTPUInstancesCP, gce ListGCEInstancesCP) subcommands.Command
- func ListCommandAlias(cfg *config.Config, tpu ListTPUInstancesCP, gce ListGCEInstancesCP) subcommands.Command
- func PauseCommand(cfg *config.Config, tpu PauseTPUCP, gce PauseGCECP) subcommands.Command
- func PauseCommandAlias(cfg *config.Config, tpu PauseTPUCP, gce PauseGCECP) subcommands.Command
- func QuotaCommand(config *config.Config) subcommands.Command
- func RestartCommand(cfg *config.Config, tpu RestartTPUCP) subcommands.Command
- func StatusCommand(cfg *config.Config, tpu StatusTPUCP, gce StatusGCECP) subcommands.Command
- func StatusCommandAlias(cfg *config.Config, tpu StatusTPUCP, gce StatusGCECP) subcommands.Command
- func TFVersionsCommand(cfg *config.Config, versions TFVersionsCP) subcommands.Command
- func TPULocationsCommand(cfg *config.Config, tpus TPULocationsCP) subcommands.Command
- func TPUSizeCommand(cfg *config.Config, tpus TPUSizeCP) subcommands.Command
- func UpCommand(cfg *config.Config, tpu UpTPUCP, gce UpGCECP, rmg UpResourceManagementCP, ...) subcommands.Command
- func VersionCommand(version string) subcommands.Command
- type AuthResourceManagementCP
- type ConfigGcloudCLI
- type DeleteGCECP
- type DeleteTPUCP
- type ListGCEInstancesCP
- type ListTPUInstancesCP
- type PauseGCECP
- type PauseTPUCP
- type RestartTPUCP
- type StatusGCECP
- type StatusTPUCP
- type TFVersionsCP
- type TPULocationsCP
- type TPUSizeCP
- type UpGCECP
- type UpGcloudCLI
- type UpResourceManagementCP
- type UpTPUCP
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AuthCommand ¶
func AuthCommand(cfg *config.Config, cp AuthResourceManagementCP) subcommands.Command
AuthCommand constructs the auth subcommand tree.
func ConfigCommand ¶
func ConfigCommand(cfg *config.Config, cli ConfigGcloudCLI) subcommands.Command
ConfigCommand creates the config subcommand.
func ConfigCommandAlias ¶
func ConfigCommandAlias(cfg *config.Config, cli ConfigGcloudCLI) subcommands.Command
ConfigCommandAlias creates an alias to the config command with a shorter name.
func DeleteCommand ¶
func DeleteCommand(cfg *config.Config, tpu DeleteTPUCP, gce DeleteGCECP) subcommands.Command
DeleteCommand creates the delete command.
func DeleteCommandAlias ¶
func DeleteCommandAlias(cfg *config.Config, tpu DeleteTPUCP, gce DeleteGCECP) subcommands.Command
DeleteCommandAlias creates an alias for the delete command with a shorter name.
func ListCommand ¶
func ListCommand(cfg *config.Config, tpu ListTPUInstancesCP, gce ListGCEInstancesCP) subcommands.Command
ListCommand creates the list command.
func ListCommandAlias ¶
func ListCommandAlias(cfg *config.Config, tpu ListTPUInstancesCP, gce ListGCEInstancesCP) subcommands.Command
ListCommandAlias creates an alias to the list command with a shorter name.
func PauseCommand ¶
func PauseCommand(cfg *config.Config, tpu PauseTPUCP, gce PauseGCECP) subcommands.Command
PauseCommand creates the pause command.
func PauseCommandAlias ¶
func PauseCommandAlias(cfg *config.Config, tpu PauseTPUCP, gce PauseGCECP) subcommands.Command
PauseCommandAlias creates an alias to the pause command with a shorter name.
func QuotaCommand ¶
func QuotaCommand(config *config.Config) subcommands.Command
QuotaCommand creates the quota command.
func RestartCommand ¶
func RestartCommand(cfg *config.Config, tpu RestartTPUCP) subcommands.Command
RestartCommand creates the restart subcommand.
func StatusCommand ¶
func StatusCommand(cfg *config.Config, tpu StatusTPUCP, gce StatusGCECP) subcommands.Command
StatusCommand creates the status command.
func StatusCommandAlias ¶
func StatusCommandAlias(cfg *config.Config, tpu StatusTPUCP, gce StatusGCECP) subcommands.Command
StatusCommandAlias creates an alias for the status command with a shorter name.
func TFVersionsCommand ¶
func TFVersionsCommand(cfg *config.Config, versions TFVersionsCP) subcommands.Command
TFVersionsCommand creates the 'tf-versions' command.
func TPULocationsCommand ¶
func TPULocationsCommand(cfg *config.Config, tpus TPULocationsCP) subcommands.Command
TPULocationsCommand creates the tpu-locations command.
func TPUSizeCommand ¶
func TPUSizeCommand(cfg *config.Config, tpus TPUSizeCP) subcommands.Command
TPUSizeCommand constructs the tpu-sizes subcommand.
func UpCommand ¶
func UpCommand(cfg *config.Config, tpu UpTPUCP, gce UpGCECP, rmg UpResourceManagementCP, cli UpGcloudCLI) subcommands.Command
UpCommand creates the up command.
func VersionCommand ¶
func VersionCommand(version string) subcommands.Command
VersionCommand creates the version command.
Types ¶
type AuthResourceManagementCP ¶
type AuthResourceManagementCP interface { GetProject() (*cloudresourcemanager.Project, error) // GetProjectPolicy retrieves the current project's IAM policy. GetProjectPolicy() (*cloudresourcemanager.Policy, error) // SetProjectPolicy sets the policy. SetProjectPolicy(policy *cloudresourcemanager.Policy) error // GetBucketACL retrieves a Cloud Storage bucket's ACL list. GetBucketACL(ctx context.Context, bucket string) ([]storage.ACLRule, error) // SetBucketACL adds the entity + role pair to the ACL list for the provided bucket. SetBucketACL(ctx context.Context, bucket string, entity storage.ACLEntity, role storage.ACLRole) error }
AuthResourceManagementCP abstracts the key operations the auth subcommand family must perform.
type ConfigGcloudCLI ¶
type ConfigGcloudCLI interface { // IsGcloudInstalled returns true if gcloud is installed. IsGcloudInstalled() bool // PrintInstallInstructions prints install instructions to the console. PrintInstallInstructions() }
ConfigGcloudCLI encapsulates interaction with the gcloud CLI toolchain.
type DeleteGCECP ¶
type DeleteGCECP interface { // Instance retrieves the instance from the control plane (if available). Instance() (*ctrl.GCEInstance, error) // DeleteInstance requests the deletion of the instance. DeleteInstance() (ctrl.LongRunningOperation, error) }
DeleteGCECP abstracts the control plane interfaces required for the delete command.
type DeleteTPUCP ¶
type DeleteTPUCP interface { // Instance retrieves the instance from the control plane (if available). Instance() (*ctrl.TPUInstance, error) // DeleteInstance requests the deletion of the instance. DeleteInstance() (ctrl.LongRunningOperation, error) }
DeleteTPUCP abstratcs the control plane interfaces required for the delete command.
type ListGCEInstancesCP ¶
type ListGCEInstancesCP interface { // ListInstances lists the available Compute Engine instances. ListInstances() ([]*ctrl.GCEInstance, error) }
ListGCEInstancesCP lists the available Compute Engine instances.
type ListTPUInstancesCP ¶
type ListTPUInstancesCP interface { // ListInstances lists the available TPU instances. ListInstances() ([]*ctrl.TPUInstance, error) }
ListTPUInstancesCP lists the available TPU instances.
type PauseGCECP ¶
type PauseGCECP interface { // Instance retrieves the instance from the control plane (if available). Instance() (*ctrl.GCEInstance, error) // StopInstance requests the halting of the instance. StopInstance() (ctrl.LongRunningOperation, error) }
PauseGCECP abstracts the control plane interfaces required for the pause command.
type PauseTPUCP ¶
type PauseTPUCP interface { // Instance retrieves the instance from the control plane (if available). Instance() (*ctrl.TPUInstance, error) // DeleteInstance requests the deletion of the instance. DeleteInstance() (ctrl.LongRunningOperation, error) }
PauseTPUCP abstracts the control plane interfaces required for the pause command.
type RestartTPUCP ¶
type RestartTPUCP interface { // Instance retrieves the instance from the control plane (if available). Instance() (*ctrl.TPUInstance, error) // CreateInstance requests the creation of the instance. // // CreateInstance is implemented by TPUCP.CreateInstance and is expected to match. CreateInstance(ctx context.Context, version string, preemptible, reserved bool, hardwareType, network string) (ctrl.LongRunningOperation, error) // DeleteInstance requests the deletion of the instance. DeleteInstance() (ctrl.LongRunningOperation, error) }
RestartTPUCP abstracts the control plane interfaces required for the restart command.
type StatusGCECP ¶
type StatusGCECP interface { // OptionallyRetrieveInstance retrieves the instance, but can optionally not enable the TPU API. OptionallyRetrieveInstance(bool) (*ctrl.GCEInstance, bool, error) }
StatusGCECP encapsulates the control plane interfaces required to execute the Status command.
type StatusTPUCP ¶
type StatusTPUCP interface { // OptionallyRetrieveInstance retrieves the instance, but can optionally not enable the TPU API. OptionallyRetrieveInstance(bool) (*ctrl.TPUInstance, bool, error) }
StatusTPUCP encapsulates the control plane interfaces required to execute the Status command.
type TFVersionsCP ¶
type TFVersionsCP interface { // ListVersions returns the available TPU TensorFlow versions. ListVersions() ([]*tpu.TensorFlowVersion, error) }
TFVersionsCP lists the available TensorFlow versions
type TPULocationsCP ¶
type TPULocationsCP interface { // ListLocations lists available locations. ListLocations() ([]*tpu.Location, error) }
TPULocationsCP lists available TPU locations.
type TPUSizeCP ¶
type TPUSizeCP interface { // ListSizes lists available TPU sizes. ListSizes() ([]*tpu.AcceleratorType, error) }
TPUSizeCP represents the interface required of the TPU control plane to run this subcommand.
type UpGCECP ¶
type UpGCECP interface { // Instance retrieves the instance from the control plane (if available). Instance() (*ctrl.GCEInstance, error) // OptionallyRetrieveInstance retrieves the instance, but can optionally not enable the TPU API. OptionallyRetrieveInstance(bool) (*ctrl.GCEInstance, bool, error) // CreateInstance requests the creation of the instance. CreateInstance(*ctrl.GCECreateRequest) (ctrl.LongRunningOperation, error) // StartInstance requests the starting of the instance. StartInstance() (ctrl.LongRunningOperation, error) }
UpGCECP abstracts the control plane interface requred for the up command.
type UpGcloudCLI ¶
type UpGcloudCLI interface { // IsGcloudInstalled determines if the gcloud command line tool is installed and available on the path. IsGcloudInstalled() bool // SSHToInstance takes over the process and turns it into an ssh connection to the Compute Engine instance of the flock. SSHToInstance(forwardPorts, forwardAgent bool, tpuInstance *ctrl.TPUInstance) error // PrintInstallInstructions prints instructions to the console for how to install gcloud. PrintInstallInstructions() }
UpGcloudCLI abstracts the interaction with the gcloud command line tools for the up command.
type UpResourceManagementCP ¶
type UpResourceManagementCP interface { // AddTPUUserAgent authorizes the TPU user agent, if required. AddTPUUserAgent(tpuUserAgent string) error // IsProjectInGoogleOrg determines if the project is part of the Google organziation. // // This is used to provide more helpful error messages IsProjectInGoogleOrg() (bool, error) }
UpResourceManagementCP abstracts the control plane interface required for the up command.
type UpTPUCP ¶
type UpTPUCP interface { // Instance retrieves the instance from the control plane (if available). Instance() (*ctrl.TPUInstance, error) // OptionallyRetrieveInstance retrieves the instance, but can optionally not enable the TPU API. OptionallyRetrieveInstance(bool) (*ctrl.TPUInstance, bool, error) // CreateInstance requests the creation of the instance. CreateInstance(ctx context.Context, version string, preemptible, reserved bool, hardwareType, network string) (ctrl.LongRunningOperation, error) // ListVersions retrieves the list of available TensorFlow versions. ListVersions() ([]*tpu.TensorFlowVersion, error) }
UpTPUCP abstracts the control plane interface required for the up command.