zoukankan      html  css  js  c++  java
  • vRO Extend VirtualDisk Workflow

    https://vbombarded.wordpress.com/2015/02/20/vrealize-orchestrator-extend-virtual-disk-workflow/

    var devices = vm.config.hardware.device;
    System.log(devices)
    
    for (i in devices){
        if (devices[i].deviceInfo.label == diskString){
            var disk = devices[i]
            System.log("Disk = " + disk.deviceInfo.label)
        }
    }
    
    var newSizeKB = disk.capacityInKB + (increaseSizeGB * 1024 * 1024)
    System.log("New Size KB = " + newSizeKB)
    
    var spec = new VcVirtualMachineConfigSpec();
    spec.changeVersion = vm.config.changeVersion;
    spec.deviceChange = System.getModule("com.vmware.onyx").array(VcVirtualDeviceConfigSpec, 1);
    spec.deviceChange[0] = new VcVirtualDeviceConfigSpec();
    spec.deviceChange[0].operation = VcVirtualDeviceConfigSpecOperation.edit;
    spec.deviceChange[0].device = new VcVirtualDisk();
    spec.deviceChange[0].device.key = disk.key;
    spec.deviceChange[0].device.deviceInfo = new VcDescription();
    spec.deviceChange[0].device.deviceInfo.label = disk.deviceInfo.label;
    spec.deviceChange[0].device.deviceInfo.summary = disk.deviceInfo.summary;
    spec.deviceChange[0].device.backing = new VcVirtualDiskFlatVer2BackingInfo();
    spec.deviceChange[0].device.backing.fileName = disk.backing.fileName;
    spec.deviceChange[0].device.backing.diskMode = disk.backing.diskMode;
    spec.deviceChange[0].device.backing.split = disk.backing.split;
    spec.deviceChange[0].device.backing.writeThrough = disk.backing.writeThrough;
    spec.deviceChange[0].device.backing.thinProvisioned = disk.backing.thinProvisioned;
    spec.deviceChange[0].device.backing.uuid = disk.backing.uuid;
    spec.deviceChange[0].device.backing.contentId = disk.backing.contentId;
    spec.deviceChange[0].device.backing.digestEnabled = disk.backing.digestEnabled;
    spec.deviceChange[0].device.controllerKey = disk.controllerKey;
    spec.deviceChange[0].device.unitNumber = disk.unitNumber;
    spec.deviceChange[0].device.capacityInKB = newSizeKB;
    spec.deviceChange[0].device.shares = new VcSharesInfo();
    spec.deviceChange[0].device.shares.shares = disk.shares.shares;
    spec.deviceChange[0].device.shares.level = disk.shares.level;
    spec.deviceChange[0].device.storageIOAllocation = new VcStorageIOAllocationInfo();
    spec.deviceChange[0].device.storageIOAllocation.limit = disk.storageIOAllocation.limit;
    spec.deviceChange[0].device.storageIOAllocation.shares = new VcSharesInfo();
    spec.deviceChange[0].device.storageIOAllocation.shares.shares = disk.storageIOAllocation.shares.shares;
    spec.deviceChange[0].device.storageIOAllocation.shares.level = disk.storageIOAllocation.shares.level;
    
    return vm.reconfigVM_Task(spec);
  • 相关阅读:
    java类型转换
    JVM内存各个区域分工简单介绍
    用数组实现栈
    一些关于Spring的随笔
    设计模式学习笔记(三)之静(动)态代理模式、适配器模式
    浅谈经典排序算法
    PetStore项目总结
    设计模式学习笔记(二)之观察者模式、装饰者模式
    Spring的校验(Validator)
    设计模式学习笔记(一)之工厂模式、单例模式
  • 原文地址:https://www.cnblogs.com/vincenshen/p/9554537.html
Copyright © 2011-2022 走看看