lp:~huwshimi/juju-gui/background-drag

Created by Huw Wilkins and last modified
Get this branch:
bzr branch lp:~huwshimi/juju-gui/background-drag
Only Huw Wilkins can upload to this branch. If you are Huw Wilkins please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Huw Wilkins
Project:
juju-gui
Status:
Merged

Recent revisions

1218. By Huw Wilkins

Fixed tests.

1217. By Huw Wilkins

Fixed in Firefox

1216. By Huw Wilkins

Move background with service blocks when panning.

1215. By Huw Wilkins

Added scroll header collapse to charm details

On the sidebar details panel for charms and bundles I've added the header collapse and animation when you scroll the content.

R=jeff.pihach
CC=
https://codereview.appspot.com/34520043

1214. By Jeff Pihach

Displays the relation name for peer relations

R=benji
CC=
https://codereview.appspot.com/34120044

1213. By Gary Poster

Add authtoken support to the GUI

The authtoken support in this branch includes support for both a real environment and the sandbox. In writing this and testing it, I encountered some code that was not working, and some code that was not tested, and some code that was very difficult to test. This branch is utterly gigantic, for which I apologize. It includes the changes I needed to get everything else working. I should factor it out, now that I have figured out what needs to be done, but I'm a bit fatigued, so I'm asking for reviewer indulgence.

There are two ways you should QA. First, in the sandbox, delete the user and password from the config-debug file and then load the GUI in your browser using a URL like this: http://localhost:8888?authtoken=demoToken . This should log you in, remove the authtoken from the URL, and notify you that you used a token to authenticate. Find some other URLs, like in the charm browser, and copy them. Log out with the button on the top right. Paste the previous URL in to the browser, and then insert ?authtoken=demoToken in the URL. *Note that a querystring should come before a hash, so ?authtoken=demoToken#bws-whatever is correct, not the other way around.* Maybe do that log in, log out cycle a couple of times to try a few different URLs. Now log out and try a different token, like ?authtoken=badToken. It should send you to the login page with an appropriate error message.

Now it's time to QA a live environment. Here's how I suggest you do it.

1. In this branch, run BRANCH_IS_GOOD=1 make distfile . When it is finished, it will tell you what file it made.

2. Get a copy of the lp:~juju-gui/charms/precise/juju-gui/trunk/ branch if you don't have one already. If you do have one, make sure it is up to date.

3. mv the file you made in step 1 to the charm's releases directory. rm the old release in that directory.

4. juju bootstrap.

5. In the charm, run make deploy. Wait until it says it is done deploying the code.

6. Start up Python in your local machine. Edit the following code to include the address from step 5 and the appropriate password from your ~/.juju/environments.yaml file.

import itertools
import json
import pprint
import websocket
address = 'PUBLICADDRESS' # e.g. ec2-107-21-197-193.compute-1.amazonaws.com
password = 'YOURPASSWORD'
url = 'wss://{}:443/ws'.format(address)
ws = websocket.create_connection(url)
counter = itertools.count()
def process(request):
    request = request.copy()
    request['RequestId'] = counter.next()
    ws.send(json.dumps(request))
    pprint.pprint(json.loads(ws.recv()))

process(dict(Type='Admin', Request='Login', Params={'AuthTag': 'user-admin', 'Password': password}))
process(dict(Type='GUIToken', Request='Create', Params={}))

The last response should be something like this:

{u'RequestId': 2,
 u'Response': {u'Created': u'2013-11-25T20:11:41.624417Z',
               u'Expires': u'2013-11-25T20:13:41.624417Z',
               u'Token': u'e8ea8ac912fc4ef6a355e82bb65caf6d'}}

7. Now in your browser construct a url that has the GUI address from step 5 and the authtoken from step 6. It should look something like this:

https://PUBLICADDRESS/?authtoken=AUTHTOKEN

Go to this address. It should log you in as it did in the sandbox.

8. Try logging in and out with different methods to see if everything works as you expect.

Thank you very much!!!

R=matthew.scott, jeff.pihach
CC=
https://codereview.appspot.com/33290043

1212. By Jeff Pihach

Adds relation status to inspector relation panel

The overall relation status is now indicated on the inspector relation
panel using the same icons as the unit status. If any unit has a relation
error the entire relation is shown as in error.

R=gary.poster
CC=
https://codereview.appspot.com/33130043

1211. By Jeff Pihach

Adds ellipsis to unit list headers

The unit list headers could overflow pushing the chevron onto the next line
when the unit status name is too long. This branch maintains the unit number
and chevron in their appropriate places while limiting the length of the
unit type when closed.

R=gary.poster
CC=
https://codereview.appspot.com/32260044

1210. By Jeff Pihach

Display all unit status categories in unit list

The inspector unit list will now display all unit error types split out each
into their own section.

It now also has the ability to display all unit pending types but there are
other components which are holding this functionality back. To see it in
action load up the GUI with the 'simPend' flag. It will now show
'installing', 'dying' as well as 'pending'. This is just for illustrative
purposes.

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

1209. By Huw Wilkins

Add animations to browser

I had a bit of a realisation about how we could do open animations for the browser panels. It seems to QA accross browsers and even though the panels don't animate on close I think it's worth having.

I'm hoping this might be enough that we don't have to worry about animations on close...

There is one point which might be considered a bug in that the panels will animate in on page load instead of remaining in the open state. I think this is an OK trade off, but others may feel differently.

R=jeff.pihach
CC=
https://codereview.appspot.com/31930043

Branch metadata

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

Subscribers