diff --git a/awsapi/pom.xml b/awsapi/pom.xml index 06c9d7e058a..3ab595211d4 100644 --- a/awsapi/pom.xml +++ b/awsapi/pom.xml @@ -266,6 +266,7 @@ mysql mysql-connector-java + ${cs.mysql.version} runtime diff --git a/client/pom.xml b/client/pom.xml index 897aa2cea20..b703cbe966f 100644 --- a/client/pom.xml +++ b/client/pom.xml @@ -109,6 +109,7 @@ mysql mysql-connector-java + ${cs.mysql.version} runtime diff --git a/server/pom.xml b/server/pom.xml index 1fd18319823..b1a5d3de484 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -50,6 +50,7 @@ mysql mysql-connector-java + ${cs.mysql.version} provided diff --git a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java index 9230f4ae729..4d94fc57d02 100755 --- a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java +++ b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java @@ -764,7 +764,7 @@ public class VirtualMachineManagerImpl implements VirtualMachineManager, Listene VirtualMachineTO vmTO = hvGuru.implement(vmProfile); cmds = new Commands(OnError.Stop); - cmds.addCommand(new StartCommand(vmTO)); + cmds.addCommand(new StartCommand(vmTO, dest.getHost())); vmGuru.finalizeDeployment(cmds, vmProfile, dest, ctx); diff --git a/tools/cli/cloudmonkey/cloudmonkey.py b/tools/cli/cloudmonkey/cloudmonkey.py index edb62ccc801..3bc87169f63 100644 --- a/tools/cli/cloudmonkey/cloudmonkey.py +++ b/tools/cli/cloudmonkey/cloudmonkey.py @@ -160,11 +160,11 @@ class CloudMonkeyShell(cmd.Cmd, object): elif 'type' in arg: print colored.green(arg), elif 'state' in arg or 'count' in arg: - print colored.yellow(arg), - elif 'id =' in arg: - print colored.cyan(arg), - elif 'name =' in arg: print colored.magenta(arg), + elif 'id =' in arg: + print colored.yellow(arg), + elif 'name =' in arg: + print colored.cyan(arg), else: print arg, else: @@ -203,7 +203,8 @@ class CloudMonkeyShell(cmd.Cmd, object): print printer def print_result_as_dict(result, result_filter=None): - for key in result.keys(): + for key in sorted(result.keys(), + key=lambda x: x!='id' and x!='count' and x): if not (isinstance(result[key], list) or isinstance(result[key], dict)): self.print_shell("%s = %s" % (key, result[key])) @@ -265,10 +266,18 @@ class CloudMonkeyShell(cmd.Cmd, object): command = "queryAsyncJobResult" requests = {'jobid': jobId} timeout = int(self.timeout) + pollperiod = 3 while timeout > 0: + progress = int((int(self.timeout) - timeout) / pollperiod ) + 1 + print '\r' + '.' * progress, + sys.stdout.flush() response = process_json(conn.make_request_with_auth(command, requests)) - result = response[response.keys()[0]] + responsekeys = filter(lambda x: 'response' in x, + response.keys()) + if len(responsekeys) < 1: + continue + result = response[responsekeys[0]] jobstatus = result['jobstatus'] if jobstatus == 2: jobresult = result["jobresult"] @@ -277,9 +286,10 @@ class CloudMonkeyShell(cmd.Cmd, object): jobresult["errortext"]) return elif jobstatus == 1: + print '\r', return response - time.sleep(4) - timeout = timeout - 4 + time.sleep(pollperiod) + timeout = timeout - pollperiod logger.debug("job: %s to timeout in %ds" % (jobId, timeout)) self.print_shell("Error:", "Async query timeout for jobid=", jobId) @@ -346,9 +356,9 @@ class CloudMonkeyShell(cmd.Cmd, object): if result is None: return try: - # Response is in the key "apiname+response" (lowercase) - self.print_result(result[api_name.lower() + 'response'], - field_filter) + responsekeys = filter(lambda x: 'response' in x, result.keys()) + for responsekey in responsekeys: + self.print_result(result[responsekey], field_filter) print except Exception as e: self.print_shell("🙈 Error on parsing and printing", e) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 6156f47be3a..e1c9c86a04f 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -2062,7 +2062,6 @@ div.detail-group.actions td { float: right; margin-top: 8px; display: inline-block; - background: url(../images/citrix-logo-darkbg.png) no-repeat 97% 8px; padding: 0 96px 0 0; } diff --git a/ui/scripts/network.js b/ui/scripts/network.js index c8979d05c48..4103c3e2b6e 100755 --- a/ui/scripts/network.js +++ b/ui/scripts/network.js @@ -867,9 +867,9 @@ hiddenTabs.push("addloadBalancer"); } - if (isVPC || isAdvancedSGZone || hasSRXFirewall) { + // if (isVPC || isAdvancedSGZone || hasSRXFirewall) { hiddenTabs.push('egressRules'); - } + // } return hiddenTabs; }, diff --git a/utils/pom.xml b/utils/pom.xml index e69c125ea47..c91688812f0 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -137,6 +137,7 @@ mysql mysql-connector-java + ${cs.mysql.version} test