lp://qastaging/~frankban/charms/precise/juju-gui/use-env-name

Created by Francesco Banconi and last modified
Get this branch:
bzr branch lp://qastaging/~frankban/charms/precise/juju-gui/use-env-name
Only Francesco Banconi can upload to this branch. If you are Francesco Banconi please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Francesco Banconi
Status:
Development

Recent revisions

159. By Francesco Banconi

Changes as per review.

158. By Francesco Banconi

Checkpoint.

157. By Francesco Banconi

Update deployer to 0.3.1

Update the juju-deployer package to the newer version.
As a consequence, improve the bundle deployment feedback.

Tests: `make unittest`.

QA:
1) deploy the charm by bootstrapping juju and
then running `make deploy`.

2) wait for the service to be ready/started.

3) Open the GUI.

4) Try to deploy this bundle file:
http://pastebin.ubuntu.com/6844154/

5) You should see an error in the GUI:
The deployment errored: Invalid config charm
cs:~openstack-ubuntu-testing/precise/mysql-4
no-such-option=42

6) Try to deploy this bundle file:
http://pastebin.ubuntu.com/6844187/

7) You should see an error in the GUI:
The deployment errored: Invalid relation in config,
service no-such not found,
rel mediawiki:db <-> no-such:db

Done, thank you!

R=gary.poster, jeff.pihach
CC=
https://codereview.appspot.com/55230044

156. By Francesco Banconi

Add putcharm support to the GUI server.

Implement a proxy handler propagating requests/responses from
the GUI to the real juju-core HTTPS endpoint.

Tests: `make unittest`.

QA:
QA must be done using juju-core trunk.
I used revno 2265 for the following.

1) Bootstrap a juju environment, deploy the GUI charm
and get the latest GUI sources:
    juju bootstrap
    make deploy
    juju set juju-gui juju-gui-source="https://github.com/juju/juju-gui.git"

2) wait for the GUI to be ready
(using `juju debug-log` or `tailf ~/.juju/local/log/unit-juju-gui-0.log`
if you bootstrapped a local environment).
This step takes a while.

3) Open the GUI with Chrome and log in. Open the network tab of the
Chrome JavaScript console and refresh.

4) In the terminal, open and observe the GUI server logs:
    juju ssh juju-gui/0 sudo tailf /var/log/upstart/guiserver.log

5) Drag and drop a zipped archive of a local charm.
Charm files (e.g. metadata.yaml) must be on the zip root.
You can use an haproxy archive I used for tests:
it is available in http://ubuntuone.com/3FRDrcjSECyHp3xLmMIZLY

At this point you should see a 200 response in the gui server logs,
and a notification in the GUI itself.
Moreover, if you inspect the request from the JavaScript console,
you should see a response including info about the charm you
just uploaded: if you used haproxy, you should see
{"CharmURL":"local:precise/haproxy-0"}.

Done!. If you want additional fun, you can now try to
execute the following in the Chrome console:
    app.env.deploy('local:precise/haproxy-0', 'myservice', null, null, 1)
Replace "local:precise/haproxy-0" with the charm URL you used.

In a couple of seconds you should see the "myservice" box appearing
in a pending state. Congratulations, you deployed a local
charm from the GUI! :-)

6) Destroy the environment.

R=gary.poster, jeff.pihach
CC=
https://codereview.appspot.com/57820043

155. By Brad Crittenden

Bump juju-deployer to pre-release fix.

New version of juju-deployer handles constraints with size specifiers like
'4G'.

R=frankban
CC=
https://codereview.appspot.com/49720044

154. By Richard Harding

Add a log when skipping updating juju-gui-source

153. By Brad Crittenden

Bump juju-deployer to pre-release fix.

New version of juju-deployer handles constraints with size specifiers like
'4G'.

R=frankban
CC=
https://codereview.appspot.com/49720044

152. By Francesco Banconi

Merged back the new charm release.

151. By Francesco Banconi

Updated to the newest juju-gui release.

150. By Benji York

Ignore inodes when generating etags.

Since the inode for a given file will vary across servers, using inode to
generate etags when there are multiple back-end servers means that the etags
for a given URL will vary depending on which back-end fulfilled the request.

R=benji-york
CC=
https://codereview.appspot.com/55210044

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp://qastaging/charms/juju-gui
This branch contains Public information 
Everyone can see this information.