 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Overview ¶
Package diskconfig provides information and interaction with the Disk Config extension that works with the OpenStack Compute service.
Example of Obtaining the Disk Config of a Server
type ServerWithDiskConfig {
	servers.Server
	diskconfig.ServerDiskConfigExt
}
var allServers []ServerWithDiskConfig
allPages, err := servers.List(client, nil).AllPages()
if err != nil {
	panic("Unable to retrieve servers: %s", err)
}
err = servers.ExtractServersInto(allPages, &allServers)
if err != nil {
	panic("Unable to extract servers: %s", err)
}
for _, server := range allServers {
	fmt.Println(server.DiskConfig)
}
Example of Creating a Server with Disk Config
serverCreateOpts := servers.CreateOpts{
	Name:      "server_name",
	ImageRef:  "image-uuid",
	FlavorRef: "flavor-uuid",
}
createOpts := diskconfig.CreateOptsExt{
	CreateOptsBuilder: serverCreateOpts,
	DiskConfig:        diskconfig.Manual,
}
server, err := servers.Create(computeClient, createOpts).Extract()
if err != nil {
	panic("Unable to create server: %s", err)
}
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateOptsExt ¶
type CreateOptsExt struct {
	servers.CreateOptsBuilder
	// DiskConfig [optional] controls how the created server's disk is partitioned.
	DiskConfig DiskConfig `json:"OS-DCF:diskConfig,omitempty"`
}
    CreateOptsExt adds a DiskConfig option to the base CreateOpts.
func (CreateOptsExt) ToServerCreateMap ¶
func (opts CreateOptsExt) ToServerCreateMap() (map[string]interface{}, error)
ToServerCreateMap adds the diskconfig option to the base server creation options.
type DiskConfig ¶
type DiskConfig string
DiskConfig represents one of the two possible settings for the DiskConfig option when creating, rebuilding, or resizing servers: Auto or Manual.
const ( // Auto builds a server with a single partition the size of the target flavor // disk and automatically adjusts the filesystem to fit the entire partition. // Auto may only be used with images and servers that use a single EXT3 // partition. Auto DiskConfig = "AUTO" // Manual builds a server using whatever partition scheme and filesystem are // present in the source image. If the target flavor disk is larger, the // remaining space is left unpartitioned. This enables images to have non-EXT3 // filesystems, multiple partitions, and so on, and enables you to manage the // disk configuration. It also results in slightly shorter boot times. Manual DiskConfig = "MANUAL" )
type RebuildOptsExt ¶
type RebuildOptsExt struct {
	servers.RebuildOptsBuilder
	// DiskConfig controls how the rebuilt server's disk is partitioned.
	DiskConfig DiskConfig `json:"OS-DCF:diskConfig,omitempty"`
}
    RebuildOptsExt adds a DiskConfig option to the base RebuildOpts.
func (RebuildOptsExt) ToServerRebuildMap ¶
func (opts RebuildOptsExt) ToServerRebuildMap() (map[string]interface{}, error)
ToServerRebuildMap adds the diskconfig option to the base server rebuild options.
type ResizeOptsExt ¶
type ResizeOptsExt struct {
	servers.ResizeOptsBuilder
	// DiskConfig [optional] controls how the resized server's disk is partitioned.
	DiskConfig DiskConfig
}
    ResizeOptsExt adds a DiskConfig option to the base server resize options.
func (ResizeOptsExt) ToServerResizeMap ¶
func (opts ResizeOptsExt) ToServerResizeMap() (map[string]interface{}, error)
ToServerResizeMap adds the diskconfig option to the base server creation options.
type ServerDiskConfigExt ¶
type ServerDiskConfigExt struct {
	// DiskConfig is the disk configuration of the server.
	DiskConfig DiskConfig `json:"OS-DCF:diskConfig"`
}