Performance and debugging visualization for DevStack and Tempest
Go to file
Tim Buckley df8c054819 Add data gulp task.
This adds a new Gulp task to automatically include `app/data` in
dev builds if it exists. This directory will contain sample data
files for use during development and outputs them to `build/data`.
Additionally, this integrates with browser-sync and will
automatically reload open browsers as testing datasets are
changed.

Change-Id: Ie1578682d11e36bd6142b9d326f50a547aa4613b
2015-09-28 11:50:07 -06:00
app Add initial Angular boilerplate files. 2015-09-25 16:26:44 -06:00
doc/source Convert README to rst, and add documentation template from cookiecutter 2015-08-03 10:15:34 -06:00
gulp Add data gulp task. 2015-09-28 11:50:07 -06:00
stackviz Fix the pep8 issues 2015-09-15 13:48:51 -04:00
test Add initial Angular boilerplate files. 2015-09-25 16:26:44 -06:00
.bowerrc switch from browserify to plain bower, add initial template from bootstrap 2015-07-14 15:13:04 -06:00
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 14:55:37 +00:00
.eslintignore Add eslint configuration 2015-08-03 11:20:32 -06:00
.eslintrc Add eslint configuration 2015-08-03 11:20:32 -06:00
.gitignore Add data gulp task. 2015-09-28 11:50:07 -06:00
.gitreview Add .gitreview file 2015-09-14 15:59:30 -06:00
.jshintrc Add initial Angular boilerplate files. 2015-09-25 16:26:44 -06:00
.testr.conf Add more test cookiecutter template items 2015-08-03 11:26:08 -06:00
babel.cfg Add stub unit tests from cookiecutter 2015-08-03 10:37:55 -06:00
bower.json Add jquery-ui to bower.json 2015-08-11 13:52:20 -06:00
CONTRIBUTING.rst Add more test cookiecutter template items 2015-08-03 11:26:08 -06:00
gulpfile.js Add initial Angular boilerplate files. 2015-09-25 16:26:44 -06:00
HACKING.rst Add .gitignore entries, HACKING.rst, and __init__.py contents from cookiecutter 2015-08-03 10:01:01 -06:00
karma.conf.js Minor adjustments to karma config and npm packages 2015-08-03 15:16:26 -06:00
LICENSE Add some missing base files from cookiecutter (LICENSE, manifest, setuptools config) 2015-08-03 09:11:51 -06:00
manage.py Initial import containing a barebones django / browserify project 2015-07-13 15:55:45 -06:00
MANIFEST.in Include bower components during setup.py install, and use properly use relative static directory during export. 2015-08-13 14:45:09 -06:00
package.json Use gulp-replace to rewrite JS and CSS paths during gzip task. 2015-09-25 17:55:33 -06:00
README.rst Use gulp-replace to rewrite JS and CSS paths during gzip task. 2015-09-25 17:55:33 -06:00
requirements.txt Add dependencies to requirements.txt 2015-08-21 07:38:07 -06:00
setup.cfg Move export_static.py to export.py; add executable command definition to setup.cfg to install stackviz-export command during setup.py install. 2015-08-11 17:06:09 -06:00
setup.py Add some missing base files from cookiecutter (LICENSE, manifest, setuptools config) 2015-08-03 09:11:51 -06:00
test-requirements.txt Add stub unit tests from cookiecutter 2015-08-03 10:37:55 -06:00
tox.ini Add stub unit tests from cookiecutter 2015-08-03 10:37:55 -06:00

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).
  • Angular conversion: current codebase will be rewritten to use Angular.