Cleanup of Xen and XenServer terms. Cloned xen plugin creating a xenserver plugin, then removed xen plugin

Signed-off-by: Tim Mackey <tmackey@gmail.com>
Signed-off-by: Sebastien Goasguen <runseb@gmail.com>
This commit is contained in:
Tim Mackey 2014-04-10 15:57:24 -04:00 committed by Sebastien Goasguen
parent 303e6ffc1e
commit a8212d9ef4
90 changed files with 257 additions and 243 deletions

View File

@ -377,7 +377,7 @@ public class ApiConstants {
public static final String SECURITY_GROUP_EANBLED = "securitygroupenabled"; public static final String SECURITY_GROUP_EANBLED = "securitygroupenabled";
public static final String LOCAL_STORAGE_ENABLED = "localstorageenabled"; public static final String LOCAL_STORAGE_ENABLED = "localstorageenabled";
public static final String GUEST_IP_TYPE = "guestiptype"; public static final String GUEST_IP_TYPE = "guestiptype";
public static final String XEN_NETWORK_LABEL = "xennetworklabel"; public static final String XENSERVER_NETWORK_LABEL = "xenservernetworklabel";
public static final String KVM_NETWORK_LABEL = "kvmnetworklabel"; public static final String KVM_NETWORK_LABEL = "kvmnetworklabel";
public static final String VMWARE_NETWORK_LABEL = "vmwarenetworklabel"; public static final String VMWARE_NETWORK_LABEL = "vmwarenetworklabel";
public static final String HYPERV_NETWORK_LABEL = "hypervnetworklabel"; public static final String HYPERV_NETWORK_LABEL = "hypervnetworklabel";

View File

@ -55,7 +55,7 @@ public class AddTrafficTypeCmd extends BaseAsyncCreateCmd {
@Parameter(name = ApiConstants.TRAFFIC_TYPE, type = CommandType.STRING, required = true, description = "the trafficType to be added to the physical network") @Parameter(name = ApiConstants.TRAFFIC_TYPE, type = CommandType.STRING, required = true, description = "the trafficType to be added to the physical network")
private String trafficType; private String trafficType;
@Parameter(name = ApiConstants.XEN_NETWORK_LABEL, @Parameter(name = ApiConstants.XENSERVER_NETWORK_LABEL,
type = CommandType.STRING, type = CommandType.STRING,
description = "The network name label of the physical device dedicated to this traffic on a XenServer host") description = "The network name label of the physical device dedicated to this traffic on a XenServer host")
private String xenLabel; private String xenLabel;

View File

@ -45,7 +45,7 @@ public class UpdateTrafficTypeCmd extends BaseAsyncCmd {
@Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = TrafficTypeResponse.class, required = true, description = "traffic type id") @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = TrafficTypeResponse.class, required = true, description = "traffic type id")
private Long id; private Long id;
@Parameter(name = ApiConstants.XEN_NETWORK_LABEL, @Parameter(name = ApiConstants.XENSERVER_NETWORK_LABEL,
type = CommandType.STRING, type = CommandType.STRING,
description = "The network name label of the physical device dedicated to this traffic on a XenServer host") description = "The network name label of the physical device dedicated to this traffic on a XenServer host")
private String xenLabel; private String xenLabel;

View File

@ -40,7 +40,7 @@ public class TrafficTypeResponse extends BaseResponse {
@Param(description = "the physical network this belongs to") @Param(description = "the physical network this belongs to")
private String physicalNetworkId; private String physicalNetworkId;
@SerializedName(ApiConstants.XEN_NETWORK_LABEL) @SerializedName(ApiConstants.XENSERVER_NETWORK_LABEL)
@Param(description = "The network name label of the physical device dedicated to this traffic on a XenServer host") @Param(description = "The network name label of the physical device dedicated to this traffic on a XenServer host")
private String xenNetworkLabel; private String xenNetworkLabel;

View File

@ -2007,9 +2007,9 @@ public class EC2Engine extends ManagerBase {
ec2Image.setState(temp.getIsReady() ? "available" : "pending"); ec2Image.setState(temp.getIsReady() ? "available" : "pending");
ec2Image.setDomainId(temp.getDomainId()); ec2Image.setDomainId(temp.getDomainId());
if (temp.getHyperVisor().equalsIgnoreCase("xenserver")) if (temp.getHyperVisor().equalsIgnoreCase("xenserver"))
ec2Image.setHypervisor("xen"); ec2Image.setHypervisor("xenserver");
else if (temp.getHyperVisor().equalsIgnoreCase("ovm")) else if (temp.getHyperVisor().equalsIgnoreCase("ovm"))
ec2Image.setHypervisor("ovm"); // valid values for hypervisor is 'ovm' and 'xen' ec2Image.setHypervisor("ovm"); // valid values for hypervisor is 'ovm' and 'xenserver'
else else
ec2Image.setHypervisor(""); ec2Image.setHypervisor("");
if (temp.getDisplayText() == null) if (temp.getDisplayText() == null)
@ -2614,7 +2614,7 @@ public class EC2Engine extends ManagerBase {
*/ */
private String mapToAmazonHypervisorType(String hypervisor) { private String mapToAmazonHypervisorType(String hypervisor) {
if (hypervisor.equalsIgnoreCase("Xenserver")) if (hypervisor.equalsIgnoreCase("Xenserver"))
return ("xen"); return ("xenserver");
else if (hypervisor.equalsIgnoreCase("Ovm")) else if (hypervisor.equalsIgnoreCase("Ovm"))
return ("ovm"); return ("ovm");
else else

View File

@ -1258,7 +1258,7 @@ label.weekly=Weekly
label.welcome.cloud.console=Welcome to Management Console label.welcome.cloud.console=Welcome to Management Console
label.welcome=Welcome label.welcome=Welcome
label.what.is.cloudstack=What is CloudStack&\#8482? label.what.is.cloudstack=What is CloudStack&\#8482?
label.xen.traffic.label=XenServer traffic label label.xenserver.traffic.label=XenServer traffic label
label.yes=Yes label.yes=Yes
label.zone.details=Zone details label.zone.details=Zone details
label.zone.id=Zone ID label.zone.id=Zone ID

View File

@ -1476,7 +1476,7 @@ label.welcome.cloud.console=Bienvenue dans la Console d\\'Administration
label.what.is.cloudstack=Qu\\'est-ce-que CloudStack&\#8482; ? label.what.is.cloudstack=Qu\\'est-ce-que CloudStack&\#8482; ?
label.xenserver.tools.version.61.plus=XenServer Tools Version 6.1\\+ label.xenserver.tools.version.61.plus=XenServer Tools Version 6.1\\+
label.Xenserver.Tools.Version61plus=XenServer Tools Version 6.1\\+ label.Xenserver.Tools.Version61plus=XenServer Tools Version 6.1\\+
label.xen.traffic.label=Libell\u00e9 trafic XenServer label.xenserver.traffic.label=Libell\u00e9 trafic XenServer
label.yes=Oui label.yes=Oui
label.zone.dedicated=Zone d\u00e9di\u00e9e label.zone.dedicated=Zone d\u00e9di\u00e9e
label.zone.details=D\u00e9tails de la zone label.zone.details=D\u00e9tails de la zone

View File

@ -621,7 +621,7 @@ label.vsmctrlvlanid=VLAN ID di Controllo
label.vsmpktvlanid=VLAN ID del Pacchetto label.vsmpktvlanid=VLAN ID del Pacchetto
label.vsmstoragevlanid=VLAN ID di Storage label.vsmstoragevlanid=VLAN ID di Storage
label.what.is.cloudstack=Che cosa \u00e8 CloudStack&\#8482? label.what.is.cloudstack=Che cosa \u00e8 CloudStack&\#8482?
label.xen.traffic.label=Etichetta del traffico via XenServer label.xenserver.traffic.label=Etichetta del traffico via XenServer
label.yes=S\u00ec label.yes=S\u00ec
label.zone.details=Dettagli della Zona label.zone.details=Dettagli della Zona
label.zone.name=Nome Zona label.zone.name=Nome Zona

View File

@ -1453,7 +1453,7 @@ label.welcome=\u3088\u3046\u3053\u305d
label.what.is.cloudstack=CloudStack&\#8482; \u306b\u3064\u3044\u3066 label.what.is.cloudstack=CloudStack&\#8482; \u306b\u3064\u3044\u3066
label.xenserver.tools.version.61.plus=XenServer Tools Version 6.1 \u4ee5\u964d label.xenserver.tools.version.61.plus=XenServer Tools Version 6.1 \u4ee5\u964d
label.Xenserver.Tools.Version61plus=XenServer Tools Version 6.1 \u4ee5\u964d label.Xenserver.Tools.Version61plus=XenServer Tools Version 6.1 \u4ee5\u964d
label.xen.traffic.label=XenServer \u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af \u30e9\u30d9\u30eb label.xenserver.traffic.label=XenServer \u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af \u30e9\u30d9\u30eb
label.yes=\u306f\u3044 label.yes=\u306f\u3044
label.zone.dedicated=\u5c02\u7528\u30be\u30fc\u30f3 label.zone.dedicated=\u5c02\u7528\u30be\u30fc\u30f3
label.zone.details=\u30be\u30fc\u30f3\u306e\u8a73\u7d30 label.zone.details=\u30be\u30fc\u30f3\u306e\u8a73\u7d30

View File

@ -1133,7 +1133,7 @@ label.weekly=\ub9e4\uc8fc
label.welcome.cloud.console=\uad00\ub9ac \ucf58\uc194\uc5d0 \uc624\uc2e0\uac83\uc744 \ud658\uc601\ud569\ub2c8\ub2e4\! label.welcome.cloud.console=\uad00\ub9ac \ucf58\uc194\uc5d0 \uc624\uc2e0\uac83\uc744 \ud658\uc601\ud569\ub2c8\ub2e4\!
label.welcome=\uc5b4\uc11c \uc624\uc2ed\uc2dc\uc624 label.welcome=\uc5b4\uc11c \uc624\uc2ed\uc2dc\uc624
label.what.is.cloudstack=CloudStack\u2122 \uc815\ubcf4 label.what.is.cloudstack=CloudStack\u2122 \uc815\ubcf4
label.xen.traffic.label=XenServer \ud2b8\ub798\ud53d \ub77c\ubca8 label.xenserver.traffic.label=XenServer \ud2b8\ub798\ud53d \ub77c\ubca8
label.yes=\uc608 label.yes=\uc608
label.zone.details=Zone \uc0c1\uc138 label.zone.details=Zone \uc0c1\uc138
label.zone.id=Zone ID label.zone.id=Zone ID

View File

@ -921,7 +921,7 @@ label.weekly=Ukentlig
label.welcome.cloud.console=Velkommen til administrasjonskonsollet label.welcome.cloud.console=Velkommen til administrasjonskonsollet
label.welcome=Velkommen label.welcome=Velkommen
label.what.is.cloudstack=Hva er CloudStack&\#8482? label.what.is.cloudstack=Hva er CloudStack&\#8482?
label.xen.traffic.label=XenServer trafikketikett label.xenserver.traffic.label=XenServer trafikketikett
label.yes=Ja label.yes=Ja
label.zone.details=Sonedetaljer label.zone.details=Sonedetaljer
label.zone.id=Sone ID label.zone.id=Sone ID

View File

@ -1246,7 +1246,7 @@ label.weekly=Wekelijks
label.welcome.cloud.console=Welkom op de Management Console label.welcome.cloud.console=Welkom op de Management Console
label.welcome=Welkom label.welcome=Welkom
label.what.is.cloudstack=Wat is CloudStack&\#8482? label.what.is.cloudstack=Wat is CloudStack&\#8482?
label.xen.traffic.label=XenServer verkeerslabel label.xenserver.traffic.label=XenServer verkeerslabel
label.yes=Ja label.yes=Ja
label.zone.details=Zone details label.zone.details=Zone details
label.zone.id=Zone ID label.zone.id=Zone ID

View File

@ -1248,7 +1248,7 @@ label.weekly=Semanal
label.welcome=Bem-Vindo label.welcome=Bem-Vindo
label.welcome.cloud.console=Painel de Controle label.welcome.cloud.console=Painel de Controle
label.what.is.cloudstack=O que \u00e9 o CloudStack&\#8482? label.what.is.cloudstack=O que \u00e9 o CloudStack&\#8482?
label.xen.traffic.label=Etiqueta de tr\u00e1fego XenServer label.xenserver.traffic.label=Etiqueta de tr\u00e1fego XenServer
label.yes=Sim label.yes=Sim
label.zone.details=Detalhes de zona label.zone.details=Detalhes de zona
label.zone.id=ID da Zona label.zone.id=ID da Zona

View File

@ -1203,7 +1203,7 @@ label.weekly=\u0415\u0436\u0435\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u043e
label.welcome.cloud.console=\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f label.welcome.cloud.console=\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f
label.welcome=\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c label.welcome=\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c
label.what.is.cloudstack=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 CloudStack? label.what.is.cloudstack=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 CloudStack?
label.xen.traffic.label=\u041c\u0435\u0442\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 XenServer label.xenserver.traffic.label=\u041c\u0435\u0442\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 XenServer
label.yes=\u0414\u0430 label.yes=\u0414\u0430
label.zone.details=\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0437\u043e\u043d\u044b label.zone.details=\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0437\u043e\u043d\u044b
label.zone.id=ID \u0437\u043e\u043d\u044b label.zone.id=ID \u0437\u043e\u043d\u044b

View File

@ -1453,7 +1453,7 @@ label.welcome=\u6b22\u8fce
label.what.is.cloudstack=\u4ec0\u4e48\u662f CloudStack&\#8482? label.what.is.cloudstack=\u4ec0\u4e48\u662f CloudStack&\#8482?
label.xenserver.tools.version.61.plus=XenServer Tools \u7248\u672c 6.1\\+ label.xenserver.tools.version.61.plus=XenServer Tools \u7248\u672c 6.1\\+
label.Xenserver.Tools.Version61plus=XenServer Tools \u7248\u672c 6.1\\+ label.Xenserver.Tools.Version61plus=XenServer Tools \u7248\u672c 6.1\\+
label.xen.traffic.label=XenServer \u6d41\u91cf\u6807\u7b7e label.xenserver.traffic.label=XenServer \u6d41\u91cf\u6807\u7b7e
label.yes=\u662f label.yes=\u662f
label.zone.dedicated=\u8d44\u6e90\u57df\u5df2\u4e13\u7528 label.zone.dedicated=\u8d44\u6e90\u57df\u5df2\u4e13\u7528
label.zone.details=\u533a\u57df\u8be6\u60c5 label.zone.details=\u533a\u57df\u8be6\u60c5

View File

@ -147,7 +147,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.cloudstack</groupId> <groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-plugin-hypervisor-xen</artifactId> <artifactId>cloud-plugin-hypervisor-xenserver</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -528,7 +528,7 @@
<!-- <!--
Discovers Discovers
--> -->
<bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer"> <bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer">
<property name="name" value="XCP Agent"/> <property name="name" value="XCP Agent"/>
</bean> </bean>

View File

@ -48,7 +48,7 @@ public class PhysicalNetworkTrafficTypeVO implements PhysicalNetworkTrafficType
@Enumerated(value = EnumType.STRING) @Enumerated(value = EnumType.STRING)
TrafficType trafficType; TrafficType trafficType;
@Column(name = "xen_network_label") @Column(name = "xenserver_network_label")
private String xenNetworkLabel; private String xenNetworkLabel;
@Column(name = "kvm_network_label") @Column(name = "kvm_network_label")

View File

@ -58,7 +58,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.cloudstack</groupId> <groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-plugin-hypervisor-xen</artifactId> <artifactId>cloud-plugin-hypervisor-xenserver</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>

View File

@ -52,7 +52,7 @@ import com.cloud.host.dao.HostDao;
import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.hypervisor.kvm.resource.LibvirtComputingResource; import com.cloud.hypervisor.kvm.resource.LibvirtComputingResource;
import com.cloud.hypervisor.vmware.VmwareServerDiscoverer; import com.cloud.hypervisor.vmware.VmwareServerDiscoverer;
import com.cloud.hypervisor.xen.resource.XcpOssResource; import com.cloud.hypervisor.xenserver.resource.XcpOssResource;
import com.cloud.resource.ServerResource; import com.cloud.resource.ServerResource;
import com.cloud.utils.component.ManagerBase; import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.utils.exception.CloudRuntimeException;

View File

@ -85,17 +85,17 @@ public class DirectAgentTest extends CloudStackTestNGBase {
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), getHostGateway(), getHostCidr(), 8, "test"); HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), getHostGateway(), getHostCidr(), 8, "test");
pod = podDao.persist(pod); pod = podDao.persist(pod);
// create xen cluster // create xenserver cluster
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster"); ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
cluster.setHypervisorType(HypervisorType.XenServer.toString()); cluster.setHypervisorType(HypervisorType.XenServer.toString());
cluster.setClusterType(ClusterType.CloudManaged); cluster.setClusterType(ClusterType.CloudManaged);
cluster.setManagedState(ManagedState.Managed); cluster.setManagedState(ManagedState.Managed);
cluster = clusterDao.persist(cluster); cluster = clusterDao.persist(cluster);
clusterId = cluster.getId(); clusterId = cluster.getId();
// create xen host // create xenserver host
host = new HostVO(getHostGuid()); host = new HostVO(getHostGuid());
host.setName("devcloud xen host"); host.setName("devcloud xenserver host");
host.setType(Host.Type.Routing); host.setType(Host.Type.Routing);
host.setHypervisorType(HypervisorType.XenServer); host.setHypervisorType(HypervisorType.XenServer);
host.setPrivateIpAddress(getHostIp()); host.setPrivateIpAddress(getHostIp());

View File

@ -158,7 +158,7 @@ public class EndpointSelectorTest {
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), "10.223.0.1", "10.233.2.2/25", 8, "test"); HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), "10.223.0.1", "10.233.2.2/25", 8, "test");
pod = podDao.persist(pod); pod = podDao.persist(pod);
podId = pod.getId(); podId = pod.getId();
// create xen cluster // create xenserver cluster
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster"); ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
cluster.setHypervisorType(Hypervisor.HypervisorType.XenServer.toString()); cluster.setHypervisorType(Hypervisor.HypervisorType.XenServer.toString());
cluster.setClusterType(Cluster.ClusterType.CloudManaged); cluster.setClusterType(Cluster.ClusterType.CloudManaged);
@ -230,7 +230,7 @@ public class EndpointSelectorTest {
public HostVO createHost(Hypervisor.HypervisorType hypervisorType) { public HostVO createHost(Hypervisor.HypervisorType hypervisorType) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
HostVO host = new HostVO(uuid); HostVO host = new HostVO(uuid);
host.setName("devcloud xen host"); host.setName("devcloud xenserver host");
host.setType(Host.Type.Routing); host.setType(Host.Type.Routing);
host.setPrivateIpAddress(uuid); host.setPrivateIpAddress(uuid);
host.setDataCenterId(dcId); host.setDataCenterId(dcId);

View File

@ -191,17 +191,17 @@ public class SnapshotTest extends CloudStackTestNGBase {
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test"); HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test");
pod = podDao.persist(pod); pod = podDao.persist(pod);
podId = pod.getId(); podId = pod.getId();
// create xen cluster // create xenserver cluster
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster"); ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
cluster.setHypervisorType(this.getHypervisor().toString()); cluster.setHypervisorType(this.getHypervisor().toString());
cluster.setClusterType(ClusterType.CloudManaged); cluster.setClusterType(ClusterType.CloudManaged);
cluster.setManagedState(ManagedState.Managed); cluster.setManagedState(ManagedState.Managed);
cluster = clusterDao.persist(cluster); cluster = clusterDao.persist(cluster);
clusterId = cluster.getId(); clusterId = cluster.getId();
// create xen host // create xenserver host
host = new HostVO(this.getHostGuid()); host = new HostVO(this.getHostGuid());
host.setName("devcloud xen host"); host.setName("devcloud xenserver host");
host.setType(Host.Type.Routing); host.setType(Host.Type.Routing);
host.setPrivateIpAddress(this.getHostIp()); host.setPrivateIpAddress(this.getHostIp());
host.setDataCenterId(dc.getId()); host.setDataCenterId(dc.getId());

View File

@ -157,7 +157,7 @@ public class SnapshotTestWithFakeData {
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), "10.223.0.1", "10.233.2.2/25", 8, "test"); HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), "10.223.0.1", "10.233.2.2/25", 8, "test");
pod = podDao.persist(pod); pod = podDao.persist(pod);
podId = pod.getId(); podId = pod.getId();
// create xen cluster // create xenserver cluster
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster"); ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
cluster.setHypervisorType(Hypervisor.HypervisorType.XenServer.toString()); cluster.setHypervisorType(Hypervisor.HypervisorType.XenServer.toString());
cluster.setClusterType(Cluster.ClusterType.CloudManaged); cluster.setClusterType(Cluster.ClusterType.CloudManaged);

View File

@ -148,17 +148,17 @@ public class VolumeServiceTest extends CloudStackTestNGBase {
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test"); HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test");
pod = podDao.persist(pod); pod = podDao.persist(pod);
podId = pod.getId(); podId = pod.getId();
// create xen cluster // create xenserver cluster
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster"); ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
cluster.setHypervisorType(HypervisorType.XenServer.toString()); cluster.setHypervisorType(HypervisorType.XenServer.toString());
cluster.setClusterType(ClusterType.CloudManaged); cluster.setClusterType(ClusterType.CloudManaged);
cluster.setManagedState(ManagedState.Managed); cluster.setManagedState(ManagedState.Managed);
cluster = clusterDao.persist(cluster); cluster = clusterDao.persist(cluster);
clusterId = cluster.getId(); clusterId = cluster.getId();
// create xen host // create xenserver host
host = new HostVO(this.getHostGuid()); host = new HostVO(this.getHostGuid());
host.setName("devcloud xen host"); host.setName("devcloud xenserver host");
host.setType(Host.Type.Routing); host.setType(Host.Type.Routing);
host.setPrivateIpAddress(this.getHostIp()); host.setPrivateIpAddress(this.getHostIp());
host.setDataCenterId(dc.getId()); host.setDataCenterId(dc.getId());

View File

@ -167,17 +167,17 @@ public class VolumeTest extends CloudStackTestNGBase {
HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test"); HostPodVO pod = new HostPodVO(UUID.randomUUID().toString(), dc.getId(), this.getHostGateway(), this.getHostCidr(), 8, "test");
pod = podDao.persist(pod); pod = podDao.persist(pod);
podId = pod.getId(); podId = pod.getId();
// create xen cluster // create xenserver cluster
ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster"); ClusterVO cluster = new ClusterVO(dc.getId(), pod.getId(), "devcloud cluster");
cluster.setHypervisorType(this.getHypervisor().toString()); cluster.setHypervisorType(this.getHypervisor().toString());
cluster.setClusterType(ClusterType.CloudManaged); cluster.setClusterType(ClusterType.CloudManaged);
cluster.setManagedState(ManagedState.Managed); cluster.setManagedState(ManagedState.Managed);
cluster = clusterDao.persist(cluster); cluster = clusterDao.persist(cluster);
clusterId = cluster.getId(); clusterId = cluster.getId();
// create xen host // create xenserver host
host = new HostVO(this.getHostGuid()); host = new HostVO(this.getHostGuid());
host.setName("devcloud xen host"); host.setName("devcloud xenserver host");
host.setType(Host.Type.Routing); host.setType(Host.Type.Routing);
host.setPrivateIpAddress(this.getHostIp()); host.setPrivateIpAddress(this.getHostIp());
host.setDataCenterId(dc.getId()); host.setDataCenterId(dc.getId());

View File

@ -109,7 +109,7 @@
</bean> </bean>
<bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer"> <bean id="XcpServerDiscoverer" class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer">
<property name="name" value="XCP Agent"/> <property name="name" value="XCP Agent"/>
</bean> </bean>

View File

@ -150,7 +150,7 @@ public class DefaultEndPointSelector implements EndPointSelector {
} }
protected EndPoint findEndPointForImageMove(DataStore srcStore, DataStore destStore) { protected EndPoint findEndPointForImageMove(DataStore srcStore, DataStore destStore) {
// find any xen/kvm host in the scope // find any xenserver/kvm host in the scope
Scope srcScope = srcStore.getScope(); Scope srcScope = srcStore.getScope();
Scope destScope = destStore.getScope(); Scope destScope = destStore.getScope();
Scope selectedScope = null; Scope selectedScope = null;

View File

@ -70,9 +70,9 @@
</display> </display>
</interface> </interface>
<class id="6" corner="BOTTOM_RIGHT" language="java" <class id="6" corner="BOTTOM_RIGHT" language="java"
name="org.apache.cloudstack.storage.datastore.configurator.xen.XenNfsConfigurator" name="org.apache.cloudstack.storage.datastore.configurator.xenserver.XenNfsConfigurator"
project="cloud-engine-storage-volume" project="cloud-engine-storage-volume"
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenNfsConfigurator.java" file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xenserver/XenNfsConfigurator.java"
binary="false"> binary="false">
<position height="-1" width="-1" x="1482" y="448"/> <position height="-1" width="-1" x="1482" y="448"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true"> <display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true">
@ -81,9 +81,9 @@
</display> </display>
</class> </class>
<class id="7" corner="BOTTOM_RIGHT" language="java" <class id="7" corner="BOTTOM_RIGHT" language="java"
name="org.apache.cloudstack.storage.datastore.configurator.xen.AbstractXenConfigurator" name="org.apache.cloudstack.storage.datastore.configurator.xenserver.AbstractXenConfigurator"
project="cloud-engine-storage-volume" project="cloud-engine-storage-volume"
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/AbstractXenConfigurator.java" file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xenserver/AbstractXenConfigurator.java"
binary="false"> binary="false">
<position height="-1" width="-1" x="1536" y="278"/> <position height="-1" width="-1" x="1536" y="278"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true"> <display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true">
@ -134,9 +134,9 @@
</display> </display>
</class> </class>
<class id="12" corner="BOTTOM_RIGHT" language="java" <class id="12" corner="BOTTOM_RIGHT" language="java"
name="org.apache.cloudstack.storage.datastore.lifecycle.DefaultXenPrimaryDataStoreLifeCycle" name="org.apache.cloudstack.storage.datastore.lifecycle.DefaultXenServerPrimaryDataStoreLifeCycle"
project="cloud-engine-storage-volume" project="cloud-engine-storage-volume"
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/lifecycle/DefaultXenPrimaryDataStoreLifeCycle.java" file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/lifecycle/DefaultXenServerPrimaryDataStoreLifeCycle.java"
binary="false"> binary="false">
<position height="-1" width="-1" x="724" y="1502"/> <position height="-1" width="-1" x="724" y="1502"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true"> <display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true">
@ -156,9 +156,9 @@
</display> </display>
</class> </class>
<class id="14" corner="BOTTOM_RIGHT" language="java" <class id="14" corner="BOTTOM_RIGHT" language="java"
name="org.apache.cloudstack.storage.datastore.configurator.xen.XenIscsiConfigurator" name="org.apache.cloudstack.storage.datastore.configurator.xenserver.XenServerIscsiConfigurator"
project="cloud-engine-storage-volume" project="cloud-engine-storage-volume"
file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xen/XenIscsiConfigurator.java" file="/cloud-engine-storage-volume/src/org/apache/cloudstack/storage/datastore/configurator/xenserver/XenServerIscsiConfigurator.java"
binary="false"> binary="false">
<position height="-1" width="-1" x="1817" y="450"/> <position height="-1" width="-1" x="1817" y="450"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true"> <display autosize="true" stereotype="true" package="true" initial-value="false" signature="true" visibility="true">

View File

@ -1,18 +1,18 @@
<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements. See the NOTICE file distributed with this work for additional license agreements. See the NOTICE file distributed with this work for additional
information regarding copyright ownership. The ASF licenses this file to information regarding copyright ownership. The ASF licenses this file to
you under the Apache License, Version 2.0 (the "License"); you may not use you under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of this file except in compliance with the License. You may obtain a copy of
the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
by applicable law or agreed to in writing, software distributed under the by applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied. See the License for the specific OF ANY KIND, either express or implied. See the License for the specific
language governing permissions and limitations under the License. --> language governing permissions and limitations under the License. -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>cloud-plugin-hypervisor-xen</artifactId> <artifactId>cloud-plugin-hypervisor-xenserver</artifactId>
<name>Apache CloudStack Plugin - Hypervisor Xen</name> <name>Apache CloudStack Plugin - Hypervisor XenServer</name>
<parent> <parent>
<groupId>org.apache.cloudstack</groupId> <groupId>org.apache.cloudstack</groupId>
<artifactId>cloudstack-plugins</artifactId> <artifactId>cloudstack-plugins</artifactId>

View File

@ -1,12 +1,12 @@
<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements. See the NOTICE file distributed with this work for additional license agreements. See the NOTICE file distributed with this work for additional
information regarding copyright ownership. The ASF licenses this file to information regarding copyright ownership. The ASF licenses this file to
you under the Apache License, Version 2.0 (the "License"); you may not use you under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of this file except in compliance with the License. You may obtain a copy of
the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
by applicable law or agreed to in writing, software distributed under the by applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied. See the License for the specific OF ANY KIND, either express or implied. See the License for the specific
language governing permissions and limitations under the License. --> language governing permissions and limitations under the License. -->
<beans xmlns="http://www.springframework.org/schema/beans" <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"

View File

@ -1,12 +1,12 @@
<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements. See the NOTICE file distributed with this work for additional license agreements. See the NOTICE file distributed with this work for additional
information regarding copyright ownership. The ASF licenses this file to information regarding copyright ownership. The ASF licenses this file to
you under the Apache License, Version 2.0 (the "License"); you may not use you under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of this file except in compliance with the License. You may obtain a copy of
the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
by applicable law or agreed to in writing, software distributed under the by applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied. See the License for the specific OF ANY KIND, either express or implied. See the License for the specific
language governing permissions and limitations under the License. --> language governing permissions and limitations under the License. -->
<beans xmlns="http://www.springframework.org/schema/beans" <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
@ -18,7 +18,7 @@
http://www.springframework.org/schema/context/spring-context-3.0.xsd"> http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="XcpServerDiscoverer" <bean id="XcpServerDiscoverer"
class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer"> class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer">
<property name="name" value="XCP Agent" /> <property name="name" value="XCP Agent" />
</bean> </bean>

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.discoverer; package com.cloud.hypervisor.xenserver.discoverer;
import com.cloud.agent.AgentManager; import com.cloud.agent.AgentManager;
import com.cloud.agent.Listener; import com.cloud.agent.Listener;
@ -43,20 +43,20 @@ import com.cloud.host.HostVO;
import com.cloud.host.Status; import com.cloud.host.Status;
import com.cloud.hypervisor.Hypervisor; import com.cloud.hypervisor.Hypervisor;
import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.hypervisor.xen.resource.CitrixResourceBase; import com.cloud.hypervisor.xenserver.resource.CitrixResourceBase;
import com.cloud.hypervisor.xen.resource.XcpOssResource; import com.cloud.hypervisor.xenserver.resource.XcpOssResource;
import com.cloud.hypervisor.xen.resource.XcpServer16Resource; import com.cloud.hypervisor.xenserver.resource.XcpServer16Resource;
import com.cloud.hypervisor.xen.resource.XcpServerResource; import com.cloud.hypervisor.xenserver.resource.XcpServerResource;
import com.cloud.hypervisor.xen.resource.XenServer56FP1Resource; import com.cloud.hypervisor.xenserver.resource.XenServer56FP1Resource;
import com.cloud.hypervisor.xen.resource.XenServer56Resource; import com.cloud.hypervisor.xenserver.resource.XenServer56Resource;
import com.cloud.hypervisor.xen.resource.XenServer56SP2Resource; import com.cloud.hypervisor.xenserver.resource.XenServer56SP2Resource;
import com.cloud.hypervisor.xen.resource.XenServer600Resource; import com.cloud.hypervisor.xenserver.resource.XenServer600Resource;
import com.cloud.hypervisor.xen.resource.XenServer602Resource; import com.cloud.hypervisor.xenserver.resource.XenServer602Resource;
import com.cloud.hypervisor.xen.resource.XenServer610Resource; import com.cloud.hypervisor.xenserver.resource.XenServer610Resource;
import com.cloud.hypervisor.xen.resource.XenServer620Resource; import com.cloud.hypervisor.xenserver.resource.XenServer620Resource;
import com.cloud.hypervisor.xen.resource.XenServer620SP1Resource; import com.cloud.hypervisor.xenserver.resource.XenServer620SP1Resource;
import com.cloud.hypervisor.xen.resource.XenServerConnectionPool; import com.cloud.hypervisor.xenserver.resource.XenServerConnectionPool;
import com.cloud.hypervisor.xen.resource.Xenserver625Resource; import com.cloud.hypervisor.xenserver.resource.Xenserver625Resource;
import com.cloud.resource.Discoverer; import com.cloud.resource.Discoverer;
import com.cloud.resource.DiscovererBase; import com.cloud.resource.DiscovererBase;
import com.cloud.resource.ResourceStateAdapter; import com.cloud.resource.ResourceStateAdapter;
@ -347,12 +347,12 @@ public class XcpServerDiscoverer extends DiscovererBase implements Discoverer, L
params.put("wait", Integer.toString(_wait)); params.put("wait", Integer.toString(_wait));
details.put("wait", Integer.toString(_wait)); details.put("wait", Integer.toString(_wait));
params.put("migratewait", _configDao.getValue(Config.MigrateWait.toString())); params.put("migratewait", _configDao.getValue(Config.MigrateWait.toString()));
params.put(Config.XenMaxNics.toString().toLowerCase(), _configDao.getValue(Config.XenMaxNics.toString())); params.put(Config.XenServerMaxNics.toString().toLowerCase(), _configDao.getValue(Config.XenServerMaxNics.toString()));
params.put(Config.XenHeartBeatInterval.toString().toLowerCase(), _configDao.getValue(Config.XenHeartBeatInterval.toString())); params.put(Config.XenServerHeartBeatInterval.toString().toLowerCase(), _configDao.getValue(Config.XenServerHeartBeatInterval.toString()));
params.put(Config.InstanceName.toString().toLowerCase(), _instance); params.put(Config.InstanceName.toString().toLowerCase(), _instance);
details.put(Config.InstanceName.toString().toLowerCase(), _instance); details.put(Config.InstanceName.toString().toLowerCase(), _instance);
try { try {
resource.configure("Xen Server", params); resource.configure("XenServer", params);
} catch (ConfigurationException e) { } catch (ConfigurationException e) {
_alertMgr.sendAlert(AlertManager.AlertType.ALERT_TYPE_HOST, dcId, podId, "Unable to add " + record.address, "Error is " + e.getMessage()); _alertMgr.sendAlert(AlertManager.AlertType.ALERT_TYPE_HOST, dcId, podId, "Unable to add " + record.address, "Error is " + e.getMessage());
s_logger.warn("Unable to instantiate " + record.address, e); s_logger.warn("Unable to instantiate " + record.address, e);
@ -455,7 +455,7 @@ public class XcpServerDiscoverer extends DiscovererBase implements Discoverer, L
} }
protected void serverConfig() { protected void serverConfig() {
String value = _params.get(Config.XenSetupMultipath.key()); String value = _params.get(Config.XenServerSetupMultipath.key());
_setupMultipath = Boolean.parseBoolean(value); _setupMultipath = Boolean.parseBoolean(value);
} }
@ -464,23 +464,23 @@ public class XcpServerDiscoverer extends DiscovererBase implements Discoverer, L
super.configure(name, params); super.configure(name, params);
serverConfig(); serverConfig();
_publicNic = _params.get(Config.XenPublicNetwork.key()); _publicNic = _params.get(Config.XenServerPublicNetwork.key());
_privateNic = _params.get(Config.XenPrivateNetwork.key()); _privateNic = _params.get(Config.XenServerPrivateNetwork.key());
_storageNic1 = _params.get(Config.XenStorageNetwork1.key()); _storageNic1 = _params.get(Config.XenServerStorageNetwork1.key());
_storageNic2 = _params.get(Config.XenStorageNetwork2.key()); _storageNic2 = _params.get(Config.XenServerStorageNetwork2.key());
_guestNic = _params.get(Config.XenGuestNetwork.key()); _guestNic = _params.get(Config.XenServerGuestNetwork.key());
String value = _params.get(Config.XapiWait.toString()); String value = _params.get(Config.XapiWait.toString());
_wait = NumbersUtil.parseInt(value, Integer.parseInt(Config.XapiWait.getDefaultValue())); _wait = NumbersUtil.parseInt(value, Integer.parseInt(Config.XapiWait.getDefaultValue()));
_instance = _params.get(Config.InstanceName.key()); _instance = _params.get(Config.InstanceName.key());
value = _params.get(Config.XenSetupMultipath.key()); value = _params.get(Config.XenServerSetupMultipath.key());
Boolean.parseBoolean(value); Boolean.parseBoolean(value);
value = _params.get("xen.check.hvm"); value = _params.get("xenserver.check.hvm");
_checkHvm = false; _checkHvm = false;
_connPool = XenServerConnectionPool.getInstance(); _connPool = XenServerConnectionPool.getInstance();

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
@ -2401,4 +2401,4 @@ public class CitrixHelper {
} }
return recommendedMaxMinMemory.getMin(); return recommendedMaxMinMemory.getMin();
} }
} }

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import com.cloud.agent.IAgentControl; import com.cloud.agent.IAgentControl;
import com.cloud.agent.api.Answer; import com.cloud.agent.api.Answer;
@ -291,10 +291,10 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
protected int _pollingIntervalInSeconds = 60; protected int _pollingIntervalInSeconds = 60;
//Hypervisor specific params with generic value, may need to be overridden for specific versions //Hypervisor specific params with generic value, may need to be overridden for specific versions
long _xsMemoryUsed = 128 * 1024 * 1024L; // xen hypervisor used 128 M long _xsMemoryUsed = 128 * 1024 * 1024L; // xenserver hypervisor used 128 M
double _xsVirtualizationFactor = 63.0 / 64.0; // 1 - virtualization overhead double _xsVirtualizationFactor = 63.0 / 64.0; // 1 - virtualization overhead
//static min values for guests on xen //static min values for guests on xenserver
private static final long mem_128m = 134217728L; private static final long mem_128m = 134217728L;
protected boolean _canBridgeFirewall = false; protected boolean _canBridgeFirewall = false;
@ -993,11 +993,11 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
nw = Network.create(conn, rec); nw = Network.create(conn, rec);
// Plug dom0 vif only when creating network // Plug dom0 vif only when creating network
enableXenServerNetwork(conn, nw, nwName, "tunnel network for account " + nwName); enableXenServerNetwork(conn, nw, nwName, "tunnel network for account " + nwName);
s_logger.debug("### Xen Server network for tunnels created:" + nwName); s_logger.debug("### XenServer network for tunnels created:" + nwName);
} else { } else {
nw = networks.iterator().next(); nw = networks.iterator().next();
enableXenServerNetwork(conn, nw, nwName, "tunnel network for account " + nwName); enableXenServerNetwork(conn, nw, nwName, "tunnel network for account " + nwName);
s_logger.debug("Xen Server network for tunnels found:" + nwName); s_logger.debug("XenServer network for tunnels found:" + nwName);
} }
return nw; return nw;
} catch (Exception e) { } catch (Exception e) {
@ -1490,8 +1490,8 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
vm.setPlatform(conn, platform); vm.setPlatform(conn, platform);
} }
} }
String xentoolsversion = details.get("hypervisortoolsversion"); String xenservertoolsversion = details.get("hypervisortoolsversion");
if (xentoolsversion == null || !xentoolsversion.equalsIgnoreCase("xenserver61")) { if (xenservertoolsversion == null || !xenservertoolsversion.equalsIgnoreCase("xenserver61")) {
Map<String, String> platform = vm.getPlatform(conn); Map<String, String> platform = vm.getPlatform(conn);
platform.remove("device_id"); platform.remove("device_id");
vm.setPlatform(conn, platform); vm.setPlatform(conn, platform);
@ -2706,13 +2706,13 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
return convertToState(vm.getPowerState(conn)); return convertToState(vm.getPowerState(conn));
} }
} catch (final BadServerResponse e) { } catch (final BadServerResponse e) {
// There is a race condition within xen such that if a vm is // There is a race condition within xenserver such that if a vm is
// deleted and we // deleted and we
// happen to ask for it, it throws this stupid response. So // happen to ask for it, it throws this stupid response. So
// if this happens, // if this happens,
// we take a nap and try again which then avoids the race // we take a nap and try again which then avoids the race
// condition because // condition because
// the vm's information is now cleaned up by xen. The error // the vm's information is now cleaned up by xenserver. The error
// is as follows // is as follows
// com.xensource.xenapi.Types$BadServerResponse // com.xensource.xenapi.Types$BadServerResponse
// [HANDLE_INVALID, VM, // [HANDLE_INVALID, VM,
@ -3292,9 +3292,9 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
/** /**
* When Dynamic Memory Control (DMC) is enabled - * When Dynamic Memory Control (DMC) is enabled -
* xen allows scaling the guest memory while the guest is running * xenserver allows scaling the guest memory while the guest is running
* *
* By default this is disallowed, override the specific xen resource * By default this is disallowed, override the specific xenserver resource
* if this is enabled * if this is enabled
*/ */
protected boolean isDmcEnabled(Connection conn, Host host) throws XenAPIException, XmlRpcException { protected boolean isDmcEnabled(Connection conn, Host host) throws XenAPIException, XmlRpcException {
@ -4907,11 +4907,11 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
host.setTags(conn, hr.tags); host.setTags(conn, hr.tags);
return true; return true;
} catch (XenAPIException e) { } catch (XenAPIException e) {
String msg = "Xen setup failed due to " + e.toString(); String msg = "XenServer setup failed due to " + e.toString();
s_logger.warn(msg, e); s_logger.warn(msg, e);
throw new CloudRuntimeException("Unable to get host information " + e.toString(), e); throw new CloudRuntimeException("Unable to get host information " + e.toString(), e);
} catch (XmlRpcException e) { } catch (XmlRpcException e) {
String msg = "Xen setup failed due to " + e.getMessage(); String msg = "XenServer setup failed due to " + e.getMessage();
s_logger.warn(msg, e); s_logger.warn(msg, e);
throw new CloudRuntimeException("Unable to get host information ", e); throw new CloudRuntimeException("Unable to get host information ", e);
} }
@ -5718,7 +5718,7 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
_storageNetworkName1 = (String)params.get("storage.network.device1"); _storageNetworkName1 = (String)params.get("storage.network.device1");
_storageNetworkName2 = (String)params.get("storage.network.device2"); _storageNetworkName2 = (String)params.get("storage.network.device2");
_heartbeatInterval = NumbersUtil.parseInt((String)params.get("xen.heartbeat.interval"), 60); _heartbeatInterval = NumbersUtil.parseInt((String)params.get("xenserver.heartbeat.interval"), 60);
String value = (String)params.get("wait"); String value = (String)params.get("wait");
_wait = NumbersUtil.parseInt(value, 600); _wait = NumbersUtil.parseInt(value, 600);
@ -5726,7 +5726,7 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
value = (String)params.get("migratewait"); value = (String)params.get("migratewait");
_migratewait = NumbersUtil.parseInt(value, 3600); _migratewait = NumbersUtil.parseInt(value, 3600);
_maxNics = NumbersUtil.parseInt((String)params.get("xen.nics.max"), 7); _maxNics = NumbersUtil.parseInt((String)params.get("xenserver.nics.max"), 7);
if (_pod == null) { if (_pod == null) {
throw new ConfigurationException("Unable to get the pod"); throw new ConfigurationException("Unable to get the pod");
@ -7279,11 +7279,11 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
} }
if (s_logger.isTraceEnabled()) { if (s_logger.isTraceEnabled()) {
s_logger.trace("VM " + vm + ": xen has state " + newState + " and we have state " + (oldState != null ? oldState.toString() : "null")); s_logger.trace("VM " + vm + ": xenserver has state " + newState + " and we have state " + (oldState != null ? oldState.toString() : "null"));
} }
if (vm.startsWith("migrating")) { if (vm.startsWith("migrating")) {
s_logger.warn("Migrating from xen detected. Skipping"); s_logger.warn("Migrating from xenserver detected. Skipping");
continue; continue;
} }
if (oldState == null) { if (oldState == null) {
@ -7328,7 +7328,7 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
String host_uuid = entry.getValue().first(); String host_uuid = entry.getValue().first();
if (s_logger.isTraceEnabled()) { if (s_logger.isTraceEnabled()) {
s_logger.trace("VM " + vm + " is now missing from xen so reporting stopped"); s_logger.trace("VM " + vm + " is now missing from xenserver so reporting stopped");
} }
if (oldState == State.Stopping) { if (oldState == State.Stopping) {

View File

@ -15,7 +15,7 @@
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -17,7 +17,7 @@
* under the License. * under the License.
*/ */
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
public class XcpServer16Resource extends XcpServerResource { public class XcpServer16Resource extends XcpServerResource {

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
@ -139,7 +139,7 @@ public class XcpServerResource extends CitrixResourceBase {
cause the sum of all the dynamic-min values to exceed the total cause the sum of all the dynamic-min values to exceed the total
host memory (taking into account various memory overheads). host memory (taking into account various memory overheads).
cf: http://wiki.xen.org/wiki/XCP_FAQ_Dynamic_Memory_Control cf: https://wiki.xenserver.org/index.php?title=XCP_FAQ_Dynamic_Memory_Control
*/ */
@Override @Override
protected void setMemory(Connection conn, VM vm, long minMemsize, long maxMemsize) throws XmlRpcException, XenAPIException { protected void setMemory(Connection conn, VM vm, long minMemsize, long maxMemsize) throws XmlRpcException, XenAPIException {

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
@ -151,7 +151,7 @@ public class XenServer56FP1Resource extends XenServer56Resource {
/** /**
* When Dynamic Memory Control (DMC) is enabled - * When Dynamic Memory Control (DMC) is enabled -
* xen allows scaling the guest memory while the guest is running * xenserver allows scaling the guest memory while the guest is running
* *
* This is determined by the 'restrict_dmc' option on the host. * This is determined by the 'restrict_dmc' option on the host.
* When false, scaling is allowed hence DMC is enabled * When false, scaling is allowed hence DMC is enabled

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import com.cloud.agent.api.Answer; import com.cloud.agent.api.Answer;
import com.cloud.agent.api.CheckOnHostAnswer; import com.cloud.agent.api.CheckOnHostAnswer;

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import javax.ejb.Local; import javax.ejb.Local;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import com.cloud.resource.ServerResource; import com.cloud.resource.ServerResource;

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import com.xensource.xenapi.Connection; import com.xensource.xenapi.Connection;
import com.xensource.xenapi.Host; import com.xensource.xenapi.Host;
import com.xensource.xenapi.HostPatch; import com.xensource.xenapi.HostPatch;

View File

@ -16,7 +16,7 @@
* specific language governing permissions and limitations * specific language governing permissions and limitations
* under the License. * under the License.
*/ */
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.util.HashMap; import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;

View File

@ -14,7 +14,7 @@
// KIND, either express or implied. See the License for the // KIND, either express or implied. See the License for the
// specific language governing permissions and limitations // specific language governing permissions and limitations
// under the License. // under the License.
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;

View File

@ -16,7 +16,7 @@
* specific language governing permissions and limitations * specific language governing permissions and limitations
* under the License. * under the License.
*/ */
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import static com.cloud.utils.ReflectUtil.flattenProperties; import static com.cloud.utils.ReflectUtil.flattenProperties;
import static com.google.common.collect.Lists.newArrayList; import static com.google.common.collect.Lists.newArrayList;
@ -63,7 +63,7 @@ import com.cloud.agent.api.to.S3TO;
import com.cloud.agent.api.to.StorageFilerTO; import com.cloud.agent.api.to.StorageFilerTO;
import com.cloud.agent.api.to.SwiftTO; import com.cloud.agent.api.to.SwiftTO;
import com.cloud.exception.InternalErrorException; import com.cloud.exception.InternalErrorException;
import com.cloud.hypervisor.xen.resource.CitrixResourceBase.SRType; import com.cloud.hypervisor.xenserver.resource.CitrixResourceBase.SRType;
import com.cloud.storage.DataStoreRole; import com.cloud.storage.DataStoreRole;
import com.cloud.storage.Storage.ImageFormat; import com.cloud.storage.Storage.ImageFormat;
import com.cloud.storage.Storage.StoragePoolType; import com.cloud.storage.Storage.StoragePoolType;
@ -1142,7 +1142,7 @@ public class XenServerStorageProcessor implements StorageProcessor {
String result = null; String result = null;
try { try {
result = result =
hypervisorResource.callHostPluginAsync(conn, "swiftxen", "swift", wait, "op", "upload", "url", swift.getUrl(), "account", swift.getAccount(), "username", hypervisorResource.callHostPluginAsync(conn, "swiftxenserver", "swift", wait, "op", "upload", "url", swift.getUrl(), "account", swift.getAccount(), "username",
swift.getUserName(), "key", swift.getKey(), "container", container, "ldir", ldir, "lfilename", lfilename, "isISCSI", isISCSI.toString()); swift.getUserName(), "key", swift.getKey(), "container", container, "ldir", ldir, "lfilename", lfilename, "isISCSI", isISCSI.toString());
if (result != null && result.equals("true")) { if (result != null && result.equals("true")) {
return true; return true;
@ -1192,7 +1192,7 @@ public class XenServerStorageProcessor implements StorageProcessor {
parameters.addAll(Arrays.asList("operation", "put", "filename", dir + "/" + filename, "iSCSIFlag", iSCSIFlag.toString(), "bucket", s3.getBucketName(), "key", parameters.addAll(Arrays.asList("operation", "put", "filename", dir + "/" + filename, "iSCSIFlag", iSCSIFlag.toString(), "bucket", s3.getBucketName(), "key",
key, "https", s3.isHttps() != null ? s3.isHttps().toString() : "null", "maxSingleUploadSizeInBytes", String.valueOf(s3.getMaxSingleUploadSizeInBytes()))); key, "https", s3.isHttps() != null ? s3.isHttps().toString() : "null", "maxSingleUploadSizeInBytes", String.valueOf(s3.getMaxSingleUploadSizeInBytes())));
final String result = hypervisorResource.callHostPluginAsync(connection, "s3xen", "s3", wait, parameters.toArray(new String[parameters.size()])); final String result = hypervisorResource.callHostPluginAsync(connection, "s3xenserver", "s3", wait, parameters.toArray(new String[parameters.size()]));
if (result != null && result.equals("true")) { if (result != null && result.equals("true")) {
return key; return key;

View File

@ -16,7 +16,7 @@
* specific language governing permissions and limitations * specific language governing permissions and limitations
* under the License. * under the License.
*/ */
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -16,7 +16,7 @@
* specific language governing permissions and limitations * specific language governing permissions and limitations
* under the License. * under the License.
*/ */
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import java.io.File; import java.io.File;
import java.net.URI; import java.net.URI;

View File

@ -36,7 +36,7 @@ import com.xensource.xenapi.Types.XenAPIException;
import com.xensource.xenapi.VM; import com.xensource.xenapi.VM;
import com.cloud.agent.api.StartupCommand; import com.cloud.agent.api.StartupCommand;
import com.cloud.hypervisor.xen.resource.XenServer620SP1Resource; import com.cloud.hypervisor.xenserver.resource.XenServer620SP1Resource;
import com.cloud.utils.Pair; import com.cloud.utils.Pair;
import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.vm.VirtualMachine; import com.cloud.vm.VirtualMachine;

View File

@ -17,7 +17,7 @@
* under the License. * under the License.
*/ */
package com.cloud.hypervisor.xen.resource; package com.cloud.hypervisor.xenserver.resource;
import static org.junit.Assert.fail; import static org.junit.Assert.fail;
import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doNothing;
@ -50,7 +50,7 @@ import com.cloud.agent.api.ScaleVmAnswer;
import com.cloud.agent.api.ScaleVmCommand; import com.cloud.agent.api.ScaleVmCommand;
import com.cloud.agent.api.to.IpAddressTO; import com.cloud.agent.api.to.IpAddressTO;
import com.cloud.agent.api.to.VirtualMachineTO; import com.cloud.agent.api.to.VirtualMachineTO;
import com.cloud.hypervisor.xen.resource.CitrixResourceBase.XsHost; import com.cloud.hypervisor.xenserver.resource.CitrixResourceBase.XsHost;
public class CitrixResourceBaseTest { public class CitrixResourceBaseTest {
@ -187,4 +187,4 @@ public class CitrixResourceBaseTest {
fail("this test is meant to show that null pointer is not thrown"); fail("this test is meant to show that null pointer is not thrown");
} }
} }
} }

View File

@ -109,7 +109,7 @@ under the License.
<adapter name="KVMGuru" class="com.cloud.hypervisor.KVMGuru"/> <adapter name="KVMGuru" class="com.cloud.hypervisor.KVMGuru"/>
</adapters> </adapters>
<adapters key="com.cloud.resource.Discoverer"> <adapters key="com.cloud.resource.Discoverer">
<adapter name="XCP Agent" class="com.cloud.hypervisor.xen.discoverer.XcpServerDiscoverer"/> <adapter name="XCP Agent" class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer"/>
<adapter name="SecondaryStorage" class="com.cloud.storage.secondary.SecondaryStorageDiscoverer"/> <adapter name="SecondaryStorage" class="com.cloud.storage.secondary.SecondaryStorageDiscoverer"/>
<adapter name="KVM Agent" class="com.cloud.hypervisor.kvm.discoverer.KvmServerDiscoverer"/> <adapter name="KVM Agent" class="com.cloud.hypervisor.kvm.discoverer.KvmServerDiscoverer"/>
<adapter name="Bare Metal Agent" class="com.cloud.baremetal.BareMetalDiscoverer"/> <adapter name="Bare Metal Agent" class="com.cloud.baremetal.BareMetalDiscoverer"/>

View File

@ -46,7 +46,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.cloudstack</groupId> <groupId>org.apache.cloudstack</groupId>
<artifactId>cloud-plugin-hypervisor-xen</artifactId> <artifactId>cloud-plugin-hypervisor-xenserver</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>

View File

@ -49,7 +49,7 @@
<module>host-allocators/random</module> <module>host-allocators/random</module>
<module>dedicated-resources</module> <module>dedicated-resources</module>
<module>hypervisors/ovm</module> <module>hypervisors/ovm</module>
<module>hypervisors/xen</module> <module>hypervisors/xenserver</module>
<module>hypervisors/kvm</module> <module>hypervisors/kvm</module>
<module>event-bus/rabbitmq</module> <module>event-bus/rabbitmq</module>
<module>event-bus/inmemory</module> <module>event-bus/inmemory</module>

View File

@ -1144,7 +1144,7 @@
<File Id="fil4573D848D63904E25199DFC7C5F3C630" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\perfmon.py" /> <File Id="fil4573D848D63904E25199DFC7C5F3C630" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\perfmon.py" />
</Component> </Component>
<Component Id="cmpD76E671ADB5BD6A4D78727948C10979D" Guid="{EA4A8C61-6B09-4489-ACE6-00B9A0F1A4BC}"> <Component Id="cmpD76E671ADB5BD6A4D78727948C10979D" Guid="{EA4A8C61-6B09-4489-ACE6-00B9A0F1A4BC}">
<File Id="filD3A7AE13D824593E31FF5468A9B764AB" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\s3xen" /> <File Id="filD3A7AE13D824593E31FF5468A9B764AB" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\s3xenserver" />
</Component> </Component>
<Component Id="cmpA5ACE2ABDAD485164B610A43CF7260AC" Guid="{D6BC09D7-775E-4DBE-8E97-603B00B26BC2}"> <Component Id="cmpA5ACE2ABDAD485164B610A43CF7260AC" Guid="{D6BC09D7-775E-4DBE-8E97-603B00B26BC2}">
<File Id="filA1C0191B48050912F371A13BC75AD95A" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\setupxenserver.sh" /> <File Id="filA1C0191B48050912F371A13BC75AD95A" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\setupxenserver.sh" />
@ -1165,7 +1165,7 @@
<File Id="fil5C88104CC07D3894D5C6618F2480D894" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\swift" /> <File Id="fil5C88104CC07D3894D5C6618F2480D894" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\swift" />
</Component> </Component>
<Component Id="cmp29E6175F9E42A05F0ACA5E9DEC427DA9" Guid="{08A3A34A-662E-40F5-AC4C-6224AF8E3204}"> <Component Id="cmp29E6175F9E42A05F0ACA5E9DEC427DA9" Guid="{08A3A34A-662E-40F5-AC4C-6224AF8E3204}">
<File Id="fil30689D2F97C68DD797DC8681851DC4A0" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\swiftxen" /> <File Id="fil30689D2F97C68DD797DC8681851DC4A0" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\swiftxenserver" />
</Component> </Component>
<Component Id="cmp795E37CA1E2B235A5F5500D0CFC92E07" Guid="{4CAFC2DE-B603-485C-B8ED-A6A016962788}"> <Component Id="cmp795E37CA1E2B235A5F5500D0CFC92E07" Guid="{4CAFC2DE-B603-485C-B8ED-A6A016962788}">
<File Id="filAD37A67E4680F1FFC939AE9759EA6193" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\upgrade_snapshot.sh" /> <File Id="filAD37A67E4680F1FFC939AE9759EA6193" KeyPath="yes" Source="!(wix.SourceClient)\WEB-INF\classes\scripts\vm\hypervisor\xenserver\upgrade_snapshot.sh" />
@ -2411,4 +2411,4 @@
<ComponentRef Id="cmp776899723BBC0C56DBF1EA389CF3A210" /> <ComponentRef Id="cmp776899723BBC0C56DBF1EA389CF3A210" />
</ComponentGroup> </ComponentGroup>
</Fragment> </Fragment>
</Wix> </Wix>

View File

@ -29,7 +29,7 @@
rotate 20 rotate 20
} }
/var/log/cloud/ovstunnel.log /var/log/cloud/ovs-pvlan.log /var/log/cloud/swiftxen.log /var/log/cloud/s3xen /var/log/cloud/storageplugin { /var/log/cloud/ovstunnel.log /var/log/cloud/ovs-pvlan.log /var/log/cloud/swiftxenserver.log /var/log/cloud/s3xenserver /var/log/cloud/storageplugin {
daily daily
size 1M size 1M
rotate 2 rotate 2

View File

@ -497,7 +497,7 @@ public class FirstFitAllocator extends AdapterBase implements HostAllocator {
if (allocationAlgorithm != null) { if (allocationAlgorithm != null) {
_allocationAlgorithm = allocationAlgorithm; _allocationAlgorithm = allocationAlgorithm;
} }
String value = configs.get("xen.check.hvm"); String value = configs.get("xenserver.check.hvm");
_checkHvm = value == null ? true : Boolean.parseBoolean(value); _checkHvm = value == null ? true : Boolean.parseBoolean(value);
} }
return true; return true;

View File

@ -1078,17 +1078,17 @@ public enum Config {
OvmGuestNetwork("Hidden", ManagementServer.class, String.class, "ovm.guest.network.device", null, "Specify the private bridge on host for private network", null), OvmGuestNetwork("Hidden", ManagementServer.class, String.class, "ovm.guest.network.device", null, "Specify the private bridge on host for private network", null),
// XenServer // XenServer
XenPublicNetwork( XenServerPublicNetwork(
"Hidden", "Hidden",
ManagementServer.class, ManagementServer.class,
String.class, String.class,
"xen.public.network.device", "xenserver.public.network.device",
null, null,
"[ONLY IF THE PUBLIC NETWORK IS ON A DEDICATED NIC]:The network name label of the physical device dedicated to the public network on a XenServer host", "[ONLY IF THE PUBLIC NETWORK IS ON A DEDICATED NIC]:The network name label of the physical device dedicated to the public network on a XenServer host",
null), null),
XenStorageNetwork1("Hidden", ManagementServer.class, String.class, "xen.storage.network.device1", null, "Specify when there are storage networks", null), XenServerStorageNetwork1("Hidden", ManagementServer.class, String.class, "xenserver.storage.network.device1", null, "Specify when there are storage networks", null),
XenStorageNetwork2("Hidden", ManagementServer.class, String.class, "xen.storage.network.device2", null, "Specify when there are storage networks", null), XenServerStorageNetwork2("Hidden", ManagementServer.class, String.class, "xenserver.storage.network.device2", null, "Specify when there are storage networks", null),
XenPrivateNetwork("Hidden", ManagementServer.class, String.class, "xen.private.network.device", null, "Specify when the private network name is different", null), XenServerPrivateNetwork("Hidden", ManagementServer.class, String.class, "xenserver.private.network.device", null, "Specify when the private network name is different", null),
NetworkGuestCidrLimit( NetworkGuestCidrLimit(
"Network", "Network",
NetworkOrchestrationService.class, NetworkOrchestrationService.class,
@ -1097,32 +1097,32 @@ public enum Config {
"22", "22",
"size limit for guest cidr; can't be less than this value", "size limit for guest cidr; can't be less than this value",
null), null),
XenSetupMultipath("Advanced", ManagementServer.class, String.class, "xen.setup.multipath", "false", "Setup the host to do multipath", null), XenServerSetupMultipath("Advanced", ManagementServer.class, String.class, "xenserver.setup.multipath", "false", "Setup the host to do multipath", null),
XenBondStorageNic("Advanced", ManagementServer.class, String.class, "xen.bond.storage.nics", null, "Attempt to bond the two networks if found", null), XenServerBondStorageNic("Advanced", ManagementServer.class, String.class, "xenserver.bond.storage.nics", null, "Attempt to bond the two networks if found", null),
XenHeartBeatInterval( XenServerHeartBeatInterval(
"Advanced", "Advanced",
ManagementServer.class, ManagementServer.class,
Integer.class, Integer.class,
"xen.heartbeat.interval", "xenserver.heartbeat.interval",
"60", "60",
"heartbeat to use when implementing XenServer Self Fencing", "heartbeat to use when implementing XenServer Self Fencing",
null), null),
XenGuestNetwork("Hidden", ManagementServer.class, String.class, "xen.guest.network.device", null, "Specify for guest network name label", null), XenServerGuestNetwork("Hidden", ManagementServer.class, String.class, "xenserver.guest.network.device", null, "Specify for guest network name label", null),
XenMaxNics("Advanced", AgentManager.class, Integer.class, "xen.nics.max", "7", "Maximum allowed nics for Vms created on Xen", null), XenServerMaxNics("Advanced", AgentManager.class, Integer.class, "xenserver.nics.max", "7", "Maximum allowed nics for Vms created on XenServer", null),
XenPVdriverVersion( XenServerPVdriverVersion(
"Advanced", "Advanced",
ManagementServer.class, ManagementServer.class,
String.class, String.class,
"xen.pvdriver.version", "xenserver.pvdriver.version",
"xenserver61", "xenserver61",
"default Xen PV driver version for registered template, valid value:xenserver56,xenserver61 ", "default Xen PV driver version for registered template, valid value:xenserver56,xenserver61 ",
"xenserver56,xenserver61"), "xenserver56,xenserver61"),
XenServerHotFix("Advanced", XenServerHotFix("Advanced",
ManagementServer.class, ManagementServer.class,
Boolean.class, Boolean.class,
"xen.hotfix.enabled", "xenserver.hotfix.enabled",
"false", "false",
"Enable/Disable xenserver hot fix", "Enable/Disable XenServer hot fix",
null), null),
// VMware // VMware
@ -1365,7 +1365,7 @@ public enum Config {
"Hidden", "Hidden",
ManagementServer.class, ManagementServer.class,
Boolean.class, Boolean.class,
"xen.create.pools.in.pod", "xenserver.create.pools.in.pod",
"false", "false",
"Should we automatically add XenServers into pools that are inside a Pod", "Should we automatically add XenServers into pools that are inside a Pod",
null), null),

View File

@ -362,7 +362,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
configValuesForValidation.add("storage.stats.interval"); configValuesForValidation.add("storage.stats.interval");
configValuesForValidation.add("storage.cleanup.interval"); configValuesForValidation.add("storage.cleanup.interval");
configValuesForValidation.add("wait"); configValuesForValidation.add("wait");
configValuesForValidation.add("xen.heartbeat.interval"); configValuesForValidation.add("xenserver.heartbeat.interval");
configValuesForValidation.add("incorrect.login.attempts.allowed"); configValuesForValidation.add("incorrect.login.attempts.allowed");
} }
@ -506,7 +506,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
} }
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
if (Config.XenGuestNetwork.key().equalsIgnoreCase(name)) { if (Config.XenServerGuestNetwork.key().equalsIgnoreCase(name)) {
String sql = "update host_details set value=? where name=?"; String sql = "update host_details set value=? where name=?";
try { try {
pstmt = txn.prepareAutoCloseStatement(sql); pstmt = txn.prepareAutoCloseStatement(sql);
@ -517,7 +517,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
} catch (Throwable e) { } catch (Throwable e) {
throw new CloudRuntimeException("Failed to update guest.network.device in host_details due to exception ", e); throw new CloudRuntimeException("Failed to update guest.network.device in host_details due to exception ", e);
} }
} else if (Config.XenPrivateNetwork.key().equalsIgnoreCase(name)) { } else if (Config.XenServerPrivateNetwork.key().equalsIgnoreCase(name)) {
String sql = "update host_details set value=? where name=?"; String sql = "update host_details set value=? where name=?";
try { try {
pstmt = txn.prepareAutoCloseStatement(sql); pstmt = txn.prepareAutoCloseStatement(sql);
@ -528,7 +528,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
} catch (Throwable e) { } catch (Throwable e) {
throw new CloudRuntimeException("Failed to update private.network.device in host_details due to exception ", e); throw new CloudRuntimeException("Failed to update private.network.device in host_details due to exception ", e);
} }
} else if (Config.XenPublicNetwork.key().equalsIgnoreCase(name)) { } else if (Config.XenServerPublicNetwork.key().equalsIgnoreCase(name)) {
String sql = "update host_details set value=? where name=?"; String sql = "update host_details set value=? where name=?";
try { try {
pstmt = txn.prepareAutoCloseStatement(sql); pstmt = txn.prepareAutoCloseStatement(sql);
@ -539,7 +539,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
} catch (Throwable e) { } catch (Throwable e) {
throw new CloudRuntimeException("Failed to update public.network.device in host_details due to exception ", e); throw new CloudRuntimeException("Failed to update public.network.device in host_details due to exception ", e);
} }
} else if (Config.XenStorageNetwork1.key().equalsIgnoreCase(name)) { } else if (Config.XenServerStorageNetwork1.key().equalsIgnoreCase(name)) {
String sql = "update host_details set value=? where name=?"; String sql = "update host_details set value=? where name=?";
try { try {
pstmt = txn.prepareAutoCloseStatement(sql); pstmt = txn.prepareAutoCloseStatement(sql);
@ -550,7 +550,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
} catch (Throwable e) { } catch (Throwable e) {
throw new CloudRuntimeException("Failed to update storage.network.device1 in host_details due to exception ", e); throw new CloudRuntimeException("Failed to update storage.network.device1 in host_details due to exception ", e);
} }
} else if (Config.XenStorageNetwork2.key().equals(name)) { } else if (Config.XenServerStorageNetwork2.key().equals(name)) {
String sql = "update host_details set value=? where name=?"; String sql = "update host_details set value=? where name=?";
try { try {
pstmt = txn.prepareAutoCloseStatement(sql); pstmt = txn.prepareAutoCloseStatement(sql);

View File

@ -3640,16 +3640,16 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService {
String xenLabel = null; String xenLabel = null;
switch (trafficType) { switch (trafficType) {
case Public: case Public:
xenLabel = _configDao.getValue(Config.XenPublicNetwork.key()); xenLabel = _configDao.getValue(Config.XenServerPublicNetwork.key());
break; break;
case Guest: case Guest:
xenLabel = _configDao.getValue(Config.XenGuestNetwork.key()); xenLabel = _configDao.getValue(Config.XenServerGuestNetwork.key());
break; break;
case Storage: case Storage:
xenLabel = _configDao.getValue(Config.XenStorageNetwork1.key()); xenLabel = _configDao.getValue(Config.XenServerStorageNetwork1.key());
break; break;
case Management: case Management:
xenLabel = _configDao.getValue(Config.XenPrivateNetwork.key()); xenLabel = _configDao.getValue(Config.XenServerPrivateNetwork.key());
break; break;
case Control: case Control:
xenLabel = "cloud_link_local_network"; xenLabel = "cloud_link_local_network";

View File

@ -45,7 +45,7 @@ import java.util.Map;
* *
*/ */
public interface VirtualNetworkApplianceManager extends Manager, VirtualNetworkApplianceService { public interface VirtualNetworkApplianceManager extends Manager, VirtualNetworkApplianceService {
static final String RouterTemplateXenCK = "router.template.xen"; static final String RouterTemplateXenCK = "router.template.xenserver";
static final String RouterTemplateKvmCK = "router.template.kvm"; static final String RouterTemplateKvmCK = "router.template.kvm";
static final String RouterTemplateVmwareCK = "router.template.vmware"; static final String RouterTemplateVmwareCK = "router.template.vmware";
static final String RouterTemplateHyperVCK = "router.template.hyperv"; static final String RouterTemplateHyperVCK = "router.template.hyperv";

View File

@ -135,8 +135,8 @@ public abstract class DiscovererBase extends AdapterBase implements Discoverer {
params.put("secondary.storage.vm", "false"); params.put("secondary.storage.vm", "false");
params.put("max.template.iso.size", _configDao.getValue(Config.MaxTemplateAndIsoSize.toString())); params.put("max.template.iso.size", _configDao.getValue(Config.MaxTemplateAndIsoSize.toString()));
params.put("migratewait", _configDao.getValue(Config.MigrateWait.toString())); params.put("migratewait", _configDao.getValue(Config.MigrateWait.toString()));
params.put(Config.XenMaxNics.toString().toLowerCase(), _configDao.getValue(Config.XenMaxNics.toString())); params.put(Config.XenServerMaxNics.toString().toLowerCase(), _configDao.getValue(Config.XenServerMaxNics.toString()));
params.put(Config.XenHeartBeatInterval.toString().toLowerCase(), _configDao.getValue(Config.XenHeartBeatInterval.toString())); params.put(Config.XenServerHeartBeatInterval.toString().toLowerCase(), _configDao.getValue(Config.XenServerHeartBeatInterval.toString()));
params.put("router.aggregation.command.each.timeout", _configDao.getValue(Config.RouterAggregationCommandEachTimeout.toString())); params.put("router.aggregation.command.each.timeout", _configDao.getValue(Config.RouterAggregationCommandEachTimeout.toString()));
return params; return params;

View File

@ -361,12 +361,12 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio
@Override @Override
public void doInTransactionWithoutResult(TransactionStatus status) { public void doInTransactionWithoutResult(TransactionStatus status) {
TransactionLegacy txn = TransactionLegacy.currentTxn(); TransactionLegacy txn = TransactionLegacy.currentTxn();
String pvdriverversion = Config.XenPVdriverVersion.getDefaultValue(); String pvdriverversion = Config.XenServerPVdriverVersion.getDefaultValue();
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
ResultSet rs1 = null; ResultSet rs1 = null;
ResultSet rs2 = null; ResultSet rs2 = null;
try { try {
String oldValue = _configDao.getValue(Config.XenPVdriverVersion.key()); String oldValue = _configDao.getValue(Config.XenServerPVdriverVersion.key());
if (oldValue == null) { if (oldValue == null) {
String sql = "select resource from host where hypervisor_type='XenServer' and removed is null and status not in ('Error', 'Removed') group by resource"; String sql = "select resource from host where hypervisor_type='XenServer' and removed is null and status not in ('Error', 'Removed') group by resource";
pstmt = txn.prepareAutoCloseStatement(sql); pstmt = txn.prepareAutoCloseStatement(sql);
@ -375,17 +375,17 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio
String resouce = rs1.getString(1); //resource column String resouce = rs1.getString(1); //resource column
if (resouce == null) if (resouce == null)
continue; continue;
if (resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer56Resource") if (resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer56Resource")
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer56FP1Resource") || resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer56FP1Resource")
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer56SP2Resource") || resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer56SP2Resource")
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer600Resource") || resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer600Resource")
|| resouce.equalsIgnoreCase("com.cloud.hypervisor.xen.resource.XenServer602Resource")) { || resouce.equalsIgnoreCase("com.cloud.hypervisor.xenserver.resource.XenServer602Resource")) {
pvdriverversion = "xenserver56"; pvdriverversion = "xenserver56";
break; break;
} }
} }
_configDao.getValueAndInitIfNotExist(Config.XenPVdriverVersion.key(), Config.XenPVdriverVersion.getCategory(), pvdriverversion, _configDao.getValueAndInitIfNotExist(Config.XenServerPVdriverVersion.key(), Config.XenServerPVdriverVersion.getCategory(), pvdriverversion,
Config.XenPVdriverVersion.getDescription()); Config.XenServerPVdriverVersion.getDescription());
sql = "select id from vm_template where hypervisor_type='XenServer' and format!='ISO' and removed is null"; sql = "select id from vm_template where hypervisor_type='XenServer' and format!='ISO' and removed is null";
pstmt = txn.prepareAutoCloseStatement(sql); pstmt = txn.prepareAutoCloseStatement(sql);
rs2 = pstmt.executeQuery(); rs2 = pstmt.executeQuery();

View File

@ -231,7 +231,7 @@ public abstract class TemplateAdapterBase extends AdapterBase implements Templat
if (hypervisorType.equals(Hypervisor.HypervisorType.XenServer)) { if (hypervisorType.equals(Hypervisor.HypervisorType.XenServer)) {
if (details == null || !details.containsKey("hypervisortoolsversion") || details.get("hypervisortoolsversion") == null || if (details == null || !details.containsKey("hypervisortoolsversion") || details.get("hypervisortoolsversion") == null ||
((String)details.get("hypervisortoolsversion")).equalsIgnoreCase("none")) { ((String)details.get("hypervisortoolsversion")).equalsIgnoreCase("none")) {
String hpvs = _configDao.getValue(Config.XenPVdriverVersion.key()); String hpvs = _configDao.getValue(Config.XenServerPVdriverVersion.key());
if (hpvs != null) { if (hpvs != null) {
if (details == null) { if (details == null) {
details = new HashMap<String, String>(); details = new HashMap<String, String>();

View File

@ -408,7 +408,7 @@ public class PodZoneConfig {
String defaultXenStorageNetworkLabel = getDefaultXenNetworkLabel(TrafficType.Storage); String defaultXenStorageNetworkLabel = getDefaultXenNetworkLabel(TrafficType.Storage);
String defaultXenGuestNetworkLabel = getDefaultXenNetworkLabel(TrafficType.Guest); String defaultXenGuestNetworkLabel = getDefaultXenNetworkLabel(TrafficType.Guest);
String insertTraficType = "INSERT INTO `cloud`.`physical_network_traffic_types` " + "(physical_network_id, traffic_type, xen_network_label) VALUES ( ?, ?, ?)"; String insertTraficType = "INSERT INTO `cloud`.`physical_network_traffic_types` " + "(physical_network_id, traffic_type, xenserver_network_label) VALUES ( ?, ?, ?)";
try { try {
PreparedStatement stmt = txn.prepareAutoCloseStatement(insertTraficType); PreparedStatement stmt = txn.prepareAutoCloseStatement(insertTraficType);
@ -444,16 +444,16 @@ public class PodZoneConfig {
String configName = null; String configName = null;
switch (trafficType) { switch (trafficType) {
case Public: case Public:
configName = "xen.public.network.device"; configName = "xenserver.public.network.device";
break; break;
case Guest: case Guest:
configName = "xen.guest.network.device"; configName = "xenserver.guest.network.device";
break; break;
case Storage: case Storage:
configName = "xen.storage.network.device1"; configName = "xenserver.storage.network.device1";
break; break;
case Management: case Management:
configName = "xen.private.network.device"; configName = "xenserver.private.network.device";
break; break;
} }

View File

@ -142,7 +142,7 @@
<adapter name="ClusterService" class="com.cloud.cluster.ClusterServiceServletAdapter" /> <adapter name="ClusterService" class="com.cloud.cluster.ClusterServiceServletAdapter" />
</adapters> </adapters>
<adapters key="com.cloud.resource.Discoverer"> <adapters key="com.cloud.resource.Discoverer">
<adapter name="XenServer" class="com.cloud.resource.xen.XenServerDiscoverer" /> <adapter name="XenServer" class="com.cloud.resource.xenserver.XenServerDiscoverer" />
<adapter name="SecondaryStorage" <adapter name="SecondaryStorage"
class="com.cloud.storage.secondary.SecondaryStorageDiscoverer" /> class="com.cloud.storage.secondary.SecondaryStorageDiscoverer" />
<adapter name="DummyHostServer" class="com.cloud.resource.DummyHostDiscoverer" /> <adapter name="DummyHostServer" class="com.cloud.resource.DummyHostDiscoverer" />

View File

@ -2091,7 +2091,7 @@ CREATE TABLE `cloud`.`physical_network_traffic_types` (
`uuid` varchar(40), `uuid` varchar(40),
`physical_network_id` bigint unsigned NOT NULL COMMENT 'id of the physical network', `physical_network_id` bigint unsigned NOT NULL COMMENT 'id of the physical network',
`traffic_type` varchar(32) NOT NULL COMMENT 'type of traffic going through this network', `traffic_type` varchar(32) NOT NULL COMMENT 'type of traffic going through this network',
`xen_network_label` varchar(255) COMMENT 'The network name label of the physical device dedicated to this traffic on a XenServer host', `xenserver_network_label` varchar(255) COMMENT 'The network name label of the physical device dedicated to this traffic on a XenServer host',
`kvm_network_label` varchar(255) DEFAULT 'cloudbr0' COMMENT 'The network name label of the physical device dedicated to this traffic on a KVM host', `kvm_network_label` varchar(255) DEFAULT 'cloudbr0' COMMENT 'The network name label of the physical device dedicated to this traffic on a KVM host',
`vmware_network_label` varchar(255) DEFAULT 'vSwitch0' COMMENT 'The network name label of the physical device dedicated to this traffic on a VMware host', `vmware_network_label` varchar(255) DEFAULT 'vSwitch0' COMMENT 'The network name label of the physical device dedicated to this traffic on a VMware host',
`simulator_network_label` varchar(255) COMMENT 'The name labels needed for identifying the simulator', `simulator_network_label` varchar(255) COMMENT 'The name labels needed for identifying the simulator',

View File

@ -19,4 +19,15 @@
-- Schema cleanup from 4.4.0 to 4.5.0 -- Schema cleanup from 4.4.0 to 4.5.0
-- --
UPDATE `cloud`.`configuration`
SET name = 'router.template.xenserver'
Where name = 'router.template.xen';
UPDATE `cloud`.`configuration`
SET name = 'xenserver.nics.max',
description = 'Maximum allowed nics for Vms created on XenServer'
Where name = 'xen.nics.max';
UPDATE `cloud`.`configuration`
SET value = 'XenServer'
Where value = 'Xen';

View File

@ -223,3 +223,6 @@ CREATE VIEW `cloud`.`volume_view` AS
`cloud`.`async_job` ON async_job.instance_id = volumes.id `cloud`.`async_job` ON async_job.instance_id = volumes.id
and async_job.instance_type = 'Volume' and async_job.instance_type = 'Volume'
and async_job.job_status = 0; and async_job.job_status = 0;
/* As part of the separation of Xen and XenServer, update the column for the network labels */
ALTER TABLE `cloud`.`physical_network_traffic_types` CHANGE `xen_network_label` `xenserver_network_label` varchar(255) COMMENT 'The network name label of the physical device dedicated to this traffic on a XenServer host'

View File

@ -23,6 +23,6 @@ INSERT INTO `cloud`.`domain` (id, uuid, name, parent, path, owner) VALUES (1, UU
/* Configuration Table */ /* Configuration Table */
INSERT INTO `cloud`.`configuration` (category, instance, component, name, value, description) VALUES ('Hidden', 'DEFAULT', 'none', 'init', null, null); INSERT INTO `cloud`.`configuration` (category, instance, component, name, value, description) VALUES ('Hidden', 'DEFAULT', 'none', 'init', null, null);
-- INSERT INTO `cloud`.`configuration` (category, instance, component, name, value, description) VALUES ('Advanced', 'DEFAULT', 'AgentManager', 'xen.public.network.device', 'public-network', "[OPTIONAL]The name of the Xen network containing the physical network interface that is connected to the public network "); -- INSERT INTO `cloud`.`configuration` (category, instance, component, name, value, description) VALUES ('Advanced', 'DEFAULT', 'AgentManager', 'xenserver.public.network.device', 'public-network', "[OPTIONAL]The name of the XenServer network containing the physical network interface that is connected to the public network ");

View File

@ -42,7 +42,7 @@ Note, gem may require gcc-4.2, make sure link exists:
# How to build SystemVMs automatically # How to build SystemVMs automatically
Just run build.sh, it will export archived appliances for KVM, Xen, Just run build.sh, it will export archived appliances for KVM, XenServer,
VMWare and HyperV in `dist`: VMWare and HyperV in `dist`:
sh build.sh [systemvmtemplate|systemvmtemplate64] sh build.sh [systemvmtemplate|systemvmtemplate64]

View File

@ -73,7 +73,7 @@ vboxmanage modifyhd $hdd_uuid --compact
rm -fr dist *.ova *.vhd *.vdi *.qcow* *.bz2 *.vmdk *.ovf rm -fr dist *.ova *.vhd *.vdi *.qcow* *.bz2 *.vmdk *.ovf
mkdir dist mkdir dist
# Export for Xen # Export for XenServer
which faketime >/dev/null 2>&1 && which vhd-util >/dev/null 2>&1 which faketime >/dev/null 2>&1 && which vhd-util >/dev/null 2>&1
if [ $? == 0 ]; then if [ $? == 0 ]; then
set -e set -e
@ -82,9 +82,9 @@ if [ $? == 0 ]; then
faketime '2010-01-01' vhd-util convert -s 1 -t 2 -i stagefixed.vhd -o $appliance-$branch-xen.vhd faketime '2010-01-01' vhd-util convert -s 1 -t 2 -i stagefixed.vhd -o $appliance-$branch-xen.vhd
rm *.bak rm *.bak
bzip2 $appliance-$branch-xen.vhd bzip2 $appliance-$branch-xen.vhd
echo "$appliance exported for Xen: dist/$appliance-$branch-xen.vhd.bz2" echo "$appliance exported for XenServer: dist/$appliance-$branch-xen.vhd.bz2"
else else
echo "** Skipping $appliance export for Xen: faketime or vhd-util command is missing. **" echo "** Skipping $appliance export for XenServer: faketime or vhd-util command is missing. **"
echo "** faketime source code is available from https://github.com/wolfcw/libfaketime **" echo "** faketime source code is available from https://github.com/wolfcw/libfaketime **"
fi fi

View File

@ -32,11 +32,11 @@
"name": "eth0", "name": "eth0",
"traffictypes": [ "traffictypes": [
{ {
"xen": "Pool-wide network associated with eth0", "xenserver": "Pool-wide network associated with eth0",
"typ": "Management" "typ": "Management"
}, },
{ {
"xen": "Pool-wide network associated with eth0", "xenserver": "Pool-wide network associated with eth0",
"typ": "Guest" "typ": "Guest"
} }
], ],
@ -56,7 +56,7 @@
"name": "eth1", "name": "eth1",
"traffictypes": [ "traffictypes": [
{ {
"xen": "Pool-wide network associated with eth1", "xenserver": "Pool-wide network associated with eth1",
"typ": "Public" "typ": "Public"
} }
], ],

View File

@ -32,11 +32,11 @@
"name": "eth0", "name": "eth0",
"traffictypes": [ "traffictypes": [
{ {
"xen": "Pool-wide network associated with eth0", "xenserver": "Pool-wide network associated with eth0",
"typ": "Management" "typ": "Management"
}, },
{ {
"xen": "Pool-wide network associated with eth0", "xenserver": "Pool-wide network associated with eth0",
"typ": "Guest" "typ": "Guest"
} }
], ],
@ -56,7 +56,7 @@
"name": "eth1", "name": "eth1",
"traffictypes": [ "traffictypes": [
{ {
"xen": "Pool-wide network associated with eth1", "xenserver": "Pool-wide network associated with eth1",
"typ": "Public" "typ": "Public"
} }
], ],

View File

@ -102,7 +102,7 @@ def cobblerHomeResolve(ip_address, param="gateway"):
def configureManagementServer(mgmt_host): def configureManagementServer(mgmt_host):
""" """
We currently configure all mgmt servers on a single xen HV. In the future We currently configure all mgmt servers on a single xenserver HV. In the future
replace this by launching instances via the API on a IaaS cloud using replace this by launching instances via the API on a IaaS cloud using
desired template desired template
""" """
@ -123,15 +123,15 @@ def configureManagementServer(mgmt_host):
bash("puppet cert clean %s.%s"%(mgmt_host, DOMAIN)) bash("puppet cert clean %s.%s"%(mgmt_host, DOMAIN))
#Start VM on xenserver #Start VM on xenserver
xenssh = \ xenserverssh = \
sshClient.SshClient(macinfo["infraxen"]["address"], sshClient.SshClient(macinfo["infraxenserver"]["address"],
22, "root", 22, "root",
macinfo["infraxen"]["password"]) macinfo["infraxenserver"]["password"])
logging.debug("bash vm-uninstall.sh -n %s"%(mgmt_host)) logging.debug("bash vm-uninstall.sh -n %s"%(mgmt_host))
xenssh.execute("xe vm-uninstall force=true vm=%s"%mgmt_host) xenserverssh.execute("xe vm-uninstall force=true vm=%s"%mgmt_host)
logging.debug("bash vm-start.sh -n %s -m %s"%(mgmt_host, mgmt_vm["ethernet"])) logging.debug("bash vm-start.sh -n %s -m %s"%(mgmt_host, mgmt_vm["ethernet"]))
out = xenssh.execute("bash vm-start.sh -n %s -m %s"%(mgmt_host, out = xenserverssh.execute("bash vm-start.sh -n %s -m %s"%(mgmt_host,
mgmt_vm["ethernet"])) mgmt_vm["ethernet"]))
logging.info("started mgmt server with uuid: %s. Waiting for services .."%out); logging.info("started mgmt server with uuid: %s. Waiting for services .."%out);
@ -179,7 +179,7 @@ def seedSecondaryStorage(cscfg, hypervisor):
bash("echo '/bin/bash /root/redeploy.sh -s %s -h %s' >> /etc/puppet/modules/cloudstack/files/secseeder.sh"%(spath, hypervisor)) bash("echo '/bin/bash /root/redeploy.sh -s %s -h %s' >> /etc/puppet/modules/cloudstack/files/secseeder.sh"%(spath, hypervisor))
bash("chmod +x /etc/puppet/modules/cloudstack/files/secseeder.sh") bash("chmod +x /etc/puppet/modules/cloudstack/files/secseeder.sh")
def refreshHosts(cscfg, hypervisor="xen", profile="xen602"): def refreshHosts(cscfg, hypervisor="xenserver", profile="xenserver602"):
""" """
Removes cobbler system from previous run. Removes cobbler system from previous run.
Creates a new system for current run. Creates a new system for current run.
@ -354,7 +354,7 @@ if __name__ == '__main__':
dest="distro", help="management server distro") dest="distro", help="management server distro")
parser.add_argument("-v", "--hypervisor", action="store", parser.add_argument("-v", "--hypervisor", action="store",
dest="hypervisor", help="hypervisor type") dest="hypervisor", help="hypervisor type")
parser.add_argument("-p", "--profile", action="store", default="xen602", parser.add_argument("-p", "--profile", action="store", default="xenserver602",
dest="profile", help="cobbler profile for hypervisor") dest="profile", help="cobbler profile for hypervisor")
parser.add_argument("-e","--environment", help="environment properties file", parser.add_argument("-e","--environment", help="environment properties file",
dest="system", action="store") dest="system", action="store")

View File

@ -48,8 +48,8 @@ pip -q install lib/python2.7/site-packages/marvin/
#Deploy the configuration - yes/no #Deploy the configuration - yes/no
if [[ $DEPLOY == "yes" ]]; then if [[ $DEPLOY == "yes" ]]; then
cd cloud-autodeploy cd cloud-autodeploy
if [[ $hypervisor == 'xen' ]];then if [[ $hypervisor == 'xenserver' ]];then
profile='xen602' profile='xenserver602'
else else
profile='rhel63-kvm' profile='rhel63-kvm'
fi fi

View File

@ -1233,7 +1233,7 @@ dictionary = {
'label.welcome.cloud.console': '<fmt:message key="label.welcome.cloud.console" />', 'label.welcome.cloud.console': '<fmt:message key="label.welcome.cloud.console" />',
'label.welcome': '<fmt:message key="label.welcome" />', 'label.welcome': '<fmt:message key="label.welcome" />',
'label.what.is.cloudstack': '<fmt:message key="label.what.is.cloudstack" />', 'label.what.is.cloudstack': '<fmt:message key="label.what.is.cloudstack" />',
'label.xen.traffic.label': '<fmt:message key="label.xen.traffic.label" />', 'label.xenserver.traffic.label': '<fmt:message key="label.xenserver.traffic.label" />',
'label.yes': '<fmt:message key="label.yes" />', 'label.yes': '<fmt:message key="label.yes" />',
'label.zone.details': '<fmt:message key="label.zone.details" />', 'label.zone.details': '<fmt:message key="label.zone.details" />',
'label.zone': '<fmt:message key="label.zone" />', 'label.zone': '<fmt:message key="label.zone" />',

View File

@ -335,7 +335,7 @@ cloudStack.docs = {
externalLink: '' externalLink: ''
}, },
helpDiskOfferingHypervisorSnapshotReserve: { helpDiskOfferingHypervisorSnapshotReserve: {
desc: 'Hypervisor snapshot reserve space as a percent of a volume (for managed storage using Xen or VMware) (Ex. The value 25 means 25%.)).', desc: 'Hypervisor snapshot reserve space as a percent of a volume (for managed storage using XenServer or VMware) (Ex. The value 25 means 25%.)).',
}, },
helpDiskOfferingCacheMode: { helpDiskOfferingCacheMode: {
desc: 'The write caching mode to use for disks created with this disk offering. This can improve write performance.', desc: 'The write caching mode to use for disks created with this disk offering. This can improve write performance.',

View File

@ -127,8 +127,8 @@
} }
}); });
if (trafficType.xennetworklabel == null || trafficType.xennetworklabel == 0) if (trafficType.xenservernetworklabel == null || trafficType.xenservernetworklabel == 0)
trafficType.xennetworklabel = dictionary[ 'label.network.label.display.for.blank.value']; trafficType.xenservernetworklabel = dictionary[ 'label.network.label.display.for.blank.value'];
if (trafficType.kvmnetworklabel == null || trafficType.kvmnetworklabel == 0) if (trafficType.kvmnetworklabel == null || trafficType.kvmnetworklabel == 0)
trafficType.kvmnetworklabel = dictionary[ 'label.network.label.display.for.blank.value']; trafficType.kvmnetworklabel = dictionary[ 'label.network.label.display.for.blank.value'];
if (trafficType.vmwarenetworklabel == null || trafficType.vmwarenetworklabel == 0) if (trafficType.vmwarenetworklabel == null || trafficType.vmwarenetworklabel == 0)
@ -145,8 +145,8 @@
var updateTrafficLabels = function (trafficType, labels, complete) { var updateTrafficLabels = function (trafficType, labels, complete) {
var array1 =[]; var array1 =[];
if (labels.xennetworklabel != dictionary[ 'label.network.label.display.for.blank.value']) if (labels.xenservernetworklabel != dictionary[ 'label.network.label.display.for.blank.value'])
array1.push("&xennetworklabel=" + labels.xennetworklabel); array1.push("&xenservernetworklabel=" + labels.xenservernetworklabel);
if (labels.kvmnetworklabel != dictionary[ 'label.network.label.display.for.blank.value']) if (labels.kvmnetworklabel != dictionary[ 'label.network.label.display.for.blank.value'])
array1.push("&kvmnetworklabel=" + labels.kvmnetworklabel); array1.push("&kvmnetworklabel=" + labels.kvmnetworklabel);
if (labels.vmwarenetworklabel != dictionary[ 'label.network.label.display.for.blank.value']) if (labels.vmwarenetworklabel != dictionary[ 'label.network.label.display.for.blank.value'])
@ -581,8 +581,8 @@
} }
}, },
{ {
xennetworklabel: { xenservernetworklabel: {
label: 'label.xen.traffic.label', label: 'label.xenserver.traffic.label',
isEditable: true isEditable: true
}, },
kvmnetworklabel: { kvmnetworklabel: {
@ -619,7 +619,7 @@
selectedPublicNetworkObj = items[0]; selectedPublicNetworkObj = items[0];
// Include traffic labels // Include traffic labels
selectedPublicNetworkObj.xennetworklabel = trafficType.xennetworklabel; selectedPublicNetworkObj.xenservernetworklabel = trafficType.xenservernetworklabel;
selectedPublicNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel; selectedPublicNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel;
selectedPublicNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel; selectedPublicNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel;
selectedPublicNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel; selectedPublicNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel;
@ -889,8 +889,8 @@
} }
}, },
{ {
xennetworklabel: { xenservernetworklabel: {
label: 'label.xen.traffic.label', label: 'label.xenserver.traffic.label',
isEditable: true isEditable: true
}, },
kvmnetworklabel: { kvmnetworklabel: {
@ -925,7 +925,7 @@
var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Storage'); var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Storage');
selectedPublicNetworkObj = items[0]; selectedPublicNetworkObj = items[0];
selectedPublicNetworkObj.xennetworklabel = trafficType.xennetworklabel; selectedPublicNetworkObj.xenservernetworklabel = trafficType.xenservernetworklabel;
selectedPublicNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel; selectedPublicNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel;
selectedPublicNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel; selectedPublicNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel;
selectedPublicNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel; selectedPublicNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel;
@ -1101,8 +1101,8 @@
} }
}, },
{ {
xennetworklabel: { xenservernetworklabel: {
label: 'label.xen.traffic.label', label: 'label.xenserver.traffic.label',
isEditable: true isEditable: true
}, },
kvmnetworklabel: { kvmnetworklabel: {
@ -1135,7 +1135,7 @@
var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Management'); var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Management');
selectedManagementNetworkObj.xennetworklabel = trafficType.xennetworklabel; selectedManagementNetworkObj.xenservernetworklabel = trafficType.xenservernetworklabel;
selectedManagementNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel; selectedManagementNetworkObj.kvmnetworklabel = trafficType.kvmnetworklabel;
selectedManagementNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel; selectedManagementNetworkObj.vmwarenetworklabel = trafficType.vmwarenetworklabel;
selectedManagementNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel; selectedManagementNetworkObj.ovmnetworklabel = trafficType.ovmnetworklabel;
@ -1290,8 +1290,8 @@
}, },
{ {
//updateTrafficType API //updateTrafficType API
xennetworklabel: { xenservernetworklabel: {
label: 'label.xen.traffic.label', label: 'label.xenserver.traffic.label',
isEditable: true isEditable: true
}, },
kvmnetworklabel: { kvmnetworklabel: {
@ -1343,10 +1343,10 @@
}*/ }*/
//traffic type //traffic type
var xentrafficlabel, kvmtrafficlabel, vmwaretrafficlabel; var xenservertrafficlabel, kvmtrafficlabel, vmwaretrafficlabel;
var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Guest'); var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Guest');
//refresh Guest traffic type //refresh Guest traffic type
selectedPhysicalNetworkObj[ "xennetworklabel"] = trafficType.xennetworklabel; selectedPhysicalNetworkObj[ "xenservernetworklabel"] = trafficType.xenservernetworklabel;
selectedPhysicalNetworkObj[ "kvmnetworklabel"] = trafficType.kvmnetworklabel; selectedPhysicalNetworkObj[ "kvmnetworklabel"] = trafficType.kvmnetworklabel;
selectedPhysicalNetworkObj[ "vmwarenetworklabel"] = trafficType.vmwarenetworklabel; selectedPhysicalNetworkObj[ "vmwarenetworklabel"] = trafficType.vmwarenetworklabel;
selectedPhysicalNetworkObj[ "ovmnetworklabel"] = trafficType.ovmnetworklabel; selectedPhysicalNetworkObj[ "ovmnetworklabel"] = trafficType.ovmnetworklabel;

View File

@ -242,7 +242,7 @@
$.ajax({ $.ajax({
url: createURL('listConfigurations'), url: createURL('listConfigurations'),
data: { data: {
name: 'xen.pvdriver.version' name: 'xenserver.pvdriver.version'
}, },
async: false, async: false,
success: function (json) { success: function (json) {