lp://staging/~frankban/charms/precise/juju-gui/separate-staging-debug

Created by Francesco Banconi and last modified
Get this branch:
bzr branch lp://staging/~frankban/charms/precise/juju-gui/separate-staging-debug
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

106. By Francesco Banconi

Checkpoint.

105. By Francesco Banconi

GUI server deployer: update the Import request.

Updated the Import deployer request so that the Name
field is optional if the YAML one contains just one bundle.

R=matthew.scott
CC=
https://codereview.appspot.com/13313044

104. By Francesco Banconi

The GUI no longer run from the charm directory.

Updated the GUI and (under pyJuju) the API agent
so that now the files are served from /var/lib/juju-gui.

That directory is also removed when the service is
destroyed. To do that, this branch introduces
the Backend.destroy method, called in the stop
hook.

QA: deploy the charm using this branch,
check everything is ok, check that the GUI files
are stored in /var/lib/juju-gui.
Then destroy the juju-gui service and ensure
that directory is cleaned up.

R=benjamin.saller
CC=
https://codereview.appspot.com/13309044

103. By Francesco Banconi

Merged charmers trunk.

102. By Francesco Banconi

Merged charmers trunk.

101. By Francesco Banconi

Fix WebSocket URL in pyJuju.

The WS URL must include the /ws path when
the GUI is connected to rapi.

R=
CC=
https://codereview.appspot.com/13432043

100. By Francesco Banconi

Fix for the upgrade-charm story.

The builtin-server option is not included
in the previous configuration.

R=
CC=
https://codereview.appspot.com/13300045

99. By Francesco Banconi

Enable sandbox mode in juju-core environments.

Also added a sandbox functional test and
improved the backend framework unit tests.

R=rharding
CC=
https://codereview.appspot.com/13424043

98. By Francesco Banconi

Fix Chrome dev WebSocket sub-protocol error.

Also updated the way we suggest to install
system dependencies.

Tests: `make unittest` from the branch root.

QA:

- Install the system dependencies by running the
  following command from the root of this branch:

  make sysdeps

- Bootstrap a juju-core environment:

  juju bootstrap --upload-tools

- From the root of this branch, deploy and expose
  the GUI running the following:

  make deploy

  The command above will exit when the GUI is ready.

- Switch to the GUI server, then wait a minute for the
  server to be ready:

  juju set juju-gui builtin-server=true

- With a development version of the Chrome browser
  (>=30), visit the GUI and check everything works well.

R=rharding
CC=
https://codereview.appspot.com/13386043

97. By Francesco Banconi

GUI server: logging option and sandbox mode.

This branch includes three changes:
- the GUI server logging level can now be
  set using a charm option;
- added support for sandbox mode: when the GUI
  is run in sandbox mode, the GUI server avoids
  listening for WebSocket connections;
- fixed a bug preventing the builtin server to work
  when the secure charm option was set to false.

Tests: `make unittest` from the branch root.

QA:

In the steps below I assume your default juju is
juju-core and your juju-core env is named "go".

- Bootstrap a juju-core environment:

  juju bootstrap -e go --upload-tools

- From the root of this branch, deploy and expose
  the GUI running the following:

  make deploy JUJU_ENV=go

  The command above will exit when the GUI is ready.

- Switch to the GUI server, then wait a minute for the
  server to be ready:

  juju set -e go juju-gui builtin-server=true

- In a separate terminal tab, start watching the GUI server log
  (the first line should be "starting Juju GUI server v0.1.0"):

  juju ssh -e go 1 sudo tailf /var/log/upstart/guiserver.log

- Use the browser to navigate the GUI, log in and check
  everything works fine.

- Set the logging level to debug, then wait a minute for the
  cahnge to be applied:

  juju set -e go juju-gui builtin-server-logging=debug

- Now the contents of the WebSocket messages should be
  included in the GUI server logs.

- Switch to HTTP mode, then wait a minute for the
  cahnge to be applied:

  juju set -e go juju-gui secure=false

- Visit the GUI using http:// and check everything
  works fine.

  Note that at this time it is impossible to QA sandbox
  mode in a juju-core env. This will be fixed in a future
  branch.

R=rharding, gary.poster
CC=
https://codereview.appspot.com/13340043

Branch metadata

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