本文整理匯總了Golang中github.com/cloudfoundry/bosh-init/deployment/disk.Disk.CID方法的典型用法代碼示例。如果您正苦於以下問題:Golang Disk.CID方法的具體用法?Golang Disk.CID怎麽用?Golang Disk.CID使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/cloudfoundry/bosh-init/deployment/disk.Disk
的用法示例。
在下文中一共展示了Disk.CID方法的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: DetachDisk
func (vm *FakeVM) DetachDisk(disk bidisk.Disk) error {
vm.DetachDiskInputs = append(vm.DetachDiskInputs, DetachDiskInput{
Disk: disk,
})
return vm.detachDiskBehavior[disk.CID()]
}
示例2: attachDisk
func (d *diskDeployer) attachDisk(disk bidisk.Disk, vm VM, stage biui.Stage) error {
stageName := fmt.Sprintf("Attaching disk '%s' to VM '%s'", disk.CID(), vm.CID())
err := stage.Perform(stageName, func() error {
return vm.AttachDisk(disk)
})
return err
}
示例3: DetachDisk
func (vm *vm) DetachDisk(disk bidisk.Disk) error {
err := vm.cloud.DetachDisk(vm.cid, disk.CID())
if err != nil {
return bosherr.WrapError(err, "Detaching disk in the cloud")
}
return nil
}
示例4: deleteDisk
func (d *deployment) deleteDisk(deleteStage biui.Stage, disk bidisk.Disk) error {
stepName := fmt.Sprintf("Deleting disk '%s'", disk.CID())
return deleteStage.Perform(stepName, func() error {
err := disk.Delete()
cloudErr, ok := err.(bicloud.Error)
if ok && cloudErr.Type() == bicloud.DiskNotFoundError {
return biui.NewSkipStageError(cloudErr, "Disk not found")
}
return err
})
}
示例5: AttachDisk
func (vm *vm) AttachDisk(disk bidisk.Disk) error {
err := vm.cloud.AttachDisk(vm.cid, disk.CID())
if err != nil {
return bosherr.WrapError(err, "Attaching disk in the cloud")
}
err = vm.agentClient.MountDisk(disk.CID())
if err != nil {
return bosherr.WrapError(err, "Mounting disk")
}
return nil
}
示例6: updateCurrentDiskRecord
func (d *diskDeployer) updateCurrentDiskRecord(disk bidisk.Disk) error {
savedDiskRecord, found, err := d.diskRepo.Find(disk.CID())
if err != nil {
return bosherr.WrapError(err, "Finding disk record")
}
if !found {
return bosherr.Error("Failed to find disk record for new disk")
}
err = d.diskRepo.UpdateCurrent(savedDiskRecord.ID)
if err != nil {
return bosherr.WrapError(err, "Updating current disk record")
}
return nil
}
示例7: migrateDisk
func (d *diskDeployer) migrateDisk(
originalDisk bidisk.Disk,
diskPool bideplmanifest.DiskPool,
vm VM,
stage biui.Stage,
) (newDisk bidisk.Disk, err error) {
d.logger.Debug(d.logTag, "Migrating disk '%s'", originalDisk.CID())
err = stage.Perform("Creating disk", func() error {
newDisk, err = d.diskManager.Create(diskPool, vm.CID())
return err
})
if err != nil {
return newDisk, err
}
stageName := fmt.Sprintf("Attaching disk '%s' to VM '%s'", newDisk.CID(), vm.CID())
err = stage.Perform(stageName, func() error {
return vm.AttachDisk(newDisk)
})
if err != nil {
return newDisk, err
}
stageName = fmt.Sprintf("Migrating disk content from '%s' to '%s'", originalDisk.CID(), newDisk.CID())
err = stage.Perform(stageName, func() error {
return vm.MigrateDisk()
})
if err != nil {
return newDisk, err
}
err = d.updateCurrentDiskRecord(newDisk)
if err != nil {
return newDisk, err
}
stageName = fmt.Sprintf("Detaching disk '%s'", originalDisk.CID())
err = stage.Perform(stageName, func() error {
return vm.DetachDisk(originalDisk)
})
if err != nil {
return newDisk, err
}
stageName = fmt.Sprintf("Deleting disk '%s'", originalDisk.CID())
err = stage.Perform(stageName, func() error {
return originalDisk.Delete()
})
if err != nil {
return newDisk, err
}
return newDisk, nil
}
示例8: UnmountDisk
func (vm *vm) UnmountDisk(disk bidisk.Disk) error {
return vm.agentClient.UnmountDisk(disk.CID())
}
示例9: SetDetachDiskBehavior
func (vm *FakeVM) SetDetachDiskBehavior(disk bidisk.Disk, err error) {
vm.detachDiskBehavior[disk.CID()] = err
}