當前位置: 首頁>>代碼示例>>Golang>>正文


Golang volume.VolumeOptions類代碼示例

本文整理匯總了Golang中k8s/io/kubernetes/pkg/volume.VolumeOptions的典型用法代碼示例。如果您正苦於以下問題:Golang VolumeOptions類的具體用法?Golang VolumeOptions怎麽用?Golang VolumeOptions使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了VolumeOptions類的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: newProvisioner

func (controller *PersistentVolumeProvisionerController) newProvisioner(plugin volume.ProvisionableVolumePlugin, claim *api.PersistentVolumeClaim, pv *api.PersistentVolume) (volume.Provisioner, error) {
	tags := make(map[string]string)
	tags[cloudVolumeCreatedForClaimNamespaceTag] = claim.Namespace
	tags[cloudVolumeCreatedForClaimNameTag] = claim.Name

	// pv can be nil when the provisioner has not created the PV yet
	if pv != nil {
		tags[cloudVolumeCreatedForVolumeNameTag] = pv.Name
	}

	volumeOptions := volume.VolumeOptions{
		Capacity:                      claim.Spec.Resources.Requests[api.ResourceName(api.ResourceStorage)],
		AccessModes:                   claim.Spec.AccessModes,
		PersistentVolumeReclaimPolicy: api.PersistentVolumeReclaimDelete,
		CloudTags:                     &tags,
		ClusterName:                   controller.clusterName,
	}

	if pv != nil {
		volumeOptions.PVName = pv.Name
	}

	provisioner, err := plugin.NewProvisioner(volumeOptions)
	return provisioner, err
}
開發者ID:ethernetdan,項目名稱:kubernetes,代碼行數:25,代碼來源:persistentvolume_provisioner_controller.go

示例2: NewProvisioner

func (plugin *quobytePlugin) NewProvisioner(options volume.VolumeOptions) (volume.Provisioner, error) {
	if len(options.AccessModes) == 0 {
		options.AccessModes = plugin.GetAccessModes()
	}

	return plugin.newProvisionerInternal(options)
}
開發者ID:ncdc,項目名稱:kubernetes,代碼行數:7,代碼來源:quobyte.go

示例3: NewProvisioner

func (plugin *hostPathPlugin) NewProvisioner(options volume.VolumeOptions) (volume.Provisioner, error) {
	if !plugin.config.ProvisioningEnabled {
		return nil, fmt.Errorf("Provisioning in volume plugin %q is disabled", plugin.GetPluginName())
	}
	if len(options.AccessModes) == 0 {
		options.AccessModes = plugin.GetAccessModes()
	}
	return plugin.newProvisionerFunc(options, plugin.host)
}
開發者ID:astropuffin,項目名稱:kubernetes,代碼行數:9,代碼來源:host_path.go

示例4: NewProvisioner

func (plugin *cinderPlugin) NewProvisioner(options volume.VolumeOptions) (volume.Provisioner, error) {
	if len(options.AccessModes) == 0 {
		options.AccessModes = plugin.GetAccessModes()
	}
	return plugin.newProvisionerInternal(options, &CinderDiskUtil{})
}
開發者ID:ncdc,項目名稱:origin,代碼行數:6,代碼來源:cinder.go

示例5: NewProvisioner

func (plugin *awsElasticBlockStorePlugin) NewProvisioner(options volume.VolumeOptions) (volume.Provisioner, error) {
	if len(options.AccessModes) == 0 {
		options.AccessModes = plugin.GetAccessModes()
	}
	return plugin.newProvisionerInternal(options, &AWSDiskUtil{})
}
開發者ID:johndmulhausen,項目名稱:kubernetes,代碼行數:6,代碼來源:aws_ebs.go

示例6: NewCreater

func (plugin *hostPathPlugin) NewCreater(options volume.VolumeOptions) (volume.Creater, error) {
	if len(options.AccessModes) == 0 {
		options.AccessModes = plugin.GetAccessModes()
	}
	return plugin.newCreaterFunc(options, plugin.host)
}
開發者ID:jsravn,項目名稱:kubernetes,代碼行數:6,代碼來源:host_path.go

示例7: NewProvisioner

func (plugin *gcePersistentDiskPlugin) NewProvisioner(options volume.VolumeOptions) (volume.Provisioner, error) {
	if len(options.AccessModes) == 0 {
		options.AccessModes = plugin.GetAccessModes()
	}
	return plugin.newProvisionerInternal(options, &GCEDiskUtil{})
}
開發者ID:FlyWings,項目名稱:kubernetes,代碼行數:6,代碼來源:gce_pd.go


注:本文中的k8s/io/kubernetes/pkg/volume.VolumeOptions類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。