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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
|
# This file is part of the Juju GUI, which lets users view and manage Juju
# environments within a graphical interface (https://launchpad.net/juju-gui).
# Copyright (C) 2012-2014 Canonical Ltd.
#
# This program is free software: you can redistribute it and/or modify it under
# the terms of the GNU Affero General Public License version 3, as published by
# the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
# SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
options:
juju-gui-source:
description: |
Where to install Juju GUI from. Possible values the following.
- 'local' (default): The latest local release will be deployed. Releases
are stored in the releases directory of this charm.
- 'stable': The latest release from the "stable" series will be deployed.
- 'develop': The latest, in development, version from the Git repository.
- a specific release version (e.g '0.1.0' or '0.1.0+build.1'): The
specified stable version will be deployed. A suitable release is
looked up in the local releases repository (see the "local" choice
above). If not found locally, the release will be downloaded from
Launchpad.
- a Git branch (e.g. 'https://github.com/juju/juju-gui.git' or
'https://github.com/mitechie/juju-gui.git updated-test-runner'): A
release will be created and deployed from the specified Git
repository. You can include a branch name or a specific commit SHA
after the url to the Git repository to deploy that specific commit
point. You may instead specify a commit SHA: (e.g.
'https://github.com/mitechie/juju-gui.git @de5e61bf9fa') which will
clone the git repository and then check out the specified commit
before building the release.
- a URL: The release found at the given URL (ex: http://...) will be deployed.
type: string
default: local
juju-gui-debug:
description: |
Run Juju GUI in debug mode, serving the uncompressed GUI source files.
type: boolean
default: false
juju-gui-console-enabled:
description: |
Whether or not the console should be enabled for the browser.
type: boolean
default: false
command-log-file:
description: |
The log file where stdout and stderr should be sent for all commands
that are run by charm hooks.
type: string
default: /var/log/juju/juju-gui.log
ssl-cert-path:
description: |
The path to the directory where the SSL certificates are stored.
type: string
default: /etc/ssl/juju-gui
ssl-cert-contents:
description: |
The contents of the certificate file to be used in SSL connections to
the GUI. Both ssl-cert-contents and ssl-key-contents must be provided.
If not, cetificates will be automatically generated.
type: string
ssl-key-contents:
description: |
The contents of the private key file to be used in SSL connections to
the GUI. Both ssl-cert-contents and ssl-key-contents must be provided.
If not, cetificates will be automatically generated.
type: string
login-help:
description: |
The help text shown to the user on the login screen. If not provided, a
default message is used, suggesting how to find the login credentials.
type: string
read-only:
description: |
Whether or not the GUI is in read-only mode. Note that read-only mode is
advisory, and enforced only in the client. If someone can access the
websocket and has the password, they can send commands over the
websocket to mutate the environment.
type: boolean
default: false
serve-tests:
description: |
Whether or not the GUI unit tests are exposed. If this option is
enabled, unit tests can be run in the browser by visiting the URL
"https://[Juju GUI address]/test/".
type: boolean
default: false
secure:
description: |
Set to false to serve the GUI over an insecure HTTP connection.
Do not set unless you understand and accept the risks.
type: boolean
default: true
password:
description: |
If given, the password to use for the environment to immediately
connect. Do not set unless you understand and accept the risks.
type: string
sandbox:
description: |
Run using an in-memory sandbox rather than a real Juju backend. Sandbox
is a client side construct running entirely in the client. Sandbox does
not currently support imported environment simulation.
type: boolean
default: false
charmworld-url:
description: |
The URL of the charm catalog site ("charmworld") from which charm
catalog data will be drawn.
type: string
default: https://manage.jujucharms.com/
repository-location:
description: |
The charm depends on several software packages that are not packaged in
Ubuntu. In order to ensure that only versions known to work with our
charm are used, there is a single PPA where all packages are kept. The
juju-gui-charmers team supports 'stable' and 'devel' versions. Only
stable should be used for production. For enterprise deployments that
do not allow access to resources outside of their control, the location
can be any specification as long as it is recognizable by
'add-apt-repository'.
type: string
default: ppa:juju-gui-charmers/stable
ga-key:
description: |
The Google Analytics key to use. Set to blank to disable analytics.
The team developing the Juju GUI benefits from understanding how
different deployments use the tool. By keeping the default key value,
anonymized usage data is reported back using Google Analytics. The type
of data collected includes the charms that are deployed and the number
of units per service. Use of analytics is optional but we hope you will
allow us to improve our tool based on your experience.
type: string
default: UA-41463568-2
show-get-juju-button:
description: |
There are deployment modes for Juju GUI which are not intended as regular
use mode. In these cases, login/logout are disabled and instead there is
a link to juju.ubuntu.com
type: boolean
default: false
builtin-server:
description: |
Enable the built-in server, disabling both haproxy and Apache.
This is a temporary option: the built-in server will be
the only server in the future.
type: boolean
default: true
builtin-server-logging:
description: |
Set the GUI server log level. Possible values are debug, info, warning
and error. The log file is placed in /var/log/upstart/guiserver.log.
type: string
default: info
nagios_context:
description: |
Used by the nrpe-external-master subordinate charm.
A string that will be prepended to instance name to set the host name
in nagios. So for instance the hostname would be something like:
juju-myservice-0
If you are running multiple environments with the same services in them
this allows you to differentiate between them.
type: string
default: "juju"
cached-fonts:
description: |
Configure the GUI to use locally cached fonts, rather than the Google CDN
as supplied by the Google fonts API. The CDN is faster in almost every
circumstance except local (LXC) environments, and so it is the default;
but if a browser is running the GUI on a closed network, using cached
fonts will let the GUI load much faster and render properly.
type: boolean
default: false
|