Exporter functionality in `export.py` no longer uses Django to render pages, and instead generates its own `.json` files. Additionally, a configuration file is generated that can be consumed by the in-progress Angular frontend. Change-Id: I37b5be581dbd784fd009c1040422f1cadb009a3a
StackViz: Angular
A visualization utility to help analyze the performance of DevStack setup and Tempest executions.
Installation
Installation of the frontend requires Node.js and Gulp. On Ubuntu:
sudo apt-get install nodejs npm nodejs-legacy
sudo npm install -g gulp
Then, install the Node modules by running, from the project directory:
npm install
Usage - Development
A development server can be run as follows:
gulp dev
This will open a web browser and reload code automatically as it changes on the filesystem.
Usage - Production
The production application can be build using:
gulp prod
The result will be written to ./build and should be
appropriate for distribution. Note that all files are not required:
- Directory structure (
js/,css/,fonts/,images/): required. - Static resources (
fonts/,images/): required. - Core files (
index.html,js/main.js,css/main.css): required unless gzipped versions are used. - Gzipped versions of core files (
*.gz): not required, but preferred. Use instead of plain core files to save on disk usage and bandwidth. - Source maps (
js/main.js.map,js/main.js.map.gz): only required for debugging purposes.
Roadmap
Project split: All server-side components will be removed, and replaced with specialized data transformation tools.
- - Data sources and processing: stackviz Python project, with
-
stackviz-export used to generate JSON data files and configuration.
- Web interface:
- Will remain in this namespace
(
openstack-qa/stackviz). - Will decouple data processing from build process, allowing for distribution to nodes as a prebuilt static site.
- Data sources will be configured in in a
config.json. - Will support local and remote sources via REST/JSONP (pending API spec).
- Will remain in this namespace
(
Angular conversion: current codebase will be rewritten to use Angular.