WebUI implementation for GNS3
Go to file
2018-03-09 09:07:17 +01:00
.circleci Python3 as default on CircleCI, Ref. 2018-03-08 09:02:35 +01:00
e2e Fix e2e test 2018-02-23 17:22:14 +01:00
scripts Add Dockerfile for development 2018-02-21 13:21:32 +01:00
src Replace ng2-toast with material snacbar, Fixes: 2018-03-08 08:48:09 +01:00
.angular-cli.json Remove ng2-toasty from styles 2018-03-09 09:07:17 +01:00
.appveyor.yml Disable CircleCi and AppVeyor deploys on commits, Fixes: 2018-01-29 08:15:53 +01:00
.editorconfig Draft of WebUI 2017-09-25 13:07:52 +02:00
.gitignore Ignore package-lock.json 2018-01-18 06:45:05 +01:00
.travis.yml Support for auto-update of lock file, Ref. 2018-01-24 08:35:45 +01:00
.yarnclean Prepare for electron 2018-01-03 16:46:15 +01:00
Dockerfile Move from npm to yarn 2018-02-22 12:05:13 +01:00
electron-builder.yml Icons set 2018-01-17 15:46:45 +01:00
karma.conf.js Draft of WebUI 2017-09-25 13:07:52 +02:00
LICENSE Initial commit 2017-09-25 11:27:22 +02:00
main.js Icons set 2018-01-17 15:46:45 +01:00
package.json Remove ng2-toasty from deps 2018-03-08 09:17:26 +01:00
protractor.conf.js Draft of WebUI 2017-09-25 13:07:52 +02:00
README.md Merge pull request from nabilbendafi/badge 2018-02-23 11:08:59 +01:00
renderer.js Prepare for electron 2018-01-03 16:46:15 +01:00
tsconfig.json Fix angular2-indexeddb complains 2018-01-18 10:39:20 +01:00
tslint.json Draft of WebUI 2017-09-25 13:07:52 +02:00
yarn.lock Remove ng2-toasty from deps 2018-03-08 09:17:26 +01:00

gns3-web-ui

Greenkeeper badge Travis CI AppVeyor CircleCI

Test WebUI implementation for GNS3.

This is not production ready version. It has been made to evaluate possibility of creation Web User Interface for GNS3 application.

This project was generated with Angular CLI version 1.2.6.

Installation for development

Please install npm if not present in your system.

Next step is angular-cli installation:

npm install @angular/cli

Development server

Run GNS3 server

Please run locally GNS3 server.

Using default CORS policy.

GNS3 server contains CORS policies to run Web UI on 8080 at localhost. In order to use it, please run development server with custom port:

ng serve --port 8080

Application is accessible on http://localhost:8080/. The app will automatically reload if you change any of the source files.

Docker container

For development you can run the GNS3 Web UI in a container

.. code:: bash

bash scripts/docker_dev_webui.sh

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|module.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the -prod flag for a production build.

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. Before running the tests make sure you are serving the app via ng serve.

How to build gns3server for WebUI?

  python3 scripts/build.py build -b dist

Releasing

Bumping releases

We're using version-bump-prompt for increasing version.

Intall bump via:

    npm install -g version-bump-prompt

If you would like to bump prepatch just type:

    bump --prepatch --tag --push

Final release

We have got configured CircleCI, TravisCI and AppVeyor for distributing application for particular platform. In order to release you need to tag your code nad push it.

Using bump:

    bump --patch --tag --push

Or manually:

    git tag v0.0.1
    git push origin v0.0.1

When artifacts are made you can see draft release here: gns3-web-ui releases which is waiting to be published. After release please change current version in package.json to X.X.X-beta.0'. Otherwise artifacts will be overwritten during the next commit.

You may use bump to achieve that:

    bump --prepatch

Staging release

In case you would like to create a new staging release. Please create draft release on github, like 0.0.1-dev1. After successful build you can find there artifacts.

Development

How to upgrade package.json?

    yarn upgrade --latest

Further help

If you want to contribute to GNS3 Web UI feel free to reach us at developers@gns3.net.