Skip to content

Commit 7c8a0e4

Browse files
Pearl1594Pearl Dsilvadavidjumaniyadvr
authored
Added basic and advanced customization sections to the primate doc (#142)
* Added basic and advanced customization sections to the primate doc * Additional changes * Redirecting to github for advanced customization * minor fixes * Adding Basic Zone Deployment to missing features * Update primate.rst Co-authored-by: Pearl Dsilva <pearl.dsilva@shapeblue.com> Co-authored-by: davidjumani <dj.davidjumani1994@gmail.com> Co-authored-by: Rohit Yadav <rohit.yadav@shapeblue.com>
1 parent f273756 commit 7c8a0e4

File tree

1 file changed

+118
-42
lines changed

1 file changed

+118
-42
lines changed

source/installguide/primate.rst

Lines changed: 118 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@
1313
specific language governing permissions and limitations
1414
under the License.
1515
16-
:ref:`primate-install-guide`
17-
1816
Primate Guide
1917
=============
2018

@@ -29,16 +27,8 @@ and Ant Design for Apache CloudStack.
2927
:alt: alternate text
3028
:align: left
3129

32-
With Apache CloudStack 4.14, a technical preview of Primate is proposed that
33-
users can evaluate. The technical preview release is not an officially voted
34-
release by the Apache CloudStack project but offers a snapshot build of Primate
35-
for users for testing and evaluation. The official Primate GA is expected with
36-
the next CloudStack release where the legacy UI will be deprecated, and the
37-
legacy UI will be removed in an eventual major CloudStack release.
38-
39-
.. parsed-literal::
40-
41-
NOTE: Primate tech-preview is not suitable to run in production environments.
30+
Primate GA was released with CloudStack 4.15, where the legacy UI is deprecated,
31+
and will be removed in an eventual major CloudStack release.
4232

4333
`User participation in the community mailing lists
4434
<http://cloudstack.apache.org/mailing-lists.html>`_ is encouraged. Users may
@@ -48,29 +38,30 @@ Requirements
4838
~~~~~~~~~~~~
4939

5040
Primate uses API auto-discovery to discover APIs allowed for a logged-in user
51-
and creates navigation and views based on that.
41+
and creates navigation and views based on that, and requires the following:
5242

53-
- Apache CloudStack 4.13.1.0 or later
54-
- API auto-discovery (listApis enabled)
55-
- All modern browsers that are `ES5-compliant <https://github.com/vuejs/vue#browser-compatibility>`_
43+
- Apache CloudStack 4.15 or later
44+
- API discovery (listApis) enabled
45+
- Modern browsers that are `ES5-compliant <https://github.com/vuejs/vue#browser-compatibility>`_
5646

57-
In theory Primate can work with any older version of CloudStack.
58-
However, several Primate list views require API pagination support, some of which are
59-
available starting Apache CloudStack 4.13.1.0.
47+
In theory Primate can work with any older version of CloudStack that supports
48+
API discovery. However, several Primate list views require API pagination support,
49+
some of which are available starting Apache CloudStack 4.15 as well as several other
50+
API improvements which may not be available prior to Apache CloudStack 4.15.
6051

6152
Installation on CentOS
6253
~~~~~~~~~~~~~~~~~~~~~~
6354

64-
Users running management server (4.13 or above) on CentOS can setup the
65-
following Primate tech-preview repository:
55+
Users running management server (4.15 or above) on CentOS can setup the
56+
following Primate repository:
6657

6758
.. parsed-literal::
6859
6960
rpm --import https://download.cloudstack.org/primate/release.asc
70-
cat << EOF > /etc/yum.repos.d/cloudstack-primate-tech-preview.repo
71-
[cloudstack-primate-tech-preview]
61+
cat << EOF > /etc/yum.repos.d/cloudstack-primate.repo
62+
[cloudstack-primate]
7263
name=cloudstack
73-
baseurl=https://download.cloudstack.org/primate/testing/preview/centos/
64+
baseurl=https://download.cloudstack.org/primate/centos/
7465
enabled=1
7566
gpgcheck=1
7667
gpgkey=https://download.cloudstack.org/primate/release.asc
@@ -89,12 +80,12 @@ management-server-host:8080/client/primate using any modern browser.
8980
Installation on Ubuntu
9081
~~~~~~~~~~~~~~~~~~~~~~
9182

92-
Users running CloudStack management server (4.13 or above) on Ubuntu can setup the following Primate tech-preview repository:
83+
Users running CloudStack management server (4.15 or above) on Ubuntu can setup the following Primate repository:
9384

9485
.. parsed-literal::
9586
9687
apt-key adv --keyserver keys.gnupg.net --recv-keys BDF0E176584DF93F
97-
echo deb https://download.cloudstack.org/primate/testing/preview/debian / > /etc/apt/sources.list.d/cloudstack-primate-tech-preview.list
88+
echo deb https://download.cloudstack.org/primate/debian / > /etc/apt/sources.list.d/cloudstack-primate.list
9889
9990
Next, install Primate:
10091

@@ -114,19 +105,19 @@ Primate archives are tarballs of single-page app builds. They can be simply
114105
downloaded and extracted to the management server webapp directory or hosted
115106
with a custom webserver.
116107

117-
Users can download the builds from https://download.cloudstack.org/primate/testing/preview/archive/
108+
Users can download the builds from https://download.cloudstack.org/primate/archive/
118109

119110
Using Docker
120111
~~~~~~~~~~~~
121112

122-
Users can use docker builds of the tech preview from https://hub.docker.com/r/apache/cloudstack-primate
113+
Users can use docker builds of Primate from https://hub.docker.com/r/apache/cloudstack-primate
123114

124115
For example:
125116

126117
.. parsed-literal::
127118
128-
docker pull apache/cloudstack-primate:tech-preview
129-
docker run -ti --rm -p 8080:80 -v $(pwd)/nginx:/etc/nginx/conf.d:ro apache/cloudstack-primate:tech-preview
119+
docker pull apache/cloudstack-primate:latest
120+
docker run -ti --rm -p 8080:80 -v $(pwd)/nginx:/etc/nginx/conf.d:ro apache/cloudstack-primate:latest
130121
131122
Example nginx config:
132123

@@ -146,18 +137,103 @@ Example nginx config:
146137
}
147138
}
148139
140+
Basic Customization in CloudStack Primate
141+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
142+
Users can now customize the CloudStack's user interface by means of a configuration file at /usr/share/cloudstack-management/webapp/primate/config.json which can be used to modify the theme, logos, etc. to align to one's requirement.
143+
144+
To change the logo, login banner, error page icon, etc. the following details can be edited in config.json:
145+
146+
.. parsed-literal::
147+
148+
"logo": "assets/logo.svg",
149+
"banner": "assets/banner.svg",
150+
"error": {
151+
"404": "assets/404.png",
152+
"403": "assets/403.png",
153+
"500": "assets/500.png"
154+
}
155+
156+
where,
157+
158+
- logo: changes the logo top-left side image.
159+
- banner: changes the login banner image.
160+
- error.404: changes the image of error Page not found.
161+
- error.403: changes the image of error Forbidden.
162+
- error.500: changes the image of error Internal Server Error.
163+
164+
Customization of themes is also possible, such as, modifying banner width, general color, etc. This can be done by editing the "theme" section of the config.json file:
165+
166+
.. parsed-literal::
167+
168+
"theme": {
169+
"@primary-color": "#1890ff",
170+
"@link-color": "#1890ff",
171+
"@processing-color": "#1890ff",
172+
"@success-color": "#52c41a",
173+
"@warning-color": "#faad14",
174+
"@error-color": "#f5222d",
175+
"@font-size-base": "14px",
176+
"@heading-color": "rgba(0, 0, 0, 0.85)",
177+
"@text-color": "rgba(0, 0, 0, 0.65)",
178+
"@text-color-secondary": "rgba(0, 0, 0, 0.45)",
179+
"@disabled-color": "rgba(0, 0, 0, 0.25)",
180+
"@border-color-base": "#d9d9d9",
181+
"@border-radius-base": "4px",
182+
"@box-shadow-base": "0 2px 8px rgba(0, 0, 0, 0.15)",
183+
"@logo-width": "256px",
184+
"@logo-height": "64px",
185+
"@banner-width": "700px",
186+
"@banner-height": "110px",
187+
"@error-width": "256px",
188+
"@error-height": "256px"
189+
}
190+
191+
where,
192+
193+
- @primary-color: changes the major background color of the page (background button, icon hover, etc).
194+
- @success-color: changes success state color.
195+
- @processing-color: changes processing state color. Exp: progress status.
196+
- @warning-color: changes warning state color.
197+
- @error-color: changes error state color.
198+
- @heading-color: changes table header color.
199+
- @text-color: change in major text color.
200+
- @text-color-secondary: change of secondary text color (breadcrumb icon).
201+
- @disabled-color: disable state color (disabled button, switch, etc).
202+
- @border-color-base: change in major border color.
203+
- @logo-width: change the width of the logo top-left side.
204+
- @logo-height: change the height of the logo top-left side.
205+
- @banner-width: changes the width of the login banner.
206+
- @banner-height: changes the height of the login banner.
207+
- @error-width: changes the width of the error image.
208+
- @error-height: changes the height of the error image.
209+
210+
Some assorted primary theme colours:
211+
212+
- Blue: #1890FF
213+
- Red: #F5222D
214+
- Yellow: #FAAD14
215+
- Cyan: #13C2C2
216+
- Green: #52C41A
217+
- Purple: #722ED1
218+
219+
Advanced Customisation
220+
~~~~~~~~~~~~~~~~~~~~~~
221+
222+
Primate advanced customisation is possible only by changing JavaScript based config
223+
files which define rules for sections, names, icons, actions and components and by
224+
building primate from source available on the `cloudstack-primate
225+
<https://github.com/apache/cloudstack-primate>`_
226+
repository. Advanced customisation may require some experience in JavaScript and VueJS,
227+
a development and customisation guide is available `here
228+
<https://github.com/apache/cloudstack-primate/blob/master/docs/development.md>`_.
229+
149230
Known Issues and Missing Features
150231
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
151232

152-
- Support for network service providers
153-
- Support for S3 based secondary storage
154-
- Full support for all Quota plugin views
155-
- Group actions for events, alerts and instances
156-
- Metrics view cell-colouring
157-
- Authorisation management for SAML users
158-
- Filter by feature for searching
159-
- Guest network LB support for SSL certificate
160-
- Not all translations are fully migrated from legacy UI to Primate.
161-
- Feature and enhancements added in 4.14 except CloudStack Kubernetes Service and Backup and Recovery
162-
163-
Please also refer to open issues on https://github.com/apache/cloudstack-primate/issues
233+
- Deployment of a basic zone is not supported. However, existing basic zones will continue to be supported as well as all the actions and views of various resources within the existing basic zone.
234+
- Support for S3 based secondary storage.
235+
- NFS secondary staging storage list/resource view and add/update actions.
236+
- SSL certificate for Guest network LB rule.
237+
- Regions.
238+
239+
Primate open issues are listed on https://github.com/apache/cloudstack-primate/issues

0 commit comments

Comments
 (0)