package org.zstack.test.deployer; import org.zstack.header.zone.ZoneInventory; import org.zstack.test.ApiSenderException; import org.zstack.test.deployer.schema.DeployerConfig; import org.zstack.test.deployer.schema.ZoneConfig; import org.zstack.utils.Utils; import org.zstack.utils.logging.CLogger; import java.util.List; public class DefaultZoneDeployer implements ZoneDeployer<ZoneConfig> { private CLogger logger = Utils.getLogger(DefaultZoneDeployer.class); @Override public Class<ZoneConfig> getSupportedDeployerClassType() { return ZoneConfig.class; } @Override public void deploy(List<ZoneConfig> zones, DeployerConfig config, Deployer deployer) throws ApiSenderException { for (ZoneConfig zone : zones) { ZoneInventory zinv = new ZoneInventory(); zinv.setName(zone.getName()); zinv.setDescription(zone.getDescription()); zinv = deployer.getApi().createZoneByFullConfig(zinv); deployer.zones.put(zinv.getName(), zinv); deployer.deployCluster(zone.getClusters(), zinv); deployer.deployPrimaryStorage(zone.getPrimaryStorages(), zinv); deployer.deployL2Network(zone.getL2Networks(), zinv); deployer.attachBackupStorage(zone.getBackupStorageRef(), zinv); } } }