modules

package
v2.0.21+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 31, 2018 License: Apache-2.0, Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	IMAGE_META          = "X-Image-Meta-"
	IMAGE_META_PROPERTY = "X-Image-Meta-Property-"
)
View Source
const MACAddressPattern = `(([a-fA-F0-9]{2}[:-]){5}([a-fA-F0-9]{2}))`

Variables

View Source
var (
	MonitorTemplates      ResourceManager
	MonitorTemplateInputs JointResourceManager
)
View Source
var (
	Users   UserManager
	UsersV3 UserManagerV3
)

Functions

func GetVersion

func GetVersion(s *mcclient.ClientSession, serviceType string) (string, error)

func ListResult2JSON

func ListResult2JSON(result *ListResult) jsonutils.JSONObject

func ListResult2JSONWithKey

func ListResult2JSONWithKey(result *ListResult, key string) jsonutils.JSONObject

func Register

func Register(mod BaseManagerInterface)

func SubmitResults2JSON

func SubmitResults2JSON(results []SubmitResult) jsonutils.JSONObject

Types

type AlarmEventsManager

type AlarmEventsManager struct {
	ResourceManager
}
var (
	AlarmEvents AlarmEventsManager
)

func (*AlarmEventsManager) DoBatchUpdate

type BaseManager

type BaseManager struct {
	// contains filtered or unexported fields
}

func NewBaseManager

func NewBaseManager(serviceType, endpointType, version string, columns, adminColumns []string) *BaseManager

func (*BaseManager) GetColumns

func (this *BaseManager) GetColumns(session *mcclient.ClientSession) []string

func (*BaseManager) SetVersion

func (this *BaseManager) SetVersion(v string)

type BaseManagerInterface

type BaseManagerInterface interface {
	Version() string
	KeyString() string
	ServiceType() string
	EndpointType() string
	GetColumns(session *mcclient.ClientSession) []string
	List(session *mcclient.ClientSession, params jsonutils.JSONObject) (*ListResult, error)
}

type ContactsManager

type ContactsManager struct {
	ResourceManager
}
var (
	Contacts ContactsManager
)

func (*ContactsManager) DoBatchDeleteContacts

func (this *ContactsManager) DoBatchDeleteContacts(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ContactsManager) PerformActionWithArrayParams

func (this *ContactsManager) PerformActionWithArrayParams(s *mcclient.ClientSession, id string, action string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type DomainManager

type DomainManager struct {
	ResourceManager
}
var (
	Domains DomainManager
)

func (*DomainManager) DeleteConfig

func (this *DomainManager) DeleteConfig(s *mcclient.ClientSession, domain string) (jsonutils.JSONObject, error)

func (*DomainManager) DoDomainConfigCreate

func (this *DomainManager) DoDomainConfigCreate(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*DomainManager) DoDomainConfigDelete

func (this *DomainManager) DoDomainConfigDelete(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*DomainManager) DoDomainConfigUpdate

func (this *DomainManager) DoDomainConfigUpdate(s *mcclient.ClientSession, domain string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*DomainManager) GetConfig

func (this *DomainManager) GetConfig(s *mcclient.ClientSession, domain string) (jsonutils.JSONObject, error)

func (*DomainManager) GetDomainConfig

func (this *DomainManager) GetDomainConfig(s *mcclient.ClientSession, domain string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*DomainManager) UpdateConfig

func (this *DomainManager) UpdateConfig(s *mcclient.ClientSession, domain string, config jsonutils.JSONObject) (jsonutils.JSONObject, error)

type GroupManager

type GroupManager struct {
	ResourceManager
}
var (
	Groups GroupManager
)

func (*GroupManager) GetUsers

func (this *GroupManager) GetUsers(s *mcclient.ClientSession, gid string) (*ListResult, error)

type HostManager

type HostManager struct {
	ResourceManager
}
var (
	Hosts HostManager
)

func (*HostManager) DoBatchRegister

func (this *HostManager) DoBatchRegister(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*HostManager) GetIpmiInfo

func (this *HostManager) GetIpmiInfo(s *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*HostManager) GetLoginInfo

func (this *HostManager) GetLoginInfo(s *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type ImageManager

type ImageManager struct {
	ResourceManager
}
var (
	Images ImageManager
)

func (*ImageManager) AddMembership

func (this *ImageManager) AddMembership(s *mcclient.ClientSession, img string, proj string, canShare bool) error

func (*ImageManager) BatchGet

func (this *ImageManager) BatchGet(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult

func (*ImageManager) Create

func (*ImageManager) Download

func (*ImageManager) Get

func (*ImageManager) GetById

func (this *ImageManager) GetById(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ImageManager) GetByName

func (this *ImageManager) GetByName(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ImageManager) GetId

func (this *ImageManager) GetId(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (string, error)

func (*ImageManager) GetUsage

func (this *ImageManager) GetUsage(session *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ImageManager) IsNameDuplicate

func (this *ImageManager) IsNameDuplicate(s *mcclient.ClientSession, name string) (bool, error)

func (*ImageManager) List

func (this *ImageManager) List(session *mcclient.ClientSession, params jsonutils.JSONObject) (*ListResult, error)

func (*ImageManager) ListMemberProjectIds

func (this *ImageManager) ListMemberProjectIds(s *mcclient.ClientSession, imageId string) (*ListResult, error)

func (*ImageManager) ListMemberProjects

func (this *ImageManager) ListMemberProjects(s *mcclient.ClientSession, imageId string) (*ListResult, error)

func (*ImageManager) ListSharedImageIds

func (this *ImageManager) ListSharedImageIds(s *mcclient.ClientSession, projectId string) (*ListResult, error)

func (*ImageManager) ListSharedImages

func (this *ImageManager) ListSharedImages(s *mcclient.ClientSession, projectId string) (*ListResult, error)

func (*ImageManager) RemoveMembership

func (this *ImageManager) RemoveMembership(s *mcclient.ClientSession, image string, project string) error

func (*ImageManager) Update

func (*ImageManager) Upload

type ImageUsageCount

type ImageUsageCount struct {
	Count int64
	Size  int64
}

type InfoManager

type InfoManager struct {
	ResourceManager
}
var (
	Info InfoManager
)

func (*InfoManager) Update

func (this *InfoManager) Update(s *mcclient.ClientSession, header http.Header, body io.Reader) (jsonutils.JSONObject, error)

type JointManager

type JointManager interface {
	BaseManagerInterface
	MasterManager() Manager
	SlaveManager() Manager
	Get(s *mcclient.ClientSession, mid, sid string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	ListDescendent(s *mcclient.ClientSession, mid string, params jsonutils.JSONObject) (*ListResult, error)
	ListDescendent2(s *mcclient.ClientSession, sid string, params jsonutils.JSONObject) (*ListResult, error)
	ListAscendent(s *mcclient.ClientSession, mid string, params jsonutils.JSONObject) (*ListResult, error)
	Attach(s *mcclient.ClientSession, mid, sid string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	BatchAttach(s *mcclient.ClientSession, mid string, sids []string, params jsonutils.JSONObject) []SubmitResult
	BatchAttach2(s *mcclient.ClientSession, mid string, sids []string, params jsonutils.JSONObject) []SubmitResult
	Detach(s *mcclient.ClientSession, mid, sid string) (jsonutils.JSONObject, error)
	BatchDetach(s *mcclient.ClientSession, mid string, sids []string) []SubmitResult
	BatchDetach2(s *mcclient.ClientSession, mid string, sids []string) []SubmitResult
	Update(s *mcclient.ClientSession, mid, sid string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	Patch(s *mcclient.ClientSession, mid, sid string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
}

func GetJointModule

func GetJointModule(session *mcclient.ClientSession, name string) (JointManager, error)

func GetJointModule2

func GetJointModule2(session *mcclient.ClientSession, mod1 Manager, mod2 Manager) (JointManager, error)

type JointResourceManager

type JointResourceManager struct {
	ResourceManager
	Master Manager
	Slave  Manager
}
var (
	AlarmTemplateAlarms JointResourceManager
)
var (
	Baremetalnetworks JointResourceManager
)
var (
	Baremetalstorages JointResourceManager
)
var (
	Hostcachedimages JointResourceManager
)
var (
	Hoststorages JointResourceManager
)
var (
	Hostwires JointResourceManager
)
var (
	Schedtaghosts JointResourceManager
)
var (
	Serverdisks JointResourceManager
)
var (
	Servernetworks JointResourceManager
)
var (
	Storagecachedimages JointResourceManager
)

func NewJointComputeManager

func NewJointComputeManager(keyword, keywordPlural string, columns, adminColumns []string, master, slave Manager) JointResourceManager

func NewJointMonitorManager

func NewJointMonitorManager(keyword, keywordPlural string, columns, adminColumns []string, master, slave Manager) JointResourceManager

func (*JointResourceManager) Attach

func (*JointResourceManager) BatchAttach

func (this *JointResourceManager) BatchAttach(s *mcclient.ClientSession, mid string, sids []string, params jsonutils.JSONObject) []SubmitResult

func (*JointResourceManager) BatchAttach2

func (this *JointResourceManager) BatchAttach2(s *mcclient.ClientSession, mid string, sids []string, params jsonutils.JSONObject) []SubmitResult

func (*JointResourceManager) BatchDetach

func (this *JointResourceManager) BatchDetach(s *mcclient.ClientSession, mid string, sids []string) []SubmitResult

func (*JointResourceManager) BatchDetach2

func (this *JointResourceManager) BatchDetach2(s *mcclient.ClientSession, mid string, sids []string) []SubmitResult

func (*JointResourceManager) Detach

func (*JointResourceManager) Get

func (*JointResourceManager) List

func (*JointResourceManager) ListAscendent

func (this *JointResourceManager) ListAscendent(s *mcclient.ClientSession, mid string, params jsonutils.JSONObject) (*ListResult, error)

func (*JointResourceManager) ListDescendent

func (this *JointResourceManager) ListDescendent(s *mcclient.ClientSession, mid string, params jsonutils.JSONObject) (*ListResult, error)

func (*JointResourceManager) ListDescendent2

func (this *JointResourceManager) ListDescendent2(s *mcclient.ClientSession, sid string, params jsonutils.JSONObject) (*ListResult, error)

func (*JointResourceManager) MasterManager

func (this *JointResourceManager) MasterManager() Manager

func (*JointResourceManager) Patch

func (*JointResourceManager) SlaveManager

func (this *JointResourceManager) SlaveManager() Manager

func (*JointResourceManager) Update

type KeypairManager

type KeypairManager struct {
	ResourceManager
}
var (
	Keypairs KeypairManager
)

type LicenseManager

type LicenseManager struct {
	ResourceManager
}
var (
	License LicenseManager
)

func (*LicenseManager) Upload

func (this *LicenseManager) Upload(s *mcclient.ClientSession, header http.Header, body io.Reader) (jsonutils.JSONObject, error)

type ListResult

type ListResult struct {
	Data   []jsonutils.JSONObject
	Total  int
	Limit  int
	Offset int
}

func JSON2ListResult

func JSON2ListResult(result jsonutils.JSONObject) *ListResult

func SubmitResults2ListResult

func SubmitResults2ListResult(results []SubmitResult) *ListResult

type Manager

type Manager interface {
	BaseManagerInterface
	/* resource list
	   GET <base_url>/<resource_plural_keyword>
	   e.g GET <base_url>/alarms
	   querystring stores in params
	   e.g. GET <base_url>/alarms?limit=20&offset=20&search=test

	   return list of resources in json format
	   { "<resource_plural_keyword>": [ {object details}, {object details}, ...] }, limit: 20, offset: 20, total: 2000}
	*/
	// List(session *mcclient.ClientSession, params jsonutils.JSONObject) (*ListResult, error)
	/*
	   resource list in a context
	   GET <base_url>/<context_plural_keyword>/<context_id>/<resource_plural_keyword>?querystring
	   e.g. GET <base_url>/nodes/1/labels?name=xxx
	   ListInContext(s, params, &modules.Labels, label_id)
	   return:
	   { "<resource_plural_keyword>": [ {object details}, {object details}, ...] }, limit: 20, offset: 20, total: 2000}
	*/
	ListInContext(session *mcclient.ClientSession, params jsonutils.JSONObject, ctx Manager, ctxid string) (*ListResult, error)
	ListInContexts(session *mcclient.ClientSession, params jsonutils.JSONObject, ctxs []ManagerContext) (*ListResult, error)
	/*
	  GET <base_url>/<resource_plural_keyword>/<resource_id>
	  e.g GET <base_url>/alarams/1

	*/
	Get(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	GetInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	GetInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	GetId(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (string, error)
	GetIdInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (string, error)
	GetIdInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (string, error)
	GetById(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	GetByIdInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	GetByIdInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	GetByName(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	GetByNameInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	GetByNameInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	/*
	  HEAD <base_url>/<resource_plural_keyword>/<resource_id>
	  e.g HEAD <base_url>/alarams/1

	*/
	Head(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	HeadInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	HeadInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	BatchGet(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult
	BatchGetInContext(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult
	BatchGetInContexts(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult
	GetSpecific(session *mcclient.ClientSession, id string, spec string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	GetSpecificInContext(session *mcclient.ClientSession, id string, spec string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	GetSpecificInContexts(session *mcclient.ClientSession, id string, spec string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	/*
	  POST <base_url>/<resource_plural_keyword>/<resource_id>
	  e.g POST <base_url>/alarams/1

	*/
	Create(session *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	CreateInContext(session *mcclient.ClientSession, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	CreateInContexts(session *mcclient.ClientSession, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	BatchCreate(session *mcclient.ClientSession, params jsonutils.JSONObject, count int) []SubmitResult
	BatchCreateInContext(session *mcclient.ClientSession, params jsonutils.JSONObject, count int, ctx Manager, ctxid string) []SubmitResult
	BatchCreateInContexts(session *mcclient.ClientSession, params jsonutils.JSONObject, count int, ctxs []ManagerContext) []SubmitResult
	Update(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	Put(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	PutInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	PutInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	BatchUpdate(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult
	BatchPut(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult
	BatchPutInContext(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult
	BatchPutInContexts(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult
	Patch(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	PatchInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	PatchInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	BatchPatch(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult
	BatchPatchInContext(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult
	BatchPatchInContexts(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult
	PerformAction(session *mcclient.ClientSession, id string, action string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)
	PerformActionInContext(session *mcclient.ClientSession, id string, action string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	PerformActionInContexts(session *mcclient.ClientSession, id string, action string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	BatchPerformAction(session *mcclient.ClientSession, idlist []string, action string, params jsonutils.JSONObject) []SubmitResult
	BatchPerformActionInContext(session *mcclient.ClientSession, idlist []string, action string, params jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult
	BatchPerformActionInContexts(session *mcclient.ClientSession, idlist []string, action string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult
	Delete(session *mcclient.ClientSession, id string, body jsonutils.JSONObject) (jsonutils.JSONObject, error)
	DeleteInContext(session *mcclient.ClientSession, id string, body jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)
	DeleteInContexts(session *mcclient.ClientSession, id string, body jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)
	BatchDelete(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject) []SubmitResult
	BatchDeleteInContext(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult
	BatchDeleteInContexts(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult
}

func GetModule

func GetModule(session *mcclient.ClientSession, name string) (Manager, error)

type ManagerContext

type ManagerContext struct {
	InstanceManager Manager
	InstanceId      string
}

type MonitorMetricManager

type MonitorMetricManager struct {
	ResourceManager
}
var (
	MonitorMetrics MonitorMetricManager
)

type NodeManager

type NodeManager struct {
	ResourceManager
}
var (
	Nodes NodeManager
)

func (*NodeManager) BatchPerformActionInContexts

func (this *NodeManager) BatchPerformActionInContexts(s *mcclient.ClientSession, idlist []string, action string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*NodeManager) NewNode

func (this *NodeManager) NewNode(s *mcclient.ClientSession, name string, ip string) (jsonutils.JSONObject, error)

type PerformanceManager

type PerformanceManager struct {
	ResourceManager
}
var (
	Performances PerformanceManager
)

func (*PerformanceManager) GetTop5

type ProjectManagerV3

type ProjectManagerV3 struct {
	ResourceManager
}
var (
	Projects ProjectManagerV3
)

func (*ProjectManagerV3) BatchDelete

func (this *ProjectManagerV3) BatchDelete(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject) []SubmitResult

func (*ProjectManagerV3) BatchDeleteInContexts

func (this *ProjectManagerV3) BatchDeleteInContexts(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*ProjectManagerV3) Delete

func (*ProjectManagerV3) DeleteInContexts

func (this *ProjectManagerV3) DeleteInContexts(session *mcclient.ClientSession, id string, body jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ProjectManagerV3) DoJoinProject

Add one user to Many Projects

func (*ProjectManagerV3) DoLeaveProject

func (*ProjectManagerV3) DoProjectBatchDeleteUserGroup

func (this *ProjectManagerV3) DoProjectBatchDeleteUserGroup(s *mcclient.ClientSession, pid string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

Add Many user[uids] to project(pid) with role(rid)

func (*ProjectManagerV3) DoProjectBatchJoin

func (this *ProjectManagerV3) DoProjectBatchJoin(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

Add Many user[uids] to project(pid) with role(rid)

type ProjectNodeManager

type ProjectNodeManager struct {
	ResourceManager
}
var (
	ProjectHosts ProjectNodeManager
)

type QuotaManager

type QuotaManager struct {
	ResourceManager
}
var (
	Quotas QuotaManager
)

func (*QuotaManager) DoQuotaCheck

func (*QuotaManager) DoQuotaSet

func (*QuotaManager) GetQuota

type RecipientsManager

type RecipientsManager struct {
	ResourceManager
}
var (
	Recipients RecipientsManager
)

func (*RecipientsManager) DoDeleteRecipient

func (this *RecipientsManager) DoDeleteRecipient(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type RegionManager

type RegionManager struct {
	ResourceManager
}
var (
	Regions RegionManager
)

type RegisterManager

type RegisterManager struct {
	ResourceManager
}
var (
	AccountRegister RegisterManager
)

type ReservedIPManager

type ReservedIPManager struct {
	ResourceManager
}
var (
	ReservedIPs ReservedIPManager
)

func (*ReservedIPManager) DoBatchReleaseReservedIPs

func (this *ReservedIPManager) DoBatchReleaseReservedIPs(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type ResourceManager

type ResourceManager struct {
	BaseManager

	Keyword       string
	KeywordPlural string
	// contains filtered or unexported fields
}
var (
	Endpoints   ResourceManager
	EndpointsV3 ResourceManager
)
var (
	Services   ResourceManager
	ServicesV3 ResourceManager
)
var (
	Tasks ResourceManager

	ComputeTasks ResourceManager
)
var (
	Actions ResourceManager
)
var (
	AlarmLogs ResourceManager
)
var (
	AlarmTemplates ResourceManager
)
var (
	Alarms ResourceManager
)
var (
	Baremetalagents ResourceManager
)
var (
	Cachedimages ResourceManager
)
var (
	Cloudproviders ResourceManager
)
var (
	Cloudregions ResourceManager
)
var (
	ContactGroups ResourceManager
)
var (
	DNSRecords ResourceManager
)
var (
	Disks ResourceManager
)
var (
	EmailConfigs ResourceManager
)
var (
	Instances ResourceManager
)
var (
	IsolatedDevices ResourceManager
)
var (
	Labels ResourceManager
)
var (
	Logs ResourceManager
)
var (
	Metrics ResourceManager
)
var (
	MetricsTypes ResourceManager
)
var (
	MonitorInputs ResourceManager
)
var (
	MonitorTypes ResourceManager
)
var (
	Networks ResourceManager
)
var (
	Notifications ResourceManager
)
var (
	Operations ResourceManager
)
var (
	Processes ResourceManager
)
var (
	Processlogs ResourceManager
)
var (
	ProjectAdmin ResourceManager
)
var (
	ProjectAdminCandidate ResourceManager
)
var (
	Rates ResourceManager
)
var (
	ResourceDetails ResourceManager
)
var (
	ResourceFees ResourceManager
)
var (
	SecGroupRules ResourceManager
)
var (
	SecGroups ResourceManager
)
var (
	ServiceNameSuggestion ResourceManager
)
var (
	ServiceTrees ResourceManager
)
var (
	SmsConfigs ResourceManager
)
var (
	Storagecaches ResourceManager
)
var (
	Storages ResourceManager
)
var (
	Tenants ResourceManager
)
var (
	VCenters ResourceManager
)
var (
	Verifications ResourceManager
)
var (
	Vpcs ResourceManager
)
var (
	Wires ResourceManager
)
var (
	Zones ResourceManager
)

func NewActionManager

func NewActionManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewComputeManager

func NewComputeManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewITSMManager

func NewITSMManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewIdentityManager

func NewIdentityManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewIdentityV3Manager

func NewIdentityV3Manager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewImageManager

func NewImageManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewMeterManager

func NewMeterManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewMonitorManager

func NewMonitorManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewNotifyManager

func NewNotifyManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewSchedulerManager

func NewSchedulerManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func NewVNCProxyManager

func NewVNCProxyManager() ResourceManager

func NewYunionAgentManager

func NewYunionAgentManager(keyword, keywordPlural string, columns, adminColumns []string) ResourceManager

func (*ResourceManager) BatchCreate

func (this *ResourceManager) BatchCreate(session *mcclient.ClientSession, params jsonutils.JSONObject, count int) []SubmitResult

func (*ResourceManager) BatchCreateInContext

func (this *ResourceManager) BatchCreateInContext(session *mcclient.ClientSession, params jsonutils.JSONObject, count int, ctx Manager, ctxid string) []SubmitResult

func (*ResourceManager) BatchCreateInContexts

func (this *ResourceManager) BatchCreateInContexts(session *mcclient.ClientSession, params jsonutils.JSONObject, count int, ctxs []ManagerContext) []SubmitResult

func (*ResourceManager) BatchDelete

func (this *ResourceManager) BatchDelete(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject) []SubmitResult

func (*ResourceManager) BatchDeleteInContext

func (this *ResourceManager) BatchDeleteInContext(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult

func (*ResourceManager) BatchDeleteInContextWithParam

func (this *ResourceManager) BatchDeleteInContextWithParam(session *mcclient.ClientSession, idlist []string, params, body jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult

func (*ResourceManager) BatchDeleteInContexts

func (this *ResourceManager) BatchDeleteInContexts(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*ResourceManager) BatchDeleteInContextsWithParam

func (this *ResourceManager) BatchDeleteInContextsWithParam(session *mcclient.ClientSession, idlist []string, params, body jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*ResourceManager) BatchDeleteWithParam

func (this *ResourceManager) BatchDeleteWithParam(session *mcclient.ClientSession, idlist []string, params, body jsonutils.JSONObject) []SubmitResult

func (*ResourceManager) BatchGet

func (this *ResourceManager) BatchGet(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult

func (*ResourceManager) BatchGetInContext

func (this *ResourceManager) BatchGetInContext(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult

func (*ResourceManager) BatchGetInContexts

func (this *ResourceManager) BatchGetInContexts(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*ResourceManager) BatchPatch

func (this *ResourceManager) BatchPatch(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult

func (*ResourceManager) BatchPatchInContext

func (this *ResourceManager) BatchPatchInContext(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult

func (*ResourceManager) BatchPatchInContexts

func (this *ResourceManager) BatchPatchInContexts(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*ResourceManager) BatchPerformAction

func (this *ResourceManager) BatchPerformAction(session *mcclient.ClientSession, idlist []string, action string, params jsonutils.JSONObject) []SubmitResult

func (*ResourceManager) BatchPerformActionInContext

func (this *ResourceManager) BatchPerformActionInContext(session *mcclient.ClientSession, idlist []string, action string, params jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult

func (*ResourceManager) BatchPerformActionInContexts

func (this *ResourceManager) BatchPerformActionInContexts(session *mcclient.ClientSession, idlist []string, action string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*ResourceManager) BatchPut

func (this *ResourceManager) BatchPut(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult

func (*ResourceManager) BatchPutInContext

func (this *ResourceManager) BatchPutInContext(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctx Manager, ctxid string) []SubmitResult

func (*ResourceManager) BatchPutInContexts

func (this *ResourceManager) BatchPutInContexts(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*ResourceManager) BatchUpdate

func (this *ResourceManager) BatchUpdate(session *mcclient.ClientSession, idlist []string, params jsonutils.JSONObject) []SubmitResult

func (*ResourceManager) ContextPath

func (this *ResourceManager) ContextPath(ctxs []ManagerContext) string

func (*ResourceManager) Create

func (*ResourceManager) CreateInContext

func (this *ResourceManager) CreateInContext(session *mcclient.ClientSession, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) CreateInContexts

func (this *ResourceManager) CreateInContexts(session *mcclient.ClientSession, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) Delete

func (*ResourceManager) DeleteInContext

func (this *ResourceManager) DeleteInContext(session *mcclient.ClientSession, id string, body jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) DeleteInContexts

func (this *ResourceManager) DeleteInContexts(session *mcclient.ClientSession, id string, body jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) DeleteInContextsWithParam

func (this *ResourceManager) DeleteInContextsWithParam(session *mcclient.ClientSession, id string, params, body jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) DeleteWithParam

func (this *ResourceManager) DeleteWithParam(session *mcclient.ClientSession, id string, params, body jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ResourceManager) EndpointType

func (this *ResourceManager) EndpointType() string

func (*ResourceManager) Get

func (*ResourceManager) GetById

func (*ResourceManager) GetByIdInContext

func (this *ResourceManager) GetByIdInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) GetByIdInContexts

func (this *ResourceManager) GetByIdInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) GetByName

func (this *ResourceManager) GetByName(session *mcclient.ClientSession, name string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ResourceManager) GetByNameInContext

func (this *ResourceManager) GetByNameInContext(session *mcclient.ClientSession, name string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) GetByNameInContexts

func (this *ResourceManager) GetByNameInContexts(session *mcclient.ClientSession, name string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) GetId

func (this *ResourceManager) GetId(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (string, error)

func (*ResourceManager) GetIdInContext

func (this *ResourceManager) GetIdInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (string, error)

func (*ResourceManager) GetIdInContexts

func (this *ResourceManager) GetIdInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (string, error)

func (*ResourceManager) GetInContext

func (this *ResourceManager) GetInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) GetInContexts

func (this *ResourceManager) GetInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) GetMetadata

func (this *ResourceManager) GetMetadata(session *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ResourceManager) GetSpecific

func (this *ResourceManager) GetSpecific(session *mcclient.ClientSession, id string, spec string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ResourceManager) GetSpecificInContext

func (this *ResourceManager) GetSpecificInContext(session *mcclient.ClientSession, id string, spec string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) GetSpecificInContexts

func (this *ResourceManager) GetSpecificInContexts(session *mcclient.ClientSession, id string, spec string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) Head

func (*ResourceManager) HeadInContext

func (this *ResourceManager) HeadInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) HeadInContexts

func (this *ResourceManager) HeadInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) KeyString

func (this *ResourceManager) KeyString() string

func (*ResourceManager) List

func (this *ResourceManager) List(session *mcclient.ClientSession, params jsonutils.JSONObject) (*ListResult, error)

func (*ResourceManager) ListInContext

func (this *ResourceManager) ListInContext(session *mcclient.ClientSession, params jsonutils.JSONObject, ctx Manager, ctxid string) (*ListResult, error)

func (*ResourceManager) ListInContexts

func (this *ResourceManager) ListInContexts(session *mcclient.ClientSession, params jsonutils.JSONObject, ctxs []ManagerContext) (*ListResult, error)

func (*ResourceManager) Patch

func (*ResourceManager) PatchInContext

func (this *ResourceManager) PatchInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) PatchInContexts

func (this *ResourceManager) PatchInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) PerformAction

func (this *ResourceManager) PerformAction(session *mcclient.ClientSession, id string, action string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ResourceManager) PerformActionInContext

func (this *ResourceManager) PerformActionInContext(session *mcclient.ClientSession, id string, action string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) PerformActionInContexts

func (this *ResourceManager) PerformActionInContexts(session *mcclient.ClientSession, id string, action string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) Put

func (*ResourceManager) PutInContext

func (this *ResourceManager) PutInContext(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctx Manager, ctxid string) (jsonutils.JSONObject, error)

func (*ResourceManager) PutInContexts

func (this *ResourceManager) PutInContexts(session *mcclient.ClientSession, id string, params jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

func (*ResourceManager) ServiceType

func (this *ResourceManager) ServiceType() string

func (*ResourceManager) URLPath

func (this *ResourceManager) URLPath() string

func (*ResourceManager) Update

func (*ResourceManager) Version

func (this *ResourceManager) Version() string

type RoleAssignmentManagerV3

type RoleAssignmentManagerV3 struct {
	ResourceManager
}
var (
	RoleAssignments RoleAssignmentManagerV3
)

func (*RoleAssignmentManagerV3) GetProjectRole

get projects-roles for given resource, like domain, project, user, group, role

func (*RoleAssignmentManagerV3) GetProjectUsers

get project users for given project

type RolesManager

type RolesManager struct {
	ResourceManager
}
var (
	Roles   RolesManager
	RolesV3 RolesManager
)

func (*RolesManager) BatchDelete

func (this *RolesManager) BatchDelete(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject) []SubmitResult

func (*RolesManager) BatchDeleteInContexts

func (this *RolesManager) BatchDeleteInContexts(session *mcclient.ClientSession, idlist []string, body jsonutils.JSONObject, ctxs []ManagerContext) []SubmitResult

func (*RolesManager) Delete

func (*RolesManager) DeleteInContexts

func (this *RolesManager) DeleteInContexts(session *mcclient.ClientSession, id string, body jsonutils.JSONObject, ctxs []ManagerContext) (jsonutils.JSONObject, error)

type SchedtagManager

type SchedtagManager struct {
	ResourceManager
}
var (
	Schedtags SchedtagManager
)

func (*SchedtagManager) DoBatchSchedtagHostAddRemove

func (this *SchedtagManager) DoBatchSchedtagHostAddRemove(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type SchedulerManager

type SchedulerManager struct {
	ResourceManager
}
var (
	SchedManager SchedulerManager
)

func (*SchedulerManager) CandidateDetail

func (this *SchedulerManager) CandidateDetail(s *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*SchedulerManager) CandidateList

func (this *SchedulerManager) CandidateList(s *mcclient.ClientSession, params jsonutils.JSONObject) (obj jsonutils.JSONObject, err error)

func (*SchedulerManager) CleanCache

func (this *SchedulerManager) CleanCache(s *mcclient.ClientSession, hostId string) error

func (*SchedulerManager) Cleanup

func (*SchedulerManager) DoSchedule

func (this *SchedulerManager) DoSchedule(s *mcclient.ClientSession, params jsonutils.JSONObject, count int) ([]jsonutils.JSONObject, error)

func (*SchedulerManager) DoScheduleListResult

func (this *SchedulerManager) DoScheduleListResult(s *mcclient.ClientSession, params jsonutils.JSONObject, count int) (*ListResult, error)

func (*SchedulerManager) HistoryList

func (this *SchedulerManager) HistoryList(s *mcclient.ClientSession, params jsonutils.JSONObject) (obj jsonutils.JSONObject, err error)

func (*SchedulerManager) HistoryShow

func (*SchedulerManager) Kill

func (*SchedulerManager) Test

type ServerManager

type ServerManager struct {
	ResourceManager
}
var (
	Servers ServerManager
)

func (*ServerManager) DoChangeSetting

func (this *ServerManager) DoChangeSetting(s *mcclient.ClientSession, id string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*ServerManager) GetLoginInfo

type ServiceNodeManager

type ServiceNodeManager struct {
	ResourceManager
}
var (
	ServiceHosts ServiceNodeManager
)

func (*ServiceNodeManager) DoDeleteServiceHost

func (this *ServiceNodeManager) DoDeleteServiceHost(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type SpecsManager

type SpecsManager struct {
	ResourceManager
}
var (
	Specs SpecsManager
)

func (*SpecsManager) GetAllSpecs

func (*SpecsManager) GetHostSpecs

func (*SpecsManager) GetIsolatedDevicesSpecs

func (this *SpecsManager) GetIsolatedDevicesSpecs(s *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*SpecsManager) GetModelSpecs

func (this *SpecsManager) GetModelSpecs(s *mcclient.ClientSession, model string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*SpecsManager) SpecsQueryModelObjects

func (this *SpecsManager) SpecsQueryModelObjects(s *mcclient.ClientSession, model string, specKeys []string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type StatisticsManager

type StatisticsManager struct {
	ResourceManager
}
var (
	Statistics StatisticsManager
)

func (*StatisticsManager) GetByEnv

func (*StatisticsManager) GetByResType

func (*StatisticsManager) GetHardware

type SubmitResult

type SubmitResult struct {
	Status int
	Id     string
	Data   jsonutils.JSONObject
}

func BatchDo

func BatchDo(ids []string, do func(id string) (jsonutils.JSONObject, error)) []SubmitResult

type TreenodeManager

type TreenodeManager struct {
	ResourceManager
}
var (
	TreeNodes TreenodeManager
)

func (*TreenodeManager) GetMap

func (*TreenodeManager) GetNodeIDByLabels

func (this *TreenodeManager) GetNodeIDByLabels(s *mcclient.ClientSession, labels []string) (int64, error)

type UsageManager

type UsageManager struct {
	ResourceManager
}
var (
	Usages UsageManager
)

func (*UsageManager) GetGeneralUsage

func (this *UsageManager) GetGeneralUsage(session *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type UserManager

type UserManager struct {
	ResourceManager
}

func (*UserManager) GetTenantRoleList

func (this *UserManager) GetTenantRoleList(session *mcclient.ClientSession, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*UserManager) GetTenantRoles

func (this *UserManager) GetTenantRoles(session *mcclient.ClientSession, uid string, tenantId string) (*ListResult, error)

type UserManagerV3

type UserManagerV3 struct {
	ResourceManager
}

func (*UserManagerV3) DoJoinGroups

func (this *UserManagerV3) DoJoinGroups(s *mcclient.ClientSession, uid string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*UserManagerV3) GetGroups

func (this *UserManagerV3) GetGroups(session *mcclient.ClientSession, uid string) (*ListResult, error)

func (*UserManagerV3) GetIsLdapUser

func (this *UserManagerV3) GetIsLdapUser(s *mcclient.ClientSession, uid string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

func (*UserManagerV3) GetProjects

func (this *UserManagerV3) GetProjects(session *mcclient.ClientSession, uid string) (*ListResult, error)

func (*UserManagerV3) GetProjectsRPC

func (this *UserManagerV3) GetProjectsRPC(s *mcclient.ClientSession, uid string, params jsonutils.JSONObject) (jsonutils.JSONObject, error)

type VNCProxyManager

type VNCProxyManager struct {
	ResourceManager
}
var (
	VNCProxy VNCProxyManager
)

func (*VNCProxyManager) DoConnect

type VersionManager

type VersionManager struct {
	ResourceManager
}
var (
	Version VersionManager
)

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL