lp:~frankban/juju-quickstart/improve-unexpected-fields

Created by Francesco Banconi and last modified
Get this branch:
bzr branch lp:~frankban/juju-quickstart/improve-unexpected-fields
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
Project:
juju-quickstart
Status:
Merged

Recent revisions

39. By Francesco Banconi

Merged trunk.

38. By Francesco Banconi

Checkpoint.

37. By Francesco Banconi

Tests for the unexpected field.

36. By Francesco Banconi

Fix typo.

35. By Francesco Banconi

Implement the unexpected field.

34. By Francesco Banconi

Implement the missing model bits.

Thanks to Gary for his help in defining
this approach with me in several pre-imp
calls.

See the envs module docstring for a
description of the functions implemented
in this branch.

This branch also includes some
fixes/improvements to the fields module,
e.g. the handling of default and unset values.

Tests: make check
No QA.

R=matthew.scott, benji
CC=
https://codereview.appspot.com/41350043

33. By Francesco Banconi

Env management: fields.

See the module docstring for an
explanation of how those fields
will be used.

Tests: `make check`.
No QA required.

R=bac, gary.poster
CC=
https://codereview.appspot.com/37820046

32. By Francesco Banconi

Implement base models for environments.

This is a preparation branch for the
environments management functionality.

The envs module includes a docstring describing
how those new functions will be used.

Tests: `make check`.
No QA required.

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

31. By Madison Scott-Clary

Generate SSH keys if none exist.

This is step 2: provide the user with the option to let Quickstart generate SSH keys.

Note: this is now an incremental branch, with better checks on ssh identities in the future; there's a card to represent this on the kanban board.

To test: make check

to QA:
1. mv ~/.ssh ~/.ssh.old
2a. .venv/bin/python juju-quickstart # should ask if you want to generate; say no, should exit
2b. .venv/bin/python juju-quickstart # should ask if you want to generate; say yes, shoud prompt for password, then continue, generating a new key
3. mv ~/.ssh.old ~/.ssh
4. ssh-agent
5. ssh-add
6. .venv/bin/python juju-quickstart # should bootstrap

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

30. By Francesco Banconi

Use unicode everywhere in the application.

My apologies for this branch, the diff is long
and the contents themself are boring: I am very
sorry. Anyway, I think this pushes quickstart
in a better place re: unicode/bytes handling.

Everything here is almost mechanical, including
the annoying problem of having to store encoded
strings in the exceptions: please let me know
if you have any suggestions, or if I am missing
something.

The serializers module is new stuff: it allows
for loading YAML strings as unicode and for
dumping dictionaries in the extended format
(used e.g. by juju-core in the envs.yaml file).

To QA this, just use quickstart as usual, deploying
a bundle or spinning up an environment.
Then try to break it passing exotic strings as
options, e.g.:
.venv/bin/python juju-quickstart --gui-charm-url ☢
(FWIW the above character is \xe2\x98\xa2).
This obviously fail, but the error should not
be unicode related.

Thank you and sorry again.

R=matthew.scott, rharding
CC=
https://codereview.appspot.com/38500043

Branch metadata

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