ONOS GUI 2.0.0
This project is based on Angular 5, as an alternative to the 1.0.0 GUI which was based off AngularJS 1.3.5
To use the new structure on your system, you need to
- Change directory in to onos/web/gui - this is where you will run the
ng
command from. - Run
npm install
from this folder to add dependencies - Run
npm install -g @angular/cli
to install theng
command - Run
npm install -g @compodoc/compodoc
to install Compodoc which can generate documentation - Add the following to your PATH environment variable
$ONOS_ROOT/buck-out/gen/web/gui2/node-bin-v8.11.1/node-binaries/bin
This project was generated with Angular CLI version 1.7.4.
Development server
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change any of the source files.
Code scaffolding
Run ng generate component component-name
to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module
.
Build
The build is handled through the web/gui2/BUCK file. This downloads Node, NPM and Angular CLI
It runs ng build
and copies everything over in to WEB-INF/classes/dist (there
is something weird in BUCK resources - if there is a file in the root dir of the
outputted folder this is copied to the sources root directory, where as files
are copied to WEB-INF/classes. To get around this I put all the outputted stuff in to
dist
and it gets copied to /WEB-INF/classes/dist/ )
To start the GUI in a running ONOS at the onos> cli
feature:install onos-gui2
and the gui will be accessible at http://localhost:8181/onos/ui2/dist/
Running unit tests
Run ng test
to execute the unit tests via Karma.
Running end-to-end tests
Run ng e2e
to execute the end-to-end tests via Protractor.
Generating documentation
Run npm run compodoc
to generate documentation via Compodoc
Further help
To get more help on the Angular CLI use ng help
or go check out the Angular CLI README.