117
|
|
|
Gary Poster |
10 years ago
|
|
|
116
|
|
|
Francesco Banconi |
10 years ago
|
|
|
115
|
|
|
Francesco Banconi |
10 years ago
|
|
|
114
|
|
Avoid installing from PPA if not required.
No longer add the juju-gui PPA by default: the external repository is added only if required, i.e. if the legacy server is used or if a branch is passed to juju-gui-source.
The only missing bit to make the charm work well from behind a firewall AFAICT is avoiding the release to be downloaded from Launchpad.
Also included the shelltoolbox file in the charm: unfortunately the python-shelltoolbox package is not available on precise. On the other hand, this allows for getting rid of the bootstrap_utils.py file, and the install hook now feels cleaner.
Refactoring + some magic removal on the backend framework. Now it should be less surprising, and also allows for more customizations, e.g. what I did in the install method.
Also added missing tests for the backend framework: those were required in order to increase our control over what's really happening in the backend "hooks".
Switched to the builtin Tornado server by default.
This diff is very big, I am sorry, but: - you can ignore the bootstrap_utils removal; - you can ignore the shelltoolbox.py file: it is just a copy of the one present in the raring python-shelltoolbox package; - a lot of code is tests, the rest of the code should be quite easy to follow.
QA: `make deploy` and watch the logs: - no PPA should be installed by default; - the deployment succeeds and the GUI works well; switch to builtin-server=false and watch the logs: - the PPA is installed (and then haproxy, apache...); - the config-change hook exits without errors and the GUI works well.
Tests: `make unittest` (I ran the functional tests myself).
Thank you!
R=gary.poster, rharding CC= https://codereview.appspot.com/14433049
|
Francesco Banconi |
10 years ago
|
|
|
113
|
|
|
Francesco Banconi |
10 years ago
|
|
|
112
|
|
|
Gary Poster |
10 years ago
|
|
|
111
|
|
|
Gary Poster |
10 years ago
|
|
|
110
|
|
|
Francesco Banconi |
10 years ago
|
|
|
109
|
|
|
Francesco Banconi |
10 years ago
|
|
|
108
|
|
GUI server: cancel deployment feature.
Added an API call for cancelling a pending deployment.
Also updated the bundles module documentation.
For this first implementation, I discussed with Gary a workaround to avoid scheduled deployments to be included in the ProcessPool executor's call queue: a time.sleep call is added to the queue right after a new deployment. This way, as described in the code, it is still possible to cancel a scheduled deployment job even if it is the first in the queue.
Tests: run `make unittest` from the root of this branch.
QA: - bootstrap a juju-core environment; - deploy the GUI from this branch (`make deploy`); - switch to the builtin server: `juju set juju-gui builtin-server=true`; - ensure the GUI is working well by visiting https://GUI-ADDRESS .
To test the deployer support and the "cancel deployment" feature, use the script in http://pastebin.ubuntu.com/6100815/ e.g.:
- download and save the Python script; - run it passing the GUI node address as first argument: `python start-deployer-cancel.py GUI-ADDRESS`.
The script does the following: 1) it logs in to the juju-core API server; 2) it starts/schedules three deployments; 3) it send two invalid Cancel requests; 4) it cancels the second deployment; 5) it shows the deployments status before and after the deployment deletion.
- if everything is ok, you should see an output like this: http://pastebin.ubuntu.com/6100861/ ; - you should also be able to check the deployment progress from the GUI; - when the two deployments are completed (it may take some minutes) you should see wordpress, mysql and mediawiki correctly deployed and displayed in the topology view; - visiting https://GUI-ADDRESS/gui-server-info you should see something like this: { "uptime": 970, "deployer": [ {"Status": "completed", "DeploymentId": 0, "Time": 1379062144}, {"Status": "cancelled", "DeploymentId": 1, "Time": 1379061766}, {"Status": "completed", "DeploymentId": 2, "Time": 1379062156} ], "apiversion": "go", "sandbox": false, "version": "0.2.0", "debug": false, "apiurl": "wss://ec2-50-17-116-51.compute-1.amazonaws.com:17070" }
That's all, thanks a lot for QAing this branch!
R=rharding, bac CC= https://codereview.appspot.com/13549046
|
Francesco Banconi |
10 years ago
|
|
|
107
|
|
|
Brad Crittenden |
10 years ago
|
|
|
106
|
|
|
Francesco Banconi |
10 years ago
|
|
|
105
|
|
|
Francesco Banconi |
10 years ago
|
|
|
104
|
|
|
Francesco Banconi |
10 years ago
|
|
|
103
|
|
|
Francesco Banconi |
10 years ago
|
|
|
102
|
|
|
Francesco Banconi |
10 years ago
|
|
|
101
|
|
|
Francesco Banconi |
10 years ago
|
|
|
100
|
|
|
Francesco Banconi |
10 years ago
|
|
|
99
|
|
|
Francesco Banconi |
10 years ago
|
|
|
98
|
|
|
Francesco Banconi |
10 years ago
|
|
|