1 Star 0 Fork 0

zhuchance/kubernetes

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
images.go 3.55 KB
一键复制 编辑 原始数据 按行查看 历史
package gophercloud
import (
"github.com/racker/perigee"
)
// See the CloudImagesProvider interface for details.
func (gsp *genericServersProvider) ListImages() ([]Image, error) {
var is []Image
err := gsp.context.WithReauth(gsp.access, func() error {
url := gsp.endpoint + "/images/detail"
return perigee.Get(url, perigee.Options{
CustomClient: gsp.context.httpClient,
Results: &struct{ Images *[]Image }{&is},
MoreHeaders: map[string]string{
"X-Auth-Token": gsp.access.AuthToken(),
},
})
})
return is, err
}
func (gsp *genericServersProvider) ImageById(id string) (*Image, error) {
var is *Image
err := gsp.context.WithReauth(gsp.access, func() error {
url := gsp.endpoint + "/images/" + id
return perigee.Get(url, perigee.Options{
CustomClient: gsp.context.httpClient,
Results: &struct{ Image **Image }{&is},
MoreHeaders: map[string]string{
"X-Auth-Token": gsp.access.AuthToken(),
},
})
})
return is, err
}
func (gsp *genericServersProvider) DeleteImageById(id string) error {
err := gsp.context.WithReauth(gsp.access, func() error {
url := gsp.endpoint + "/images/" + id
_, err := perigee.Request("DELETE", url, perigee.Options{
CustomClient: gsp.context.httpClient,
MoreHeaders: map[string]string{
"X-Auth-Token": gsp.access.AuthToken(),
},
})
return err
})
return err
}
// ImageLink provides a reference to a image by either ID or by direct URL.
// Some services use just the ID, others use just the URL.
// This structure provides a common means of expressing both in a single field.
type ImageLink struct {
Id string `json:"id"`
Links []Link `json:"links"`
}
// Image is used for JSON (un)marshalling.
// It provides a description of an OS image.
//
// The Id field contains the image's unique identifier.
// For example, this identifier will be useful for specifying which operating system to install on a new server instance.
//
// The MinDisk and MinRam fields specify the minimum resources a server must provide to be able to install the image.
//
// The Name field provides a human-readable moniker for the OS image.
//
// The Progress and Status fields indicate image-creation status.
// Any usable image will have 100% progress.
//
// The Updated field indicates the last time this image was changed.
//
// OsDcfDiskConfig indicates the server's boot volume configuration.
// Valid values are:
// AUTO
// ----
// The server is built with a single partition the size of the target flavor disk.
// The file system is automatically adjusted to fit the entire partition.
// This keeps things simple and automated.
// AUTO is valid only for images and servers with a single partition that use the EXT3 file system.
// This is the default setting for applicable Rackspace base images.
//
// MANUAL
// ------
// The server is built using whatever partition scheme and file system is in the source image.
// If the target flavor disk is larger,
// the remaining disk space is left unpartitioned.
// This enables images to have non-EXT3 file systems, multiple partitions, and so on,
// and enables you to manage the disk configuration.
//
type Image struct {
Created string `json:"created"`
Id string `json:"id"`
Links []Link `json:"links"`
MinDisk int `json:"minDisk"`
MinRam int `json:"minRam"`
Name string `json:"name"`
Progress int `json:"progress"`
Status string `json:"status"`
Updated string `json:"updated"`
OsDcfDiskConfig string `json:"OS-DCF:diskConfig"`
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/meoom/kubernetes.git
git@gitee.com:meoom/kubernetes.git
meoom
kubernetes
kubernetes
v0.7.0

搜索帮助

Cb406eda 1850385 E526c682 1850385