Commit Graph

28834 Commits

Author SHA1 Message Date
Daan Hoogland 998b1ba629 Merge pull request #1161 from ustcweizhou/resize-volume-issues
CLOUDSTACK-9101: fix some issues in resize volume(1) fix issue: volume size is not updated even if the operation succeed
(2) Add ui support for root volume resize
(3) resize on qcow2 type ROOT volume of stopped vm does not really work
see https://issues.apache.org/jira/browse/CLOUDSTACK-9101

* pr/1161:
  CLOUDSTACK-9101: resize root volume of stopped vm on KVM
  CLOUDSTACK-9101: add UI support for root volume resize
  CLOUDSTACK-9101: update volume size after resizevolume

Signed-off-by: Daan Hoogland <daan@onecht.net>
2015-12-06 19:44:16 +01:00
Remi Bergsma 4f6ff6ca08 Merge pull request #1163 from remibergsma/arping-to-gw
Send arping to the gateway instead of our own addressWe need to send an Unsolicited ARP to the gateway, instead of our own address. We now encounter problems when people deploy/destroy/deploy and get the same public ip.

Packets arrive, but with incorrect / cached mac and are ignored by the routervm kernel.
Run arping manually to update the arp-cache on the gateway and things start to work.

Then we discovered the `arping` is actually done, but sent to its own address. Therefore the gateway doesn't pick it up. We only saw this happening when rapid deploy tools are used, like Terraform that do deploy/destroy/deploy and might get the same ip but on a new router having a new mac.

```
2015-12-03 18:07:25,589  CsHelper.py execute:160 Executing: arping -c 1 -I eth1 -A -U -s 192.168.23.8 192.168.23.1
```

The integration tests seem happy, although the full run is still ongoing:

```
=== TestName: test_01_create_redundant_VPC_2tiers_4VMs_4IPs_4PF_ACL | Status : SUCCESS ===
```

Thanks @sspans for helping trouble shoot this. Ping @wilderrodrigues can you review please?

* pr/1163:
  CLOUDSTACK-9097 Make public ip work immediately

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-12-04 10:44:48 +01:00
Remi Bergsma beeb1047df Merge pull request #1169 from shapeblue/4.6-debian-noredist-fix
debian: allow rules to pick ACS_BUILD_OPTS from envOnly now debian builds can be noredist etc.

Old PR: https://github.com/apache/cloudstack/pull/1149

cc @remibergsma

* pr/1169:
  debian: allow rules to pick ACS_BUILD_OPTS from env

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-12-04 10:17:34 +01:00
Remi Bergsma 9a21873c4a Merge pull request #1134 from pdube/CLOUDSTACK-6276
CLOUDSTACK-6276 Fixing affinity groups for projectsWith some contributions from @resmo and @ustcweizhou.
This closes https://github.com/apache/cloudstack/pull/508

To test manually (need at least 2 hosts):
Create a project
Create an affinity group in that project
Deploy a vm with that affinity group
Deploy a second vm with that affinity group
They should be on different hosts

Ran old and new tests for affinity groups on the simulator

Test create affinity group as admin in project ... === TestName: test_01_admin_create_aff_grp_for_project | Status : SUCCESS ===
ok
Test create affinity group as domain admin for projects ... === TestName: test_02_doadmin_create_aff_grp_for_project | Status : SUCCESS ===
ok
Test create affinity group as user for projects ... === TestName: test_03_user_create_aff_grp_for_project | Status : SUCCESS ===
ok
Test create affinity group that exists (same name) for projects ... === TestName: test_4_user_create_aff_grp_existing_name_for_project | Status : SUCCESS ===
ok
#Delete Affinity Group by id. ... === TestName: test_01_delete_aff_grp_by_id | Status : SUCCESS ===
ok
#Delete Affinity Group by id should fail for user not in project ... === TestName: test_02_delete_aff_grp_by_id_another_user | Status : SUCCESS ===
ok
test DeployVM in anti-affinity groups ... === TestName: test_01_deploy_vm_anti_affinity_group | Status : SUCCESS ===
ok
test DeployVM in anti-affinity groups with more vms than hosts. ... === TestName: test_02_deploy_vm_anti_affinity_group_fail_on_not_enough_hosts | Status : SUCCESS ===
ok
List affinity group for a vm for projects ... === TestName: test_01_list_aff_grps_for_vm | Status : SUCCESS ===
ok
List multiple affinity groups associated with a vm for projects ... === TestName: test_02_list_multiple_aff_grps_for_vm | Status : SUCCESS ===
ok
List affinity groups by id for projects ... === TestName: test_03_list_aff_grps_by_id | Status : SUCCESS ===
ok
List Affinity Groups by name for projects ... === TestName: test_04_list_aff_grps_by_name | Status : SUCCESS ===
ok
List Affinity Groups by non-existing id for projects ... === TestName: test_05_list_aff_grps_by_non_existing_id | Status : SUCCESS ===
ok
List Affinity Groups by non-existing name for projects ... === TestName: test_06_list_aff_grps_by_non_existing_name | Status : SUCCESS ===
ok
List affinity group should list all for a vms associated with that group for projects ... === TestName: test_07_list_all_vms_in_aff_grp | Status : SUCCESS ===
ok
Update the list of affinityGroups by using affinity groupids ... === TestName: test_01_update_aff_grp_by_ids | Status : SUCCESS ===
ok

----------------------------------------------------------------------
Ran 16 tests in 581.706s

OK

Deploy vm as Admin in Affinity Group belonging to regular user (should fail) ... === TestName: test_01_deploy_vm_another_user | Status : SUCCESS ===
ok
Create Affinity Group as admin for regular user ... === TestName: test_02_create_aff_grp_user | Status : SUCCESS ===
ok
List Affinity Groups as admin for all the users ... === TestName: test_03_list_aff_grp_all_users | Status : SUCCESS ===
ok
List Affinity Groups belonging to admin user ... === TestName: test_04_list_all_admin_aff_grp | Status : SUCCESS ===
ok
List Affinity Groups belonging to regular user passing account id and domain id ... === TestName: test_05_list_all_users_aff_grp | Status : SUCCESS ===
ok
List Affinity Groups belonging to regular user passing group id ... === TestName: test_06_list_all_users_aff_grp_by_id | Status : SUCCESS ===
ok
Delete Affinity Group belonging to regular user ... === TestName: test_07_delete_aff_grp_of_other_user | Status : SUCCESS ===
ok
Test create affinity group as admin ... === TestName: test_01_admin_create_aff_grp | Status : SUCCESS ===
ok
Test create affinity group as domain admin ... === TestName: test_02_doadmin_create_aff_grp | Status : SUCCESS ===
ok
Test create affinity group as user ... === TestName: test_03_user_create_aff_grp | Status : SUCCESS ===
ok
Test create affinity group that exists (same name) ... === TestName: test_04_user_create_aff_grp_existing_name | Status : SUCCESS ===
ok
Test create affinity group with existing name but within different account ... === TestName: test_05_create_aff_grp_same_name_diff_acc | Status : SUCCESS ===
ok
Test create affinity group of non-existing type ... === TestName: test_06_create_aff_grp_nonexisting_type | Status : SUCCESS ===
ok
Delete Affinity Group by name ... === TestName: test_01_delete_aff_grp_by_name | Status : SUCCESS ===
ok
Delete Affinity Group as admin for an account ... === TestName: test_02_delete_aff_grp_for_acc | Status : SUCCESS ===
ok
Delete Affinity Group which has vms in it ... === TestName: test_03_delete_aff_grp_with_vms | Status : SUCCESS ===
ok
Delete Affinity Group with id which does not belong to this user ... === TestName: test_05_delete_aff_grp_id | Status : SUCCESS ===
ok
Delete Affinity Group by name which does not belong to this user ... === TestName: test_06_delete_aff_grp_name | Status : SUCCESS ===
ok
Delete Affinity Group by id. ... === TestName: test_08_delete_aff_grp_by_id | Status : SUCCESS ===
ok
Root admin should be able to delete affinity group of other users ... === TestName: test_09_delete_aff_grp_root_admin | Status : SUCCESS ===
ok
Deploy VM without affinity group ... === TestName: test_01_deploy_vm_without_aff_grp | Status : SUCCESS ===
ok
Deploy VM by aff grp name ... === TestName: test_02_deploy_vm_by_aff_grp_name | Status : SUCCESS ===
ok
Deploy VM by aff grp id ... === TestName: test_03_deploy_vm_by_aff_grp_id | Status : SUCCESS ===
ok
test DeployVM in anti-affinity groups ... === TestName: test_04_deploy_vm_anti_affinity_group | Status : SUCCESS ===
ok
Deploy vms by affinity group id ... === TestName: test_05_deploy_vm_by_id | Status : SUCCESS ===
ok
Deploy vm in affinity group of another user by name ... === TestName: test_06_deploy_vm_aff_grp_of_other_user_by_name | Status : SUCCESS ===
ok
Deploy vm in affinity group of another user by id ... === TestName: test_07_deploy_vm_aff_grp_of_other_user_by_id | Status : SUCCESS ===
ok
Deploy vm in multiple affinity groups ... === TestName: test_08_deploy_vm_multiple_aff_grps | Status : SUCCESS ===
ok
Deploy multiple vms in multiple affinity groups ... === TestName: test_09_deploy_vm_multiple_aff_grps | Status : SUCCESS ===
ok
Deploy VM by aff grp name and id ... === TestName: test_10_deploy_vm_by_aff_grp_name_and_id | Status : SUCCESS ===
ok
List affinity group for a vm ... === TestName: test_01_list_aff_grps_for_vm | Status : SUCCESS ===
ok
List multiple affinity groups associated with a vm ... === TestName: test_02_list_multiple_aff_grps_for_vm | Status : SUCCESS ===
ok
List affinity groups by id ... === TestName: test_03_list_aff_grps_by_id | Status : SUCCESS ===
ok
List Affinity Groups by name ... === TestName: test_04_list_aff_grps_by_name | Status : SUCCESS ===
ok
List Affinity Groups by non-existing id ... === TestName: test_05_list_aff_grps_by_non_existing_id | Status : SUCCESS ===
ok
List Affinity Groups by non-existing name ... === TestName: test_06_list_aff_grps_by_non_existing_name | Status : SUCCESS ===
ok
List affinity group should list all for a vms associated with that group ... === TestName: test_07_list_all_vms_in_aff_grp | Status : SUCCESS ===
ok
Update the list of affinityGroups by using affinity groupids ... === TestName: test_01_update_aff_grp_by_ids | Status : SUCCESS ===
ok
Update the list of affinityGroups by using affinity groupnames ... === TestName: test_02_update_aff_grp_by_names | Status : SUCCESS ===
ok
Update the list of affinityGroups for vm which is not associated ... === TestName: test_03_update_aff_grp_for_vm_with_no_aff_grp | Status : SUCCESS ===
ok
Update the list of Affinity Groups to empty list ... SKIP: Skip - Failing - work in progress
Update the list of Affinity Groups on running vm ... === TestName: test_05_update_aff_grp_on_running_vm | Status : SUCCESS ===
ok

----------------------------------------------------------------------
Ran 42 tests in 976.432s

OK (SKIP=1)

* pr/1134:
  CLOUDSTACK-6276 Removing unused parameter in integration test for projects
  CLOUDSTACK-6276 Removing unused parameter in integration test
  CLOUDSTACK-6276 Fixing affinity groups for projects

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-12-03 20:10:16 +01:00
Remi Bergsma 519ce868af Merge pull request #1151 from ekholabs/fix/private_gw_rVPC-CLOUDSTACK-9075
[4.6] CLOUDSTACK-9075 - As a Developer I want the Private GW feature fixed on single VPCsThis PR fixes the issue we faced with Private Gateways on single VPC when using ACS 4.6.0 and onwards.

The root cause: during the VR refactor, the static routes configuration was left unimplemented.

This PR also improves the existing Replace ACL test and adds a new test, that cover the Private Gateway in a more complete way.

The new test does the following:

1. Create 2 VPCs
2. Create 2 Tiers - 1 per VPC
3. Deploy 2 VMs - 1 per Tier
4. Acquire 2 pub IPs - 1 per VPC
5. Create 2 PF rules - 1 per pub IP
6. Create 2 ACLs + rules - 1 per VPC
7. Assign new ACLs to Tiers
8. Create 2 Private GWs - 1 per VPC
9. Replace the Pvt GWs ACLs
10. Create 2 Static routes - 1 per Pvt GW
11. SSH into VM1 (VPC1) and from there ping VM2 (VPC2)

There is also a test for Private Gateways on Redundant VPCs. But I found out that the feature is broken in when used with rVPCs. It will be addressed in a separate Issue/PR.

I'm running the tests. Will post results as soon as they are ready.

* pr/1151:
  CLOUDSTACK-9075 - Uses the same vlan since it should have been already released
  CLOUDSTACK-9075 - Adds VPC static routes test
  CLOUDSTACK-9075 - Covers Private GW ACL with Redundant VPCs
  CLOUDSTACK-9075 - Add method to get list of Physical Networks per zone

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-12-03 19:56:09 +01:00
Remi Bergsma 90e01c95a2 CLOUDSTACK-9097 Make public ip work immediately
We need to send an Unsolicited ARP to the gateway, instead of our own address. We now encounter problems when people deploy/destroy/deploy and get the same public ip.
2015-12-03 19:30:06 +01:00
Wei Zhou 9221cb3e0d CLOUDSTACK-9101: resize root volume of stopped vm on KVM 2015-12-03 14:54:49 +01:00
Wei Zhou d6e21f7416 CLOUDSTACK-9101: add UI support for root volume resize 2015-12-03 14:54:47 +01:00
Wei Zhou 119b27b2c6 CLOUDSTACK-9101: update volume size after resizevolume 2015-12-03 14:54:45 +01:00
Remi Bergsma 5b7d935ab0 Merge pull request #1145 from ustcweizhou/storage-cleanup-delay-4.6
[4.6.1] CLOUDSTACK-9022: keep Destroyed volumes for sometimefor now, the Destroyed volumes will be expunged in Storage cleanup thread, no matter when they are destroyed.
In Expunging vm thread, we expunge the Destroyed vms which have been destroyed at least 'expunge.delay' seconds. We add the similar configuration for volumes.

same to #1029 , for 4.6

* pr/1145:
  CLOUDSTACK-9022: move storage.cleanup related global configurations to StorageManager
  CLOUDSTACK-9022: keep Destroyed volumes for sometime

This closes #1029

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-12-02 21:53:11 +01:00
Wilder Rodrigues 6d9a3d82f9 CLOUDSTACK-9075 - Uses the same vlan since it should have been already released
- After the first test is done, the clean up will delete the whole VPC, also releasing the VLAN that was in use.
2015-12-02 10:36:53 +01:00
Wilder Rodrigues a17fa48de1 CLOUDSTACK-9075 - Adds VPC static routes test
- Adds redundant VPC tests
   - Adds support to Static Routes on VPC private gatways
   - Removes the route configuration in case static route is deleted.
2015-12-02 10:36:52 +01:00
Wilder Rodrigues 3e02b8999b CLOUDSTACK-9075 - Covers Private GW ACL with Redundant VPCs 2015-12-02 10:36:52 +01:00
Wilder Rodrigues 4ea4e7e687 CLOUDSTACK-9075 - Add method to get list of Physical Networks per zone 2015-12-02 10:36:51 +01:00
Rohit Yadav 433a79f989 debian: allow rules to pick ACS_BUILD_OPTS from env
Only now debian builds can be noredist etc.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-12-02 13:45:46 +05:30
Remi Bergsma cb50eb8e17 Merge pull request #1146 from remibergsma/build_script_fixes
make sure all files are updates with new versionDuring the previous release I had to edit these manually. This will fix that so all versions get updated.

* pr/1146:
  Use version for RC branch name instead of branch
  make sure all files are updates with new version

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-30 22:23:50 +01:00
Remi Bergsma 7d7420fd1e Use version for RC branch name instead of branch
4.6.1-RC20151130T2142 versus 4.6-RC20151130T2142
2015-11-30 22:21:04 +01:00
Remi Bergsma df3ce171e8 make sure all files are updates with new version 2015-11-30 21:39:02 +01:00
Wei Zhou 4ed1e0d5f8 CLOUDSTACK-9022: move storage.cleanup related global configurations to StorageManager 2015-11-30 20:44:05 +01:00
Wei Zhou 9077c9a5b4 CLOUDSTACK-9022: keep Destroyed volumes for sometime 2015-11-30 20:43:13 +01:00
Remi Bergsma e675250f60 Merge pull request #1138 from milamberspace/L10N-update-4.6-20151129
Update L10N resource files with 4.6 strings from Transifex (20151129)Small update of L10N files before the 4.6.1 release candidate

cc @remibergsma

* pr/1138:
  Update L10N resource files with 4.6 strings from Transifex (20151129)

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-30 19:49:01 +01:00
Remi Bergsma df0797affd Merge pull request #1133 from syed/4.6
Fix secondary storage not working with swiftOriginal PR and discussion at #1112

* pr/1133:
  Fix secondary storage not working with swift

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-30 19:36:38 +01:00
Rohit Yadav 7dcc6540e7 Merge pull request #1121 from shapeblue/4.6-cloudstack-9083
[4.6] CLOUDSTACK-9083: Add disk serial to kvm virt xmlAdds disk serial ids based on volume uuids to the virt xml. This may be useful
for appliances/software that needs some serial ids on the VM disks. This does not
impact existing/running VMs, the vm virt xmls will be updates for running VMs
the next time they are stopped/started.

For testing, disk serial (of debian based systemvm) in the virt xml matched that
in /sys/devices/pci0000:00:0000:00:07.0/virtio4/block/vda/serial.

We currently don't support scsi-blcok devices for which serial is not supported,
for this we've added a DeviceType (LUN) which may be used in future and a check
to not add the serial to the xml if disk type is LUN.
Refer: https://libvirt.org/formatdomain.html#elementsDisks

* pr/1121:
  CLOUDSTACK-9083: Add disk serial to kvm virt xml

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-11-30 15:10:31 +05:30
Milamber 6d4722953f Update L10N resource files with 4.6 strings from Transifex (20151129) 2015-11-29 19:01:56 +00:00
Remi Bergsma 17eb420af7 Merge pull request #1085 from ustcweizhou/list-vlanipranges-by-keyword
[4.6] Cannot list vlanipranges by keywordBefore change:

cloudmonkey> list vlanipranges  keyword=118
: Caught: com.mysql.jdbc.JDBC4PreparedStatement@18f36b6e: SELECT vlan.id, vlan.vlan_id, vlan.vlan_gateway, vlan.vlan_netmask, vlan.ip6_gateway, vlan.ip6_cidr, vlan.data_center_id, vlan.description, vlan.ip6_range, vlan.network_id, vlan.physical_network_id, vlan.vlan_type, vlan.uuid, vlan.removed, vlan.created FROM vlan WHERE  ( OR vlan.description LIKE ** NOT SPECIFIED ** )  AND vlan.removed IS NULL  ORDER BY vlan.id ASC  LIMIT 0, 500

After change:

cloudmonkey> list vlanipranges  keyword='118'
count = 1
vlaniprange:
id = 0d80fd9c-cd6b-4f99-96c6-261420e75f58
account = system
domain = ROOT
domainid = 2044762d-c4a5-11e3-8379-005056ac4490
......

* pr/1085:
  Cannot list vlanipranges by keyword

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-29 19:28:01 +01:00
Remi Bergsma fe0dc3fac7 Merge pull request #1116 from shapeblue/4.6-9064
CLOUDSTACK-9064: The users should be able to create multiple Guest Shhttps://issues.apache.org/jira/browse/CLOUDSTACK-9064

CLOUDSTACK-9064: The users should be able to create multiple Guest Shared Networks in same Vlan ID, same Physical Network and same network, just with a different IP ranges.

* pr/1116:
  CLOUDSTACK-9064: The users should be able to create multiple Guest Shared Networks in same Vlan ID, same Physical Network and same network, just with a different IP ranges.

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-29 19:20:44 +01:00
Remi Bergsma a44e0b7309 Merge pull request #1105 from borisroman/packagingIssues
Debian/Ubuntu packaging issuesSee individual issues. I've installed the management server with and without the fix. See difference bellow.

Before:
```
root@acs46:~# ls -la /var/lib/cloudstack
total 16
drwxr-xr-x  4 root root  4096 Nov 23 00:20 .
drwxr-xr-x 46 root root  4096 Nov 23 00:21 ..
drwxrwx---  2 root cloud 4096 Nov 17 01:15 management
drwxr-xr-x  2 root root  4096 Nov 17 01:15 mnt
```
```
root@acs46:~# ls -la /usr/share/cloudstack-management/webapps/client/WEB-INF/classes/scripts/storage/secondary/
total 152
drwxr-xr-x 2 root root  4096 Nov 23 00:20 .
drwxr-xr-x 4 root root  4096 Nov 23 00:20 ..
-rw-r--r-- 1 root root 10092 Nov 17 01:15 cloud-install-sys-tmplt
-rw-r--r-- 1 root root 10591 Nov 17 01:15 cloud-install-sys-tmplt.py
-rw-r--r-- 1 root root 11254 Nov 23 00:20 cloud-install-sys-tmplt.pyc
-rw-r--r-- 1 root root  2362 Nov 17 01:15 create_privatetemplate_from_snapshot_xen.sh
-rw-r--r-- 1 root root  5446 Nov 17 01:15 createtmplt.sh
-rw-r--r-- 1 root root  5388 Nov 17 01:15 createvolume.sh
-rw-r--r-- 1 root root  2532 Nov 17 01:15 installIso.sh
-rw-r--r-- 1 root root  1622 Nov 17 01:15 listvmtmplt.sh
-rw-r--r-- 1 root root  1621 Nov 17 01:15 listvolume.sh
-rw-r--r-- 1 root root 75712 Nov 17 01:15 swift
```

After:
```
root@acs46:~# ls -la /var/lib/cloudstack
total 16
drwxr-xr-x  4 cloud cloud 4096 Nov 23 00:51 .
drwxr-xr-x 46 root  root  4096 Nov 23 00:53 ..
drwxrwx---  2 cloud cloud 4096 Nov 23 00:33 management
drwxr-xr-x  2 cloud cloud 4096 Nov 23 00:33 mnt
```
```
root@acs46:~# ls -la /usr/share/cloudstack-management/webapps/client/WEB-INF/classes/scripts/storage/secondary/
total 152
drwxr-xr-x 2 root root  4096 Nov 23 00:53 .
drwxr-xr-x 4 root root  4096 Nov 23 00:53 ..
-rwxr-xr-x 1 root root 10092 Nov 23 00:33 cloud-install-sys-tmplt
-rwxr-xr-x 1 root root 10591 Nov 23 00:33 cloud-install-sys-tmplt.py
-rwxr-xr-x 1 root root 11254 Nov 23 00:53 cloud-install-sys-tmplt.pyc
-rwxr-xr-x 1 root root  2362 Nov 23 00:33 create_privatetemplate_from_snapshot_xen.sh
-rwxr-xr-x 1 root root  5446 Nov 23 00:33 createtmplt.sh
-rwxr-xr-x 1 root root  5388 Nov 23 00:33 createvolume.sh
-rwxr-xr-x 1 root root  2532 Nov 23 00:33 installIso.sh
-rwxr-xr-x 1 root root  1622 Nov 23 00:33 listvmtmplt.sh
-rwxr-xr-x 1 root root  1621 Nov 23 00:33 listvolume.sh
-rwxr-xr-x 1 root root 75712 Nov 23 00:33 swift
```

* pr/1105:
  CLOUDSTACK-9078: Gave scripts executable permissions.
  CLOUDSTACK-9076: Changed ownership of directory /var/lib/cloudstack to cloud.

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-29 09:41:36 +01:00
Patrick Dube 091bb79669 CLOUDSTACK-6276 Removing unused parameter in integration test for projects 2015-11-28 20:46:24 -05:00
Patrick Dube a1db428e08 CLOUDSTACK-6276 Removing unused parameter in integration test 2015-11-28 20:44:56 -05:00
Daan Hoogland 2733c38354 Merge pull request #1106 from shapeblue/4.6-uifixesmetrics
[4.6] CLOUDSTACK-9020: UI enhancements from metrics view- Sortable columns
- Logos with cloudmonkey
- Wider UI
- CSS fixes and new status icons
- Configurable UI list api requests page size
- IP address column on instances page
- Listview widget enhancements

cc @remibergsma @karuturi

* pr/1106:
  CLOUDSTACK-9020: UI enhancements from metrics view

Signed-off-by: Daan Hoogland <daan@onecht.net>
2015-11-28 17:47:31 +01:00
Remi Bergsma 399d052f8d Merge pull request #1101 from ustcweizhou/add-select-template-dropdown
[4.6] Add select template dropdown when reinstall VM

* pr/1101:
  Add select template dropdown when reinstall VM

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-28 14:54:11 +01:00
Remi Bergsma 48ade05370 Merge pull request #1081 from nitin-maharana/CloudStack-Nitin15
CLOUDSTACK-9068: Listing Port Forwarding Rules take too much time to loadFor setting the width of each data item for each row of Port Forwarding rules, it was processing all rules.

Basically for each data item, it was searching in all rules, which is un-necessary.
If there are N-Rules, It was processing N-times.

Now, it only processes one time by taking all N-rules at a time.
The previous solution was of O(NxN). Now its changed to O(N).

* pr/1081:
  CLOUDSTACK-9068: Listing Port Forwarding Rules take too much time to load

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-28 14:51:31 +01:00
Daan Hoogland 9960593893 Merge pull request #1127 from greenqloud/pr-eventbus-uuids-4.6
Fix event UUIDS missing on event busSame as pull request #1111, but this time on the 4.6 branch for forward merging in accordance with [the wiki](https://cwiki.apache.org/confluence/display/CLOUDSTACK/Release+principles+for+Apache+CloudStack+4.6+and+up#ReleaseprinciplesforApacheCloudStack4.6andup-HowtomergeaPullRequest?).

The fixing of CLOUDSTACK-8816 introduced a regression that removed the first class entities in the event bus description property. This is because everything was changed to use the Class as a key... Everything but the populateFirstClassEntities method in ActionEventUtils.

This commit tries to load the class key instead of the String key, which re-enables the populateFirstClassEntities method.

Likely this was not caught because of the trace exception handling... maybe some better logging/unit tests would be good for this PR.

* pr/1127:
  Fix event UUIDS missing on event bus

Signed-off-by: Daan Hoogland <daan@onecht.net>
2015-11-27 22:54:48 +01:00
Patrick Dube c76d317150 CLOUDSTACK-6276 Fixing affinity groups for projects 2015-11-27 14:43:02 -05:00
Remi Bergsma 92913a154c Merge pull request #1109 from remibergsma/fix-CLOUDSTACK-9077
CLOUDSTACK-9077 Fix injectkeys.sh to work on CentOS7Fix regression from commit 3381154faf

The error seen on CentOS 7:

```
2015-11-20 21:51:16,161 DEBUG [c.c.s.ConfigurationServerImpl] (localhost-startStop-1:null) No loop device found, skipping ssh key insertion in systemvm.iso
```

Instead of detecting `/dev/loop0` this checks if we run inside Docker.

Tested on CentOS 7 and that now works again as expected.

```
2015-11-23 16:20:16,777 DEBUG [c.c.s.ConfigurationServerImpl] (localhost-startStop-1:null) Executing: /bin/bash /var/lib/tomcat/webapps/client/WEB-INF/classes/scripts/vm/systemvm/injectkeys.sh /home/cloud/.ssh/id_rsa.pub /home/cl
oud/.ssh/id_rsa /var/lib/tomcat/webapps/client/WEB-INF/classes/vms/systemvm.iso
2015-11-23 16:20:16,821 DEBUG [c.c.s.ConfigurationServerImpl] (localhost-startStop-1:null) Execution is successful.
2015-11-23 16:20:16,827 INFO  [c.c.s.ConfigurationServerImpl] (localhost-startStop-1:null) Injected public and private keys into systemvm iso with result : null
```

Pinging @pdion891 to have a look.

* pr/1109:
  CLOUDSTACK-9077 Fix injectkeys.sh to work on CentOS7

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-27 20:05:11 +01:00
Syed 1e67a5d2c8 Fix secondary storage not working with swift 2015-11-27 13:48:18 -05:00
jeff 7d44e90c8d Fix event UUIDS missing on event bus
The fixing of CLOUDSTACK-8816 introduced a regression that removed the
first class entities in the event bus description property. This is
because everything was changed to use the Class as a key... Everything
but the populateFirstClassEntities method in ActionEventUtils.
2015-11-26 11:19:57 +00:00
Daan Hoogland ad2bcc089e Merge pull request #1114 from davidamorimfaria/4.6
CLOUDSTACK-9065: fix bug when creating packaging with noredist flagFixes this:
```
$ bash -x package.sh -p noredist -d centos63
(...)
+ rpmbuild --define '_topdir /home/david/cloudstack/packaging/../dist/rpmbuild' '-D_ver 4.6.1' '-D_rel SNAPSHOT' '-D_prerelease 1' -D_ossnoss noredist -bb SPECS/cloud.spec
error: Macro %_ossnoss has empty body
error: Macro %_ossnoss has empty body
error: failed to stat /home/david/cloudstack/dist/rpmbuild/noredist: No such file or directory
+ '[' 1 -ne 0 ']'
+ echo 'RPM Build Failed '
RPM Build Failed
+ exit 3
```

It was missing quotes around the rpmbuild argument '-D_ossnoss noredist'.

* pr/1114:
  CLOUDSTACK-9065: fix bug when creating packaging with noredist flag

Signed-off-by: Daan Hoogland <daan@onecht.net>
2015-11-26 11:23:24 +01:00
Srikanteswararao Talluri ab385c814f Revert "Change references of people.apache.org to home.apache.org in the test code"
This reverts commit 001169f08f.
2015-11-26 12:07:49 +05:30
SrikanteswaraRao Talluri 001169f08f Change references of people.apache.org to home.apache.org in the test code
This closes #1123
Signed-off-by: SrikanteswaraRao Talluri <talluri@apache.org>
2015-11-26 11:41:11 +05:30
Remi Bergsma 9b0b69d9c8 CLOUDSTACK-9077 Fix injectkeys.sh to work on CentOS7 2015-11-25 11:26:10 +01:00
Rohit Yadav 12c395b560 CLOUDSTACK-9083: Add disk serial to kvm virt xml
Adds disk serial ids based on volume uuids to the virt xml. This may be useful
for appliances/software that needs some serial ids on the VM disks. This does not
impact existing/running VMs, the vm virt xmls will be updates for running VMs
the next time they are stopped/started.

For testing, disk serial (of debian based systemvm) in the virt xml matched that
in /sys/devices/pci0000:00:0000:00:07.0/virtio4/block/vda/serial.

We currently don't support scsi-blcok devices for which serial is not supported,
for this we've added a DeviceType (LUN) which may be used in future and a check
to not add the serial to the xml if disk type is LUN.
Refer: https://libvirt.org/formatdomain.html#elementsDisks

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-11-25 14:58:42 +05:30
Rohit Yadav 13f1319453 CLOUDSTACK-9020: UI enhancements from metrics view
- Sortable columns
- Logos with cloudmonkey
- Wider UI
- CSS fixes and new status icons
- Configurable UI list api requests page size
- IP address column on instances page
- Listview widget enhancements

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-11-25 14:15:13 +05:30
Abhinandan Prateek d09898553e CLOUDSTACK-9064: The users should be able to create multiple Guest Shared Networks in same Vlan ID, same Physical Network and same network, just with a different IP ranges. 2015-11-25 10:22:24 +05:30
David Amorim Faria adb0d3bb74 CLOUDSTACK-9065: fix bug when creating packaging with noredist flag 2015-11-25 01:41:22 +01:00
Boris Schrijver e2fc270480 CLOUDSTACK-9078: Gave scripts executable permissions. 2015-11-23 00:25:24 +01:00
Boris Schrijver 1e73f667c9 CLOUDSTACK-9076: Changed ownership of directory /var/lib/cloudstack to cloud. 2015-11-23 00:25:14 +01:00
Remi Bergsma 3f7a86d8ef Merge pull request #1058 from greenqloud/pr/password_security
Shuffling the password to avoid having a subset of characters in fixed positions.Related to CLOUDSTACK-9052.

I am shuffling the characters in the password, to avoid having a certain char type in fixed positions. I modified the tests accordingly to only check that the different character types are present.

I think it would be good to remove the hard requirement to have at least one of digits, upper-case, and  lowercase chars, as it reduces the number of possible combinations passwords can take. What do you think?

* pr/1058:
  CLOUDSTACK-9052 Shuffling the password to avoid having a subset of characters in fixed positions.

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-22 12:46:32 +01:00
Wei Zhou 6e5a05d5c9 Add select template dropdown when reinstall VM 2015-11-21 21:36:09 +01:00
Remi Bergsma 7a77ddcd80 Merge pull request #1075 from davidamorimfaria/packaging_release_version
CLOUDSTACK-9065: Packaging RPM, add option for package release version, cleanup and lintIn package.sh
 * lint
 * adjust exit codes (1 for usage, 2 for maven, 3 for rpmbuild)
 * fix variable naming for consistency
 * add option for package release version
 * revise synopsis and usage

* pr/1075:
  Refactor package.sh:  * lint  * adjust exit codes (1 for usage, 2 for maven, 3 for rpmbuild)  * variable naming consistency  * add option for package release version  * revise synopsis and usage

Signed-off-by: Remi Bergsma <github@remi.nl>
2015-11-21 19:15:09 +01:00