74
74
$ .venv/bin/python juju-quickstart --help
79
The general steps for manual QA (until we get a continuous integration set up
80
with functional tests) should be run on trusty and saucy.
82
* Ensure juju-quickstart is installed from the juju-gui/quickstart-beta PPA.::
84
sudo add-apt-repository ppa:juju-gui/quickstart-beta
86
sudo apt install juju-quickstart
88
* Remove juju from the system.::
90
sudo apt-get remove --purge juju-core
92
* Verify LXC environments can boot from scratch, using a local bundle::
95
bzr branch lp:~charmers/charms/bundles/mediawiki/bundle $HOME/bundles/mediawiki
96
juju-quickstart -e local -n single $HOME/bundles/mediawiki
97
juju destroy-environment local -y
99
* Verify an environment that has already been bootstrapped is recogized and
100
the GUI is deployed::
102
juju bootstrap -e local
103
juju quickstart -e local bundle:mediawiki/single
104
juju destroy-environment local -y
76
108
Creating PPA releases
77
109
~~~~~~~~~~~~~~~~~~~~~
111
Due to an inconsistency of package names for the websocket package introduced
112
with trusty, the juju-quickstart packaging must be handled separately for
113
series before trusty and trusty and later. Consequently, there are two
114
packaging branches and two build recipes. The two packaging branches are:
116
* lp:~juju-gui/juju-quickstart/packaging-trunk, and
117
* lp:~juju-gui/juju-quickstart/packaging-pre-trusty
119
For the following instructions we'll use the -trunk version but the procedure
120
is the same for the -pre-trusty branch.
79
122
The packaging repository (including the ``debian`` directory) can be checked
80
out from lp:~juju-gui/juju-quickstart/packaging/, e.g.::
123
out from lp:~juju-gui/juju-quickstart/packaging-trunk, e.g.::
82
$ bzr branch lp:~juju-gui/juju-quickstart/packaging/ packaging
125
$ bzr branch lp:~juju-gui/juju-quickstart/packaging-trunk/ packaging-trunk
85
128
Check that the packaging version reflects the latest Quickstart version. The
86
129
packaging version can be found in the ``debian/changelog`` file present in the
99
142
to the packaging branch trunk, and follow the instructions below.
101
144
The recipe for creating packages is in
102
<https://code.launchpad.net/~juju-gui-charmers/+recipe/juju-quickstart-daily>.
145
<https://code.launchpad.net/~juju-gui-charmers/+recipe/juju-quickstart-trunk-daily>.
103
146
We currently publish beta releases on the Juju Quickstart Beta PPA: see
104
147
<https://launchpad.net/~juju-gui/+archive/quickstart-beta/+packages>.
105
148
When a beta release is ready to be published, we move over the packages from
107
150
<https://launchpad.net/~juju/+archive/stable>.
109
152
Packages depend on `python-jujuclient` and `python-websocket-client` to be
110
available. They are available in saucy, and they are also stored in our PPA in
111
order to support previous Ubuntu releases.
153
available. They are available in trusty and later, and they are also stored in
154
our PPA in order to support previous Ubuntu releases. Note we depend on
155
version 0.12.0 of python-websocket and that version is in the PPAs.
113
157
Creating PyPI releases
114
158
~~~~~~~~~~~~~~~~~~~~~~
116
160
Juju Quickstart is present on PyPI: see
117
161
<https://pypi.python.org/pypi/juju-quickstart>.
118
162
It is possible to register and upload a new release on PyPI by just running
119
``make release`` and providing your PyPI credentials.
163
``make release`` and providing your PyPI credentials. Note there are no
164
series-specific changes required for publishing to PyPI.
121
166
Updating application and test dependencies
122
167
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
169
214
Sometimes, while debugging, it is convenient to restart the builtin server
170
215
(which also empties the bundle deployments queue). To do that, run the
171
following in the Juju GUI machine:
216
following in the Juju GUI machine::
173
service guiserver restart
218
$ service guiserver restart