~bcsaller/juju-gui/graph-component

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
Developer Install
-----------------

 Juju GUI uses nodejs based development tools.

 You'll need nodejs & npm from the ppa::

sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs npm

 The linter will be installed locally per branch, but if you want editor
 integration, you may want to install jshint globally in your system.

sudo npm install -g jshint

 For building the docs, you also need sphinx.

sudo apt-get install python-sphinx

 The gui frontend can be installed with::

bzr branch lp:juju-ui trunk
cd trunk
make server


 You'll also need to deploy a juju environment with REST api
 access. Currently that work resides in a pipeline of juju
 branches. The recommended branch to utilize as a server is
 ``lp:~hazmat/juju/rapi-delta``.


 You can utilize it with any environment, but for dev purposes, a
 local environment works well. One environment option specific to this
 branch is the api-port. A sample configuration appropriate::

default: dev
environments:
  dev:
    type: local
    data-dir: /home/kapil/.juju/local
    admin-secret: b3a5dee4fb8c4fc9a4db04751e5936f4
    default-series: precise
    juju-origin: ppa
    api-port: 8081

  Note juju-origin is set to the ppa, the api server runs outside of
  the container, and is launched using whichever branch your using.

  Also note the api-port should be spec'd at 8081, which the gui's
  initial environment connection currently defaults to.

  You'll need to bootstrap the local environment, and deploy one
  service. The api server needs access to the provisioning credentials
  which are lazy initialized in juju upon usage.

  After which the gui should be functional (it automatically polls the
  api server for establishing a websocket).


Running unit tests.
-------------------

 xdg-open test/index.html


Documentation
-------------

Generated JavaScript documentation is available in the yuidoc directory.  Start
with the index.html file.  You can view the docs by running this command::

    xdg-open yuidoc/index.html

To regenerate the docs run this command::

    make yuidoc

The documentation for yuidoc markup is at http://yui.github.com/yuidoc/syntax/.


Running lint
------------

 jshint --config=jshint.config `bzr ls -RV -k file | grep -v assets/`


Style
-----

See the docs/style-guide.rst file for the project style guide.