Commit Graph

29479 Commits

Author SHA1 Message Date
Will Stevens 4ab7fb78ad Merge pull request #1271 from anshul1886/CLOUDSTACK-9164
CLOUDSTACK-9164: Prevent firefox's quick search from opening in VM consolehttps://issues.apache.org/jira/browse/CLOUDSTACK-9164

To test:
In Firefox open any VM conosle, and try typing "/".
It should be typed in VM console and quick search of firefox should not open.

* pr/1271:
  CLOUDSTACK-9164: Prevent firefox's quick search from opening in VM console

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-25 15:53:01 -04:00
Will Stevens a2d46921a1 Merge pull request #713 from nitt10prashant/pool_maint
CLOUDSTACK-8745 : verify usage after root disk migrationput storage in maintenance mode and start ha vm and check usage ... === TestName: test_ha_with_storage_maintenance | Status : SUCCESS ===
ok

----------------------------------------------------------------------
Ran 1 test in 842.294s

OK

* pr/713:
  CLOUDSTACK-8745 : verify usage after root disk migration

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-25 15:51:37 -04:00
Anshul Gangwar 7db5f1833e CLOUDSTACK-9164: Prevent firefox's quick search from opening in VM console 2016-04-25 11:37:43 +05:30
Will Stevens d518b619dd Merge pull request #1459 from GabrielBrascher/CLOUDSTACK-8611
This closes #561

CLOUDSTACK-8611:Handle SSH if server "forget" to send exit statusContinuing the work started by @likitha, I did not cherry-picked the
commit (b9181c689e) from PR <https://github.com/apache/cloudstack/pull/561> due to the fact that the path of that SshHelper class was different of the current SshHelper; that is because the fact that by cherry-picking it would seem that I had changed all the class as the code is from another file.

I made some changes from the cherry-picked commit adding @wilderrodrigues suggestions (create simple methods to have reusable code, make unit tests and create the `WAITING_OPEN_SSH_SESSION` variable to manipulate with the delay of 1000 milliseconds).

Also, I tried to simplify the logic by assuming that ....

    if ((conditions & ChannelCondition.EXIT_STATUS) != 0) {
            if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
                break;
            }
    }

... is the same as `((conditions & ChannelCondition.EXIT_STATUS) != 0) && ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0)`. This expression has the following results according to each possible condition.

|Condition|Value|result
|-----------------|-------|------|
TIMEOUT  | 0000001|false
CLOSED  | 0000010 |false
STDERR_DATA | 0000100 | false
STDERR_DATA | 0001000 | false
EOF         | 0010000 | false
EXIT_STATUS | 0100000 | **true**
EXIT_SIGNAL | 1000000 | false

After testing all the possibilities we can note that the condition of `(conditions & ChannelCondition.EXIT_STATUS) != 0` is sufficient; thus, the simplified "if" conditional can be:

`if ((conditions & ChannelCondition.EXIT_STATUS) != 0) {
    break;
}`

This proposed work can be explained by quoting @likitha:
>CheckS2SVpnConnectionsCommand execution involves executing a script (checkbatchs2svpn.sh) in the virtual router. Once CS has opened a session to a virtual router and executed a script in the router, it waits indefinitely till the session either times out or the exit status of the remote process is available. But it is possible that an EOF is reached by the process in the router and the router never set the exit status.

>References -
>1. Some servers never send the exit status, or occasionally "forget" to do so (http://grepcode.com/file/repo1.maven.org/maven2/org.jvnet.hudson/trilead-ssh2/build212-hudson-1/com/trilead/ssh2/ChannelCondition.java).
>2. Get the exit code/status from the remote command - if available. Be careful - not all server implementations return this value - (http://grepcode.com/file/repo1.maven.org/maven2/org.jvnet.hudson/trilead-ssh2/build212-hudson-1/com/trilead/ssh2/Session.java#Session.waitForCondition%28int%2Clong%29).

* pr/1459:
  Handle SSH if server "forget" to send exit status

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:59:16 -04:00
Will Stevens 5498170468 Merge pull request #1308 from sanju1010/vpncgw
Test to create vpn customer gateway with hostnameWhile adding vpn customer gateway for site to site vpn connection, cs should also accept host name apart from gateway ip address. It should not be restricted to just ip address.

* pr/1308:
  Added few validation steps after adding vpncustomer gateway with hostname Changes are as per review comments in PR#1308
  Test to verify CS-45057 Bug-Id: CS-45057 Reviewed-by: Self

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:53:28 -04:00
Will Stevens bebaea323a Merge pull request #1326 from sanju1010/cs-9219
New test to validate starting vm after nic removal and attachPlease refer bug CLOUDSTACK-9219 for more details.

Test Results:
==========
Test to verify vm start after NIC removal and reattach ... === TestName: test_30_remove_nic_reattach | Status : SUCCESS ===
ok

----------------------------------------------------------------------
Ran 1 test in 277.478s

OK

* pr/1326:
  New test to validate starting vm after nic removal and attach Bug-Id: CLOUDSTACK-9219

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:40:34 -04:00
Will Stevens ff0e7f3ec4 Merge pull request #1126 from anshul1886/CLOUDSTACK-9088
CLOUDSTACK-9088: Update the description for migrateVirtualMachineWithVolume apihttps://issues.apache.org/jira/browse/CLOUDSTACK-9088

* pr/1126:
  CLOUDSTACK-9088: Update the description for migrateVirtualMachineWithVolume api.

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:39:15 -04:00
Will Stevens cb8c9c76f3 Merge pull request #1323 from sanju1010/cs-9218
[CLOUDSTACK-9218]Test to verify restart network after master VR destroyedPlease refer CLOUDSTACK-9218 for more details

Test Results:
===========

Test restarting RvR network without cleanup after destroying master VR ... === TestName: test_restart_ntwk_MVR_destroyed | Status : SUCCESS ===
ok

----------------------------------------------------------------------
Ran 1 test in 581.194s

OK

* pr/1323:
  Added new test to verify restart network after destorying master VR Bug-Id: CLOUDSTACK-9218

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:38:03 -04:00
Will Stevens 7cd2284bf5 Merge pull request #1501 from mike-tutkowski/cs-9354
Fixing an issue in Marvin around creating a template from a snapshotThis fixes the following ticket: https://issues.apache.org/jira/browse/CLOUDSTACK-9354

The problem was that Marvin was requiring you to pass in the "ispublic" parameter when creating a template from a snapshot.

As the ticket notes, this issue was introduced by the following commit: https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;a=commit;h=bbe0fc4be9527d51820b067a602886003991db4d

The solution I've provided is simply to check if the "ispublic" property is in the dictionary before referencing it.

* pr/1501:
  CLOUDSTACK-9354 - Fixing an issue in Marvin around creating a template from a snapshot (if “is public” is not provided, there was a problem)

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:36:50 -04:00
Will Stevens f530a4c63a Merge pull request #1200 from koushik-das/CLOUDSTACK-9130
CLOUDSTACK-9130: Make RebootCommand similar to start/stop/migrate agent commands w.r.t. "execute in sequence" flag

RebootCommand now behaves in the same way as start/stop/migrate agent commands w.r.t. to sequential/parallel execution.

* pr/1200:
  CLOUDSTACK-9130: Make RebootCommand similar to start/stop/migrate agent commands w.r.t. "execute in sequence" flag RebootCommand now behaves in the same way as start/stop/migrate agent commands w.r.t. to sequential/parallel execution.

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:35:27 -04:00
Will Stevens 37afba05f4 Merge release branch 4.8 to master
* 4.8:
  CLOUDSTACK-9172 Added cross zones check to delete template and iso
  Check the existence of 'forceencap' parameter before use
  systemvm: set default umask 022 in injectkeys.sh
2016-04-21 16:32:36 -04:00
Will Stevens c2fc0c4cd3 Merge release branch 4.7 to 4.8
* 4.7:
  CLOUDSTACK-9172 Added cross zones check to delete template and iso
  Check the existence of 'forceencap' parameter before use
  systemvm: set default umask 022 in injectkeys.sh
2016-04-21 16:31:49 -04:00
Will Stevens d13ff88cbc Merge pull request #1505 from pdube/CLOUDSTACK-9172-delete-cross-zones-template
CLOUDSTACK-9172 Added cross zones check to delete template and isoAdded a check to ignore the zoneid, in the delete template UI, if the template is cross zones.

reference : CLOUDSTACK-9172

* pr/1505:
  CLOUDSTACK-9172 Added cross zones check to delete template and iso

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:30:50 -04:00
Will Stevens a7fef86bb3 Merge pull request #1402 from remibergsma/forceencap_check
Check the existence of 'forceencap' parameter before useCheck the existence of 'forceencap' parameter before use.

Error seen:

```
Traceback (most recent call last):
  File "/opt/cloud/bin/update_config.py", line 140, in <module>
    process_file()
  File "/opt/cloud/bin/update_config.py", line 54, in process_file
    finish_config()
  File "/opt/cloud/bin/update_config.py", line 44, in finish_config
    returncode = configure.main(sys.argv)
  File "/opt/cloud/bin/configure.py", line 1003, in main
    vpns.process()
  File "/opt/cloud/bin/configure.py", line 488, in process
    self.configure_ipsec(self.dbag[vpn])
  File "/opt/cloud/bin/configure.py", line 544, in configure_ipsec
    file.addeq(" forceencaps=%s" % CsHelper.bool_to_yn(obj['encap']))
KeyError: 'encap'
```

* pr/1402:
  Check the existence of 'forceencap' parameter before use

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:30:16 -04:00
Will Stevens f9846f1785 Merge pull request #1420 from shapeblue/injectsh-umaskfix
systemvm: preserve file permissions, set default umask- In injectkeys.sh which is used to inject new public keys everytime cloudstack
  starts; while copying files preserve the mode/ownership. This ensures the
  scripts have same mode bits as originally configured in the iso file
- The default umask of 0022 is set in Ubuntu and other packages. Set the same
  in case of CentOS startup scripts

cc @abhinandanprateek @wido @remibergsma @DaanHoogland @jburwell

* pr/1420:
  systemvm: set default umask 022 in injectkeys.sh

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-21 16:29:51 -04:00
Koushik Das 8ae4da89d2 Merge pull request #1157 from SudharmaJain/cs-9100
CLOUDSTACK-9100: ISO.CREATE/TEMPLATE.CREATE event missing for usage_event by template sync thread

If there is a Management server restart while template is in downloading or installing state. Template Sync does not push event into usage_event table.

I have verified the fix manually. Here is a snapshot.
![image](https://cloud.githubusercontent.com/assets/12229259/11559714/0989748c-99e1-11e5-88e0-48b4dbec0224.png)

 I have registered 4 templates. template id 207 and 208(ISO.CREATE event is missing) before applying the fix. and template id 209 and 210 after applying the fix.

Repro Steps (3 cases)
==========
Case - 1 (private template)
-------------
1. register a private template/iso.
2. restart management server when template is in downloading state.
3. After management server restart, template_store_ref entry is removed if  download was not yet completed.
4. on next management server restart, if download would have completed, template_store_ref entry will get populated, but TEMPLATE.CREATE event is missing in usage_event.

Case - 2 (Public template)
--------------------------------
1.  register public template.
2. restart management server when in downloading state.
3. after restart template download reinitiates.
4. template goes to ready state, but there is no usage event.

case -3 (public/private template)
---------------------------------
1. register a template
2. restart management server when template is in installing state.
3. after restart template goes to ready, but there is no usage event.

* pr/1157:
  CLOUDSTACK-9100: ISO.CREATE/TEMPLATE.CREATE event missing for usage_event by template sync thread

Signed-off-by: Koushik Das <koushik@apache.org>
2016-04-21 17:33:02 +05:30
Koushik Das 30cfeb49d2 Merge release branch 4.8 to master
* 4.8:
  CLOUDSTACK-9272: No option in UI to add GSLB with service type "HTTP"
  CLOUDSTACK-9270: UI alignment gone bad in multiple places - VM Instance, Network, Egress rules
2016-04-21 12:55:04 +05:30
Koushik Das 59ac07e5af Merge release branch 4.7 to 4.8
* 4.7:
  CLOUDSTACK-9272: No option in UI to add GSLB with service type "HTTP"
  CLOUDSTACK-9270: UI alignment gone bad in multiple places - VM Instance, Network, Egress rules
2016-04-21 12:51:03 +05:30
Koushik Das 2ada75cc82 Merge pull request #1398 from nitin-maharana/CloudStack-Nitin23_4.7
CLOUDSTACK-9270: UI alignment gone bad in multiple places - VM Instance, Network, Egress rulesSteps to Repro:
============
Please see the snapshots attached.

Fix:
===
Now it breaks into two lines once the word goes out of the box.
Fixed the advanced search field issue.

Network Section:
=============
![network-section-nitin](https://cloud.githubusercontent.com/assets/12583725/12762032/66f27d32-ca13-11e5-8d0a-9c8f99a12a99.png)

Adding VM to LB Rule:
==================
![adding-vm-to-lb-rule-nitin](https://cloud.githubusercontent.com/assets/12583725/12762050/76083cd0-ca13-11e5-873d-0037bc13a444.png)

Affinity Group Section:
==================
![affinity-group-section-nitin](https://cloud.githubusercontent.com/assets/12583725/12762066/881c2a1c-ca13-11e5-8905-f72676151130.png)

Fixed Affinity Group Section:
======================
![fix-affinity-group-section-nitin](https://cloud.githubusercontent.com/assets/12583725/12762083/990a673a-ca13-11e5-9d63-f895f9a1875c.png)

* pr/1398:
  CLOUDSTACK-9270: UI alignment gone bad in multiple places - VM Instance, Network, Egress rules

Signed-off-by: Koushik Das <koushik@apache.org>
2016-04-21 12:26:38 +05:30
Koushik Das 4071ff4855 Merge pull request #1399 from nitin-maharana/CloudStack-Nitin21_4.7
CLOUDSTACK-9272: No option in UI to add GSLB with service type "HTTP"Steps to Repro:
============
Go to Regions -> Local -> View GSLB -> Add GSLB
Click on the service type dropdown
Observe http is missing. Please see the attached snapshot.

Expected Behaviour:
================
As it supports http also, So http should be in the list.

Actual Behaviour:
==============
http is missing from the list.

Fix:
===
It supports http also. Added http to the list.

Snapshot:
========
<img width="531" alt="gslb-http-missing-nitin" src="https://cloud.githubusercontent.com/assets/12583725/12772818/21513dc0-ca5b-11e5-822e-e2dd2426da65.png">

* pr/1399:
  CLOUDSTACK-9272: No option in UI to add GSLB with service type "HTTP"

Signed-off-by: Koushik Das <koushik@apache.org>
2016-04-21 12:24:34 +05:30
nitt10prashant 456abb0b94 CLOUDSTACK-8745 : verify usage after root disk migration
modified to use maintenance method is base.py and added some more checks

CLOUDSTACK-8745: Fail test if list response in empty
2016-04-21 11:00:13 +05:30
Patrick Dube cfd2ce71ed CLOUDSTACK-9172 Added cross zones check to delete template and iso 2016-04-20 16:16:32 -04:00
gabrascher abae908674 Handle SSH if server "forget" to send exit status
Continued the work started by https://github.com/likitha
commit (b9181c6) from PR #561.

CS waits indefinitely for CheckS2SVpnConnectionsComm and to return.
While remote executing commands through ssh, handle channel condition of
EOF because we wait for the the condition.

The SshHelper of the PR #561 is of another path from the
current master, its path was
https://github.com/likitha/cloudstack/commits/CLOUDSTACK-8611/utils/src/com/cloud/utils/ssh/SshHelper.java;
thus, although this commit brings changes from PR #561, I did not
cherry-picked to keep the master file, otherwise it would look that I
had changed all the file.
by me.
2016-04-20 13:51:17 -03:00
SudharmaJain c3353257ef CLOUDSTACK-9100: ISO.CREATE/TEMPLATE.CREATE event missing for usage_event by template sync thread 2016-04-20 18:11:46 +05:30
Mike Tutkowski ba9a61a302 CLOUDSTACK-9354 - Fixing an issue in Marvin around creating a template from a snapshot (if “is public” is not provided, there was a problem) 2016-04-19 14:13:24 -06:00
Will Stevens 339355594c Merge release branch 4.8 to master
* 4.8:
  CLOUDSTACK-9268: Display VM in Load balancing rule in UI
2016-04-19 10:49:53 -04:00
Will Stevens e17c64dbc0 Merge release branch 4.7 to 4.8
* 4.7:
  CLOUDSTACK-9268: Display VM in Load balancing rule in UI
2016-04-19 10:49:03 -04:00
Koushik Das e3e5be8ded Merge pull request #1394 from nitin-maharana/CloudStack-Nitin25_4.7
CLOUDSTACK-9268: Display VM in Load balancing rule in UISteps of Repro:
=============
1:Create VMs
2:Make LoadBalancing rule in GUI
Name:WWW
PrivatePort:80
PublicPort:80
Add VMs:some VMs

Expected Result:
==============
The VMs which has been already assigned is should not be listed when you add the VM to an existing rule.

Actual Result:
===========
The VMs which has been already assigned is still being listed when you add the VM to an existing rule.

Fix:
===
Added jsonObj to newly created row in multiedit.js to stop listing the same VM again.

* pr/1394:
  CLOUDSTACK-9268: Display VM in Load balancing rule in UI

Signed-off-by: Koushik Das <koushik@apache.org>
2016-04-19 16:31:50 +05:30
Remi Bergsma 53de78f642 Check the existence of 'forceencap' parameter before use 2016-04-19 11:11:19 +02:00
Will Stevens a3371d282f Merge pull request #1262 from rafaelweingartner/lrg-cs-hackday-015
Removed unnecessary code from getGuestOsType in CitrixResourceBaseConsidering that all mapping of Guest OS Names to their respective hypervisor compatible types is made thorugh accessing a database, we've decided to remove a bit of code in the XcpOssResource class which was doing that same thing for 2 different OS's (both of which ARE in the database). That has led us to a bunch of unused parameters in the getGuestOsType method from its superclass, which we've also decided to remove. Test cases were added for four different possibilities for the platformEmulator String: one for a null String, one for a blank String, one for an empy String and one for a random case with a valid String.

* pr/1262:
  Remove test cases duplicated code.
  Removed unnecessary code from getGuestOsType in CitrixResourceBase

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-18 14:41:35 -04:00
Will Stevens a957821074 Merge pull request #1363 from ustcweizhou/fix-scalevm-issue
CLOUDSTACK-9251: Fix issue in scale VM to dynamic service offeringThis reverts commit 9c4162ac7f and 16baa1289b

Before change: exception when change compute offering (to dynamic service offering) on UI
After change: succeed

* pr/1363:
  Fix issue in scale VM to dynamic service offering

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-18 08:37:25 -04:00
Will Stevens 08f2ec5044 Merge pull request #1263 from rafaelweingartner/lrg-cs-hackday-018
Removed unused code from com.cloud.api.ApiServer**Removed \_ from variables names**: private variables with \_ at the beginning is common in C++ but not in Java.

**Removed unused code from ApiServer:**
- com.cloud.api.ApiServer.getPluggableServices(): unused method;
- com.cloud.api.ApiServer.getApiAccessCheckers(): unused method;

**Methods and variables access level reviewed:**
- com.cloud.api.ApiServer.handleAsyncJobPublishEvent(String, String ,Object): this method was private but the annotation @MessageHandler requests public methods, as can be seen in org.apache.cloudstack.framework.messagebus.MessageDispatcher.buildHandlerMethodCache(Class\<?\>), which searches methods with the @MessageHandler annotation and changes
it to be accessible (setAccessible(true)). Thus, there is no reason for handleAsyncJobPublishEvent be a private method and lead some other dev to wrong conclusions about the use of the method;
- Global variables and methods called just by this class (ApiServer) were changed to private.

**Changed variables and methods from static to non-static (if possible):** as some variables/methods are used just by one object of this class, instantiated by Spring, they were changed to non-static.

With that, calls from com.cloud.api.ApiServlet.ApiServlet() that used static methods from ApiServer, were changed from ApiServer.\<staticMethodName\> to \_apiServer.\<methodName\> that refers to the org.apache.cloudstack.api.ApiServerService interface. Thus, methods com.cloud.api.ApiServer.getJSONContentType() and com.cloud.api.ApiServer.isSecureSessionCookieEnabled() had to be added in the interface (org.apache.cloudstack.api.ApiServerService, interface implemented by class ApiServer).

* pr/1263:
  The goal of this PR is to review com.cloud.api.ApiServer class, with the following actions:

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-18 08:34:53 -04:00
Will Stevens 749b71601c Merge pull request #1445 from rafaelweingartner/lrg-cs-hackday-025
Fixed Profiler's unit tests bugs.### **Problem:**
The TestProfiler class was using Java Thread methods to test the
Profiler's functionality. That was causing the tests to fail sometimes
since the JVM's thread priority could be low on some OS.

### **Fix:**
Using PowerMockito to mock the System calls, the threads could be
removed. This makes the tests considerably faster, OS independent and
still guarantees the correct implementation of the Profiler class.

The changes on the Profiler's class was only to shorten the class's line
size by not assigning the return value to a variable returning it
straight out.

* pr/1445:
  Fixed changes to match code conventions
  Fixed Profiler's unit tests bugs.

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-18 08:30:46 -04:00
weingartner 8355b586a0 Remove test cases duplicated code. 2016-04-12 16:05:18 -03:00
gabrascher 48888e7405 The goal of this PR is to review com.cloud.api.ApiServer class, with the
following actions:

Removed “_” in beginning of global variables names:
Variables was changed from “_<variablename>” to “<variablename>”, as
this convension (private veriables with “_”) is common in C++ but not in
Java.

Removed unused code from ApiServer:
- com.cloud.api.ApiServer.getPluggableServices():
	Unused method.
- com.cloud.api.ApiServer.getApiAccessCheckers():
	Unused method.

Methods and variables access level reviewed:
- com.cloud.api.ApiServer.handleAsyncJobPublishEvent(String, String,
Object):
	This method was private but the annotation @MessageHandler requests
public methods, as can be seen in
org.apache.cloudstack.framework.messagebus.MessageDispatcher.buildHandlerMethodCache(Class<?>),
which searches methods with the @MessageHandler annotation and changes
it to accessible (“setAccessible(true)”). Thus, there is no reason for
handleAsyncJobPublishEvent be a private method.

- Global variables and methods called just by this class (ApiServer)
were changed to private.

Changed variables and methods from static to non static (if possible):
As some variables/methods are used just by one object of this class
(instantiated by springer), they were changed to non static.

With that, calls from com.cloud.api.ApiServlet.ApiServlet() that used
static methods from ApiServer, was changed from
ApiServer.<staticMethodName> to _apiServer.<methodName> that refers to
the org.apache.cloudstack.api.ApiServerService interface. Thus, methods
com.cloud.api.ApiServer.getJSONContentType() and
com.cloud.api.ApiServer.isSecureSessionCookieEnabled() had to be
included in the interface (org.apache.cloudstack.api.ApiServerService,
interface implemented by class ApiServer).

However, com.cloud.api.ApiServer.isEncodeApiResponse() was keept static,
as its call hierarchy would have to be changed (more than planed for
this PR).
2016-04-12 15:46:07 -03:00
Will Stevens 0dcaf197b4 Merge release branch 4.8 to master
* 4.8:
  speedup iptables by prefetching the variables
2016-04-12 10:11:08 -04:00
Will Stevens f8e71b0235 Merge release branch 4.7 to 4.8
* 4.7:
  speedup iptables by prefetching the variables
2016-04-12 10:10:17 -04:00
Will Stevens 6f703c4cdc Merge pull request #1487 from kollyma/speedup_iptables_prefetch_variables
speedup iptables by prefetching the variables-- This PR is replacing speedup iptables setup #1449
-- Squashing commits and cleanup

PR against 4.7 as discussed with Remi Bergsma. This will speed up the iptables creation on the virtual router.

Testing showed the following:
with current code:
root@kvm704:~# time /usr/share/cloudstack-common/scripts/network/domr/router_proxy.sh vr_cfg.sh 169.254.1.176 -c /var/cache/cloud/VR-12f28879-de7e-44d2-8dbe-b93a04bd3ba4.cfg
real 2m56.401s
user 0m0.012s
sys 0m0.012s

modified version:
root@kvm704:~# time /usr/share/cloudstack-common/scripts/network/domr/router_proxy.sh vr_cfg.sh 169.254.1.176 -c /var/cache/cloud/VR-12f28879-de7e-44d2-8dbe-b93a04bd3ba4.cfg
real 1m35.762s
user 0m0.020s
sys 0m0.004s

* pr/1487:
  speedup iptables by prefetching the variables

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-12 10:09:18 -04:00
Will Stevens f313facb87 Merge release branch 4.8 to master
* 4.8:
  Additional exception logging for Cloudstack-9285
2016-04-12 08:58:38 -04:00
Will Stevens ece5e70167 Merge release branch 4.7 to 4.8
* 4.7:
  Additional exception logging for Cloudstack-9285
2016-04-12 08:57:38 -04:00
Will Stevens 8e3d7ee41c Merge pull request #1479 from myENA/9285_exception_log
Cloudstack-9285 exception log additionAfter discussion with @miguelaferreira on the previous PR related to Cloudstack-9285, we decided on adding additional exception logging for this issue.

After adding it, the logs look like this in our lab:

2016-04-07 15:44:03,298 WARN  [cloud.agent.Agent] (Agent-Handler-1:null) (logid:7225632a) NIO Connection Exception com.cloud.utils.exception.NioConnectionException: Connection closed with -1 on reading size.  <<-- new exception logging
2016-04-07 15:44:03,298 INFO  [cloud.agent.Agent] (Agent-Handler-1:null) (logid:7225632a) Attempted to connect to the server, but received an unexpected exception, trying again... << --original logging from previous PR.

* pr/1479:
  Additional exception logging for Cloudstack-9285

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-12 08:56:35 -04:00
Simon Weller 5f062f1b9e Additional exception logging for Cloudstack-9285 2016-04-11 17:05:45 -05:00
kollyma 0a01e82c23 speedup iptables by prefetching the variables 2016-04-11 20:58:03 +02:00
Koushik Das d1def0a730 Merge pull request #1287 from DaanHoogland/securityrules-cleanup
SecurityGroupRulesCmd code cleanupWrote a test and cleaned some duplicate code with the objective to evaluate the jenkins pull request process at builds.a.o
worthwhile to keep, IMHO.

* pr/1287:
  SecurityGroupRulesCmd code cleanup review comments handled
  deal with PMD warnings
  code cleanup
  security rules test
  remove autogenerated pydev files

Signed-off-by: Koushik Das <koushik@apache.org>
2016-04-11 21:49:57 +05:30
Will Stevens 67b4e66414 Merge release branch 4.8 to master
* 4.8:
  Improve ordering of fields of VPC router detail tab
2016-04-11 08:46:35 -04:00
Will Stevens 594fe53f6d Merge release branch 4.7 to 4.8
* 4.7:
  Improve ordering of fields of VPC router detail tab
2016-04-11 08:45:14 -04:00
Will Stevens 2d68893ee6 Merge pull request #1422 from remibergsma/ui-vpc-routers-improvement_47
Improve ordering of fields of VPC router detail tabThe field we use most are now on the top:
- name
- state
- hypervisor
- link local ip
- redundant state

The other fields are nice, but not needed most of the time.

Result:
![screen shot 2016-02-21 at 20 11 49](https://cloud.githubusercontent.com/assets/1630096/13204809/37ce63c0-d8d9-11e5-8861-35c1c1a406cf.png)

Before:
![vpc_router_details_before](https://cloud.githubusercontent.com/assets/1630096/13204811/41510f10-d8d9-11e5-850f-549a3333b063.png)

* pr/1422:
  Improve ordering of fields of VPC router detail tab

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-11 08:44:21 -04:00
Will Stevens 6dc514738f Merge release branch 4.8 to master
* 4.8:
  CLOUDSTACK-9297: delete snapshot without id is failing with Unable to determine the storage pool of the snapshot
2016-04-11 08:42:05 -04:00
Will Stevens 713c2f5dcc Merge release branch 4.7 to 4.8
* 4.7:
  CLOUDSTACK-9297: delete snapshot without id is failing with Unable to determine the storage pool of the snapshot
2016-04-11 08:41:25 -04:00
Will Stevens f33b4a1b68 Merge pull request #1441 from mike-tutkowski/4.7
CLOUDSTACK-9297 - Reworked logic in StorageSystemSnapshotStrategy and XenserverSnapshotStrategyThe ticket this PR fixes was opened because KVM-specific code had been added to the StorageSystemSnapshotStrategy class and that class' canHandle method was only prepared to handle managed storage being used with XenServer (and a case was hit for KVM that triggered a CloudRuntimeException to be thrown).

To solve the problem, I moved the KVM logic to the default snapshot strategy class, which is (unfortunately) named XenserverSnapshotStrategy.

I plan to rename XenserverSnapshotStrategy to something like DefaultSnapshotStrategy in 4.9.

My guess is that when XenserverSnapshotStrategy was originally written, it was written only for XenServer, but has since that time had its usage increased to support other hypervisors (with non-managed storage).

* pr/1441:
  CLOUDSTACK-9297: delete snapshot without id is failing with Unable to determine the storage pool of the snapshot

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-11 08:40:17 -04:00