WebUI implementation for GNS3
Go to file
2018-11-15 11:35:20 +01:00
.circleci Re-enable cache 2018-07-06 13:24:17 +02:00
e2e Reenable sentry 2018-07-23 16:37:09 +02:00
scripts Update requests to 2.20.0 2018-11-06 10:12:16 +01:00
src Clean code 2018-11-15 11:35:20 +01:00
.appveyor.yml Reenable sentry 2018-07-23 16:37:09 +02: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 Fix issue with wrong base-href for github.io 2018-04-09 15:24:41 +02:00
.yarnclean Prepare for electron 2018-01-03 16:46:15 +01:00
angular.json Move out snapshots from project map 2018-10-31 10:55:55 +01:00
Dockerfile Move from npm to yarn 2018-02-22 12:05:13 +01:00
electron-builder.yml Disable sentry, Ref: 2018-07-20 13:28:49 +02:00
karma.conf.js Basic migration to RxJS 6, Ref: 2018-07-06 11:31:44 +02:00
LICENSE Initial commit 2017-09-25 11:27:22 +02:00
main.js Reenable sentry 2018-07-23 16:37:09 +02:00
package.json initial implementation of projects importing 2018-10-25 02:40:37 -07:00
protractor.conf.js Draft of WebUI 2017-09-25 13:07:52 +02:00
README.md Disable LocationStrategies if on electron/non-electron, README update 2018-07-16 10:28:45 +02:00
renderer.js Prepare for electron 2018-01-03 16:46:15 +01:00
sentry.js Reenable sentry 2018-07-23 16:37:09 +02:00
tsconfig.json Fix angular2-indexeddb complains 2018-01-18 10:39:20 +01:00
tslint.json Basic migration to RxJS 6, Ref: 2018-07-06 11:31:44 +02:00
yarn.lock Integrities for yarn.lock 2018-11-05 16:05:16 +01:00

gns3-web-ui

Greenkeeper badge Travis CI AppVeyor CircleCI codecov

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.

Demo

Please use GNS3 WebUI bundled in gns3server and gns3.

Development

Installation

We're using yarn for packages installation:

yarn install

Run GNS3 server

Visit gns3-server for guide how to run GNS3 server.

Run WebUI

yarn ng serve

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

Docker container

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

bash scripts/docker_dev_webui.sh

How to upgrade package.json?

yarn upgrade --latest

gns3server bundled in WebUI - electron based

In special cases it's possible to build gns3server for GNS3 WebUI. This version is included in electronjs dist application.

python3 scripts/build.py build -b dist

Code scaffolding

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

Build

Run yarn 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 yarn ng test to execute the unit tests via Karma.

Releasing

Bumping releases

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

Install version-bump-prompt via:

    npm install -g version-bump-prompt

If you would like to bump prepatch just type:

    bump --prepatch --tag --push

Distribute release

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

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 artifacts there.

Further help

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