diff --git a/build/replace.properties b/build/replace.properties index d2dc58737fa..dd7e5336a75 100644 --- a/build/replace.properties +++ b/build/replace.properties @@ -26,4 +26,4 @@ AGENTLOG=logs/agent.log MSMNTDIR=/mnt COMPONENTS-SPEC=components.xml REMOTEHOST=localhost -COMMONLIBDIR=client/target/cloud-client-ui-4.5.0-SNAPSHOT/WEB-INF/lib/ +COMMONLIBDIR=client/target/cloud-client-ui-4.5.1-SNAPSHOT/WEB-INF/lib/ diff --git a/client/WEB-INF/classes/resources/messages_fr_FR.properties b/client/WEB-INF/classes/resources/messages_fr_FR.properties index 2c0442a234f..4ff9101fcfa 100644 --- a/client/WEB-INF/classes/resources/messages_fr_FR.properties +++ b/client/WEB-INF/classes/resources/messages_fr_FR.properties @@ -2092,6 +2092,7 @@ state.Destroyed=Supprim\u00e9e state.detached=D\u00e9tach\u00e9 state.Disabled=D\u00e9sactiv\u00e9 state.Enabled=Actifs +state.enabled=Activ\u00e9 state.Error=Erreur state.Expunging=Purge en cours state.Migrating=Migration en cours diff --git a/debian/rules b/debian/rules index b27b3c4821a..9768e5a34b1 100755 --- a/debian/rules +++ b/debian/rules @@ -3,7 +3,7 @@ DEBVERS := $(shell dpkg-parsechangelog | sed -n -e 's/^Version: //p') VERSION := $(shell echo '$(DEBVERS)' | sed -e 's/^[[:digit:]]*://' -e 's/[~-].*//') -MVNADD := $(shell if echo '$(DEBVERS)' | grep -q snapshot; then echo -SNAPSHOT; fi ) +MVNADD := $(shell if echo '$(DEBVERS)' | grep -q snapshot; then echo ; fi ) PACKAGE = $(shell dh_listpackages|head -n 1|cut -d '-' -f 1) SYSCONFDIR = "/etc" DESTDIR = "debian/tmp" diff --git a/engine/orchestration/src/com/cloud/agent/manager/DirectAgentAttache.java b/engine/orchestration/src/com/cloud/agent/manager/DirectAgentAttache.java index f39bf1d2ebd..52dfa9fdafd 100644 --- a/engine/orchestration/src/com/cloud/agent/manager/DirectAgentAttache.java +++ b/engine/orchestration/src/com/cloud/agent/manager/DirectAgentAttache.java @@ -164,11 +164,9 @@ public class DirectAgentAttache extends AgentAttache { ServerResource resource = _resource; if (resource != null) { - PingCommand cmd = null; + PingCommand cmd = resource.getCurrentStatus(_id); int retried = 0; - cmd = resource.getCurrentStatus(_id); - while (cmd == null && retried++ < _HostPingRetryCount.value()) - { + while (cmd == null && ++retried <= _HostPingRetryCount.value()) { Thread.sleep(1000*_HostPingRetryTimer.value()); cmd = resource.getCurrentStatus(_id); } diff --git a/engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java b/engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java index a2fd656d4b2..96771d1b7aa 100644 --- a/engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java +++ b/engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java @@ -83,6 +83,7 @@ import com.cloud.host.Host; import com.cloud.host.dao.HostDao; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.storage.DataStoreRole; +import com.cloud.storage.RegisterVolumePayload; import com.cloud.storage.ScopeType; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.storage.StoragePool; diff --git a/framework/jobs/src/org/apache/cloudstack/framework/jobs/impl/AsyncJobManagerImpl.java b/framework/jobs/src/org/apache/cloudstack/framework/jobs/impl/AsyncJobManagerImpl.java index 10a10b2b8c5..1ea3c781016 100644 --- a/framework/jobs/src/org/apache/cloudstack/framework/jobs/impl/AsyncJobManagerImpl.java +++ b/framework/jobs/src/org/apache/cloudstack/framework/jobs/impl/AsyncJobManagerImpl.java @@ -698,7 +698,7 @@ public class AsyncJobManagerImpl extends ManagerBase implements AsyncJobManager, @Override public Object unmarshallResultObject(AsyncJob job) { - if(job.getResult() != null) + if(job != null && job.getResult() != null) return JobSerializerHelper.fromObjectSerializedString(job.getResult()); return null; } diff --git a/packaging/centos63/cloud.spec b/packaging/centos63/cloud.spec index b0ae1c7d955..6e3b134058a 100644 --- a/packaging/centos63/cloud.spec +++ b/packaging/centos63/cloud.spec @@ -124,6 +124,7 @@ Requires: ipset Requires: jsvc Requires: jakarta-commons-daemon Requires: jakarta-commons-daemon-jsvc +Requires: net-tools Requires: perl Requires: libvirt-python Requires: qemu-img @@ -269,6 +270,7 @@ install -D client/target/utilities/bin/cloud-setup-management ${RPM_BUILD_ROOT}% install -D client/target/utilities/bin/cloud-setup-baremetal ${RPM_BUILD_ROOT}%{_bindir}/%{name}-setup-baremetal install -D client/target/utilities/bin/cloud-sysvmadm ${RPM_BUILD_ROOT}%{_bindir}/%{name}-sysvmadm install -D client/target/utilities/bin/cloud-update-xenserver-licenses ${RPM_BUILD_ROOT}%{_bindir}/%{name}-update-xenserver-licenses +%{_cloudstackmanagementconf} cp -r client/target/utilities/scripts/db/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/setup cp -r client/target/cloud-client-ui-%{_maventag}/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-management/webapps/client @@ -576,6 +578,7 @@ fi %{_defaultdocdir}/%{name}-management-%{version}/LICENSE %{_defaultdocdir}/%{name}-management-%{version}/NOTICE %attr(0644,cloud,cloud) %{_localstatedir}/log/%{name}/management/catalina.out +%{_cloudstackmanagementconfattr} %files agent %attr(0755,root,root) %{_bindir}/%{name}-setup-agent diff --git a/packaging/centos63/rhel7/cloudstack-management.conf b/packaging/centos63/rhel7/cloudstack-management.conf new file mode 100644 index 00000000000..881af1a0dfc --- /dev/null +++ b/packaging/centos63/rhel7/cloudstack-management.conf @@ -0,0 +1,18 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to 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 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 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 language governing permissions and limitations +# under the License. + +f /var/run/cloudstack-management.pid 0644 cloud cloud - \ No newline at end of file diff --git a/plugins/hypervisors/baremetal/src/com/cloud/baremetal/manager/BaremetalManagerImpl.java b/plugins/hypervisors/baremetal/src/com/cloud/baremetal/manager/BaremetalManagerImpl.java index f826ae91fde..85f79e33118 100644 --- a/plugins/hypervisors/baremetal/src/com/cloud/baremetal/manager/BaremetalManagerImpl.java +++ b/plugins/hypervisors/baremetal/src/com/cloud/baremetal/manager/BaremetalManagerImpl.java @@ -42,9 +42,19 @@ import com.cloud.host.dao.HostDao; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.utils.component.ManagerBase; import com.cloud.utils.fsm.StateListener; +import com.cloud.utils.fsm.StateMachine2; import com.cloud.vm.VirtualMachine; import com.cloud.vm.VirtualMachine.Event; import com.cloud.vm.VirtualMachine.State; +import org.apache.cloudstack.api.AddBaremetalHostCmd; +import org.apache.log4j.Logger; + +import javax.ejb.Local; +import javax.inject.Inject; +import javax.naming.ConfigurationException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; @Local(value = {BaremetalManager.class}) public class BaremetalManagerImpl extends ManagerBase implements BaremetalManager, StateListener { diff --git a/server/src/com/cloud/deploy/DeploymentPlanningManagerImpl.java b/server/src/com/cloud/deploy/DeploymentPlanningManagerImpl.java index 44a8ac4f670..9d40b6fdc3d 100644 --- a/server/src/com/cloud/deploy/DeploymentPlanningManagerImpl.java +++ b/server/src/com/cloud/deploy/DeploymentPlanningManagerImpl.java @@ -31,6 +31,7 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; +import com.cloud.utils.fsm.StateMachine2; import org.apache.log4j.Logger; import org.apache.cloudstack.affinity.AffinityGroupProcessor; diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java index 38ca3903ac5..5bee1092f8a 100644 --- a/server/src/com/cloud/vm/UserVmManagerImpl.java +++ b/server/src/com/cloud/vm/UserVmManagerImpl.java @@ -35,6 +35,8 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao; +import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreVO; import org.apache.commons.codec.binary.Base64; import org.apache.log4j.Logger; import org.apache.cloudstack.acl.ControlledEntity.ACLType; diff --git a/test/integration/component/test_ss_limits.py b/test/integration/component/test_ss_limits.py index ec28ea2baad..0c8aae301fa 100644 --- a/test/integration/component/test_ss_limits.py +++ b/test/integration/component/test_ss_limits.py @@ -127,7 +127,7 @@ class TestSecondaryStorageLimits(cloudstackTestCase): except Exception as e: return [FAIL, e] return [PASS, None] - + @data(ROOT_DOMAIN_ADMIN, CHILD_DOMAIN_ADMIN) @attr(tags = ["advanced"], required_hardware="true") def test_01_register_template(self, value): diff --git a/test/integration/component/test_usage.py b/test/integration/component/test_usage.py index 5eb4c742fca..71b9437dc1e 100644 --- a/test/integration/component/test_usage.py +++ b/test/integration/component/test_usage.py @@ -41,6 +41,7 @@ from marvin.lib.common import (get_zone, find_storage_pool_type) + class Services: """Test Snapshots Services diff --git a/test/integration/component/test_vpc_network.py b/test/integration/component/test_vpc_network.py index cbc5eeabdba..1dbccf8fc45 100644 --- a/test/integration/component/test_vpc_network.py +++ b/test/integration/component/test_vpc_network.py @@ -543,7 +543,7 @@ class TestVPCNetwork(cloudstackTestCase): def test_04_create_multiple_networks_with_lb(self, value): """ Test create multiple networks with LB service (Should fail) """ - + self.skipTest('Skipping test due to CLOUDSTACK-8437') # Validate the following # 1. Create a VPC using Default Offering # 2. Create a network offering with guest type=Isolated that has LB diff --git a/test/integration/smoke/test_volumes.py b/test/integration/smoke/test_volumes.py index 1b7ef3305a1..2ac592606e0 100644 --- a/test/integration/smoke/test_volumes.py +++ b/test/integration/smoke/test_volumes.py @@ -17,7 +17,7 @@ """ BVT tests for Volumes """ #Import Local Modules -from marvin.cloudstackTestCase import cloudstackTestCase +from marvin.cloudstackTestCase import cloudstackTestCase, unittest #from marvin.cloudstackException import * from marvin.cloudstackAPI import (deleteVolume, extractVolume, @@ -332,7 +332,16 @@ class TestVolumes(cloudstackTestCase): serviceofferingid=cls.service_offering.id, mode=cls.services["mode"] ) + pools = StoragePool.list(cls.apiclient) + # cls.assertEqual( + # validateList(pools)[0], + # PASS, + # "storage pool list validation failed") + + + if cls.hypervisor.lower() == 'lxc' and cls.storage_pools.type.lower() != 'rbd': + raise unittest.SkipTest("Snapshots not supported on Hyper-V or LXC") cls.volume = Volume.create( cls.apiclient, cls.services, diff --git a/tools/build/build_asf.sh b/tools/build/build_asf.sh old mode 100644 new mode 100755 index aec5b2ec848..45b07aa158d --- a/tools/build/build_asf.sh +++ b/tools/build/build_asf.sh @@ -108,7 +108,7 @@ echo "cloudstack ($version) unstable; urgency=low" >>$tmpfilenm echo >>$tmpfilenm echo " * Update the version to $version" >>$tmpfilenm echo >>$tmpfilenm -echo " -- the Apache CloudStack project `date -j '+%a, %d %b %Y %T %z'`" >>$tmpfilenm +echo " -- the Apache CloudStack project `date '+%a, %d %b %Y %T %z'`" >>$tmpfilenm echo >>$tmpfilenm cat debian/changelog >>$tmpfilenm diff --git a/tools/marvin/marvin/deployAndRun.py b/tools/marvin/marvin/deployAndRun.py index 5955bc98fde..b4082089243 100644 --- a/tools/marvin/marvin/deployAndRun.py +++ b/tools/marvin/marvin/deployAndRun.py @@ -163,7 +163,7 @@ class ShellColor(object): END = '\033[0m' ITALICS = '\x1B[3m' -#VERSION = "4.5.0-SNAPSHOT" +#VERSION = "4.5.1-SNAPSHOT" class MarvinCli(cmd.Cmd, object): diff --git a/ui/dictionary2.jsp b/ui/dictionary2.jsp index 7353a9dc290..e588528b9d2 100644 --- a/ui/dictionary2.jsp +++ b/ui/dictionary2.jsp @@ -713,6 +713,7 @@ under the License. 'label.start.lb.vm': '', 'label.stop.lb.vm': '', 'label.migrate.lb.vm': '', +'label.migrate.volume': '', 'label.vpc.virtual.router': '', 'label.ovs': '', 'label.gslb.service': '',