当前位置: 首页>>代码示例>>Golang>>正文


Golang Datastore.Client方法代码示例

如果您正苦于以下问题:Golang Datastore.Client方法的具体用法?Golang Datastore.Client怎么用?Golang Datastore.Client使用的例子?那么, 这里精选的代码示例或许可以为您提供帮助。也可以进一步了解该方法所在github.com/vmware/govmomi/object.Datastore的示例。

以下是Datastore.Client方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为感觉有用的代码点赞,您的评价将有助于系统推荐出更好的Golang代码示例。


示例1: deleteDatastoreFiles

func (d *Dispatcher) deleteDatastoreFiles(ds *object.Datastore, path string, force bool) (bool, error) {
    defer trace.End(trace.Begin(fmt.Sprintf("path %q, force %t", path, force)))

    // refuse to delete everything on the datstore, ignore force
    if path == "" {
        dsn, _ := ds.ObjectName(d.ctx)
        msg := fmt.Sprintf("refusing to remove datastore files for path \"\" on datastore %q", dsn)
        return false, errors.New(msg)
    }

    var empty bool
    dsPath := ds.Path(path)

    res, err := d.lsFolder(ds, dsPath)
    if err != nil {
        if !types.IsFileNotFound(err) {
            err = errors.Errorf("Failed to browse folder %q: %s", dsPath, err)
            return empty, err
        }
        log.Debugf("Folder %q is not found", dsPath)
        empty = true
        return empty, nil
    }
    if len(res.File) > 0 && !force {
        log.Debugf("Folder %q is not empty, leave it there", dsPath)
        return empty, nil
    }

    m := object.NewFileManager(ds.Client())
    if err = d.deleteFilesIteratively(m, ds, dsPath); err != nil {
        return empty, err
    }
    return true, nil
}
开发者ID:vmware,项目名称:vic,代码行数:34,代码来源:store_files.go

示例2: deleteUpgradeImages

func (d *Dispatcher) deleteUpgradeImages(ds *object.Datastore, settings *data.InstallerData) {
    defer trace.End(trace.Begin(""))

    log.Infof("Deleting upgrade images")

    // do clean up aggressively, even the previous operation failed with context deadline excceeded.
    d.ctx = context.Background()

    m := object.NewFileManager(ds.Client())

    file := ds.Path(path.Join(d.vmPathName, settings.ApplianceISO))
    if err := d.deleteVMFSFiles(m, ds, file); err != nil {
        log.Warnf("Image file %q is not removed for %s. Use the vSphere UI to delete content", file, err)
    }

    file = ds.Path(path.Join(d.vmPathName, settings.BootstrapISO))
    if err := d.deleteVMFSFiles(m, ds, file); err != nil {
        log.Warnf("Image file %q is not removed for %s. Use the vSphere UI to delete content", file, err)
    }
}
开发者ID:vmware,项目名称:vic,代码行数:20,代码来源:upgrade.go


注:本文中的github.com/vmware/govmomi/object.Datastore.Client方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。