RETIRED, Fuel Web UI
Go to file
Vitaly Kramskikh 2756e6b503 Use Keystone V3 API
This commit introduces support of V3 API and also removes token
regeneration every 1 hour which is totally unnecessary. Also,
token is now only stored in User model and passed to the
Keystone client via arguments, so there is no more two sources
of truth. User id and roles are also stored in User model now.

Partial-Bug: #1628445
Closes-Bug: #1618172
Depends-On: If201c247210131ce6ab192362eada250a4f51ce1
Change-Id: I48b73a09cad0d707c16df5ca8ada202173779129
2016-10-04 17:43:43 +03:00
fixtures/ostf Add ostf fake server responses to dev server 2016-06-02 09:35:05 +03:00
gulp Forcing eslint max-len rule 2016-01-25 20:06:45 +03:00
specs Adjust spec file for new version of nodejs-nailgun 2016-05-30 22:13:34 +03:00
static Use Keystone V3 API 2016-10-04 17:43:43 +03:00
.eslintignore Remove "vendor" directory from project configs 2016-06-23 12:11:39 +03:00
.eslintrc Fix consistent-return warnings 2016-09-21 15:15:10 +03:00
.gitignore Add necessary files 2016-03-01 14:55:40 +07:00
.gitreview Add necessary files 2016-03-01 14:55:40 +07:00
LICENSE Add necessary files 2016-03-01 14:55:40 +07:00
MAINTAINERS Add Bogdan Dudko to the list of maintainers 2016-04-20 17:19:58 +03:00
README.rst Update README for running tests 2016-06-01 15:06:32 +00:00
gulpfile.js Fix consistent-return warnings 2016-09-21 15:15:10 +03:00
karma.config.js Enable linting for node.js files and split .eslintrc 2016-01-17 18:01:55 +03:00
npm-shrinkwrap.json Fix UI functional tests in Firefox 47+ 2016-08-10 13:22:17 +03:00
package.json Merge "Add tests for component registry suite for vCenter" 2016-08-11 16:24:21 +00:00
run_component_registry_tests.sh Add tests for component registry suite for vCenter 2016-08-11 17:07:04 +03:00
run_ui_func_tests.sh Unify syntax of run_ui_func_tests.sh to suit macosx 2016-07-04 14:44:56 +03:00
webpack.config.js Enable loose mode for ES6 class transformation 2016-07-15 19:07:29 +03:00

README.rst

FUEL UI

This repository contains Fuel UI - the web user interface for Nailgun.

Installation

  • Fuel UI requires Node.js 0.10+ to be installed on your system. On Ubuntu 14.04 you can install it using the following commands:

    sudo apt-get remove --yes nodejs nodejs-legacy
    sudo add-apt-repository --yes ppa:chris-lea/node.js
    sudo apt-get update
    sudo apt-get install --yes nodejs
    sudo chown -R `whoami`.`whoami` ~/.npm
  • Install JS dependencies and Gulp:

    npm install
    sudo npm install -g gulp
  • The most convenient approach to modify Fuel UI is to use a development server. It watches for file changes and automatically rebuilds changed modules (significantly faster than full rebuild) and triggers page refresh in browsers:

    gulp dev-server

    By default it runs on port 8080 and assumes that Nailgun runs on port 8000. You can override this by using the following options:

    gulp dev-server --dev-server-host=127.0.0.1 --dev-server-port=8080 --nailgun-host=127.0.0.1 --nailgun-port=8000

    If automatic rebuild on change doesn't work, most likely you need to increase the limit of inotify watches:

    echo 100000 | sudo tee /proc/sys/fs/inotify/max_user_watches
  • The production version of Fuel UI can be built by running:

    gulp build

    To specify custom output directory location, use static-dir option:

    gulp build --static-dir=static_compressed

    To speed up build process you may also want to disable uglification and source maps generation:

    gulp build --no-uglify --no-sourcemaps

    If for some reason you don't want to use a development server, but would like to recompile the bundle on any change, use:

    gulp build --watch

Testing

  • UI tests use Selenium server, so you need to install Java Runtime Environment (JRE) 1.7 or newer version.

  • You also need to install Firefox - it is used as the default browser for tests.

  • Run full Web UI test suite, run:

    npm run lint
    npm run unit-tests
    npm run func-tests

    UI functional tests require Nailgun server from fuel-web repo to be installed. By default it's assumed that fuel-web repo is in the same directory as fuel-ui repo, but you can specify another path using FUEL_WEB_ROOT environment variable:

    FUEL_WEB_ROOT=/path/to/fuel-web npm run func-tests

    To run a single functional test file, use:

    npm run func-tests static/tests/functional/test_cluster_page.js

    By default Firefox browser is used. You can specify the browser using BROWSER environment variable:

    BROWSER=chrome npm run unit-tests
    BROWSER=firefox npm run func-tests