Back up the Abiquo UI
In addition to regular backups, we recommend that you make a quick backup of the UI before enabling branding.
To back up the Abiquo UI:
Log in to a shell on the Abiquo server with a user with root permissions and make a copy of the UI folder
mkdir /opt/abiquo/quick_ui_backup tar cvfz /opt/abiquo/quick_ui_backup/ui_`date +%Y%m%d`.tar.gz /var/www/html/ui/
Upload themes and logos to the Abiquo UI
Upload an optional default theme to style the login screen and your enterprise themes, including the image files.
Note that the abicloudDefault folder contains the predefined default theme; do not overwrite this folder or the login screen will not display correctly.
Compress your theme folder
Log in to the Abiquo Server and copy your theme to theme folder
The theme folder is /var/www/html/ui/theme
For example, using wget from the Abiquo Server to a Linux machine
wget myuser@mymachine:~/Downloads/mytheme_base_theme.tar.gz /var/www/html/ui/theme
Move or copy any existing theme with this name to another folder name
cd /var/www/html/ui/theme mv my_custom_theme my_custom_theme_backup
Extract the theme (which will OVERWRITE any theme with the same name). For example, when the theme was compressed with tar and gzip
tar -zxvf my_custom_theme.tar.gz
Remember to check the file ownership and access settings, because the Abiquo Tomcat server will need to access the branding files
Edit UI configuration to add new themes to enterprise menu
To add new themes to the enterprise menu, edit the UI configuration:
Log in to a shell on the Abiquo server as a user with the appropriate permissions (e.g. root or sudo user)
Edit the client-config-custom.json file to add new enterprise themes
cd /var/www/html/ui/config vi client-config-custom.json
Edit the file and add the base theme and the custom themes as an element within the brackets { and }.
"client.themes": [ "abicloudDefault", "my_custom_theme" ]
You must add abicloudDefault or the user interface will not load properly.
Check your JSON file format with a JSON checker to ensure that the UI will load properly