Compare commits
63 Commits
v2.2.23
...
v0.0.1-bet
Author | SHA1 | Date | |
---|---|---|---|
a8054fa129 | |||
e180bedcdf | |||
598a52e41b | |||
33ba66538b | |||
fdffe15f5b | |||
5f4b5ac7c5 | |||
06642c7d45 | |||
b10d4f2dd5 | |||
0687c536af | |||
4abab7a96c | |||
1a3c538e68 | |||
e6f5574b72 | |||
35c0944d04 | |||
3056b0fbaf | |||
5b7bbe4f64 | |||
a037d97fbf | |||
57f3bfb5b9 | |||
1d6466731a | |||
33b943138f | |||
e706769c41 | |||
c510033de5 | |||
8f095cbf51 | |||
73071d462a | |||
498afb2632 | |||
542be33c22 | |||
471c5f5774 | |||
e2ef2e30bc | |||
1d83d0a1f2 | |||
0677618bb5 | |||
206bdc7dc6 | |||
c0919334bd | |||
0014fc7a62 | |||
a4057f1a04 | |||
2afc54051d | |||
6e6a2a4d6f | |||
6064892be5 | |||
f64479d755 | |||
f5b3ff1787 | |||
b69bef7654 | |||
c96dcb1dbe | |||
f18f9deb34 | |||
12ad880fa1 | |||
a96b83b481 | |||
51af56f867 | |||
90b478a969 | |||
8a9d4d5fe1 | |||
a61989612c | |||
a2c23d225d | |||
3fe275cf6c | |||
2efd541875 | |||
1c09c7b71c | |||
cd6b12dd60 | |||
be1378fcb2 | |||
9425d0edef | |||
09bacaefc6 | |||
55cfdbca96 | |||
36253113d7 | |||
aebfa517bf | |||
b513202339 | |||
7f059c7807 | |||
665e01f110 | |||
029ab352d2 | |||
1cc54e8520 |
47
.appveyor.yml
Normal file
@ -0,0 +1,47 @@
|
||||
version: 1.0.{build}
|
||||
|
||||
# Do not build feature branch with open Pull Requests
|
||||
skip_branch_with_pr: true
|
||||
|
||||
platform:
|
||||
- x64
|
||||
|
||||
#init:
|
||||
# - git config --global core.autocrlf input
|
||||
|
||||
install:
|
||||
- ps: Install-Product node 8 x64
|
||||
- yarn
|
||||
|
||||
build_script:
|
||||
- yarn distwin
|
||||
- ps: $OutputDirectory = $((Get-Date).ToString('yyyy-MM-dd'))
|
||||
- ps: If ($env:APPVEYOR_REPO_TAG -eq $false) { New-Item -ItemType Directory -Path "$OutputDirectory" }
|
||||
- ps: If ($env:APPVEYOR_REPO_TAG -eq $false) { move build\*.exe "$OutputDirectory" }
|
||||
- ps: If ($env:APPVEYOR_REPO_TAG -eq $false) { cd $OutputDirectory; Get-ChildItem -Filter '*.exe' | Rename-Item -NewName {$_.Name -replace ".exe","-$env:APPVEYOR_REPO_BRANCH-$env:APPVEYOR_BUILD_NUMBER.exe"} }
|
||||
- ps: If ($env:APPVEYOR_REPO_TAG -eq $false) { $execs = Get-ChildItem -Filter '*.exe'; $artifact = $execs[0].basename; }
|
||||
- ps: If ($env:APPVEYOR_REPO_TAG -eq $false) { cd ..; Push-AppveyorArtifact "$((Get-Date).ToString('yyyy-MM-dd'))\*.exe" -FileName "$((Get-Date).ToString('yyyy-MM-dd'))\$artifact.exe" }
|
||||
|
||||
# - ps: If ($env:APPVEYOR_REPO_TAG -eq $true) { yarn release }
|
||||
|
||||
test: off
|
||||
|
||||
#artifacts:
|
||||
# - path: '$(OutputDirectory)\*.exe'
|
||||
|
||||
deploy:
|
||||
- provider: FTP
|
||||
protocol: sftp
|
||||
host: frs.sourceforge.net
|
||||
username: gns3build
|
||||
password:
|
||||
secure: YRiLLoY27UOZ8QJHqqdESBQFfPfENKV0cLI/QFSsbWc=
|
||||
folder: "../../../../frs/project/gns-3/Nightly Builds"
|
||||
artifact: /.*\.exe/
|
||||
on:
|
||||
appveyor_repo_tag: false # deploy on branch only
|
||||
|
||||
environment:
|
||||
GH_TOKEN:
|
||||
secure: EgwJ4mP2sPsfurW//aPDUXW+O7R+3N0pSfr+Y3SpiKK+70tGVbqy93pWCcdrPf45
|
||||
|
67
.circleci/config.yml
Normal file
@ -0,0 +1,67 @@
|
||||
# iOS CircleCI 2.0 configuration file
|
||||
version: 2
|
||||
jobs:
|
||||
build:
|
||||
macos:
|
||||
xcode: "9.1.0"
|
||||
|
||||
steps:
|
||||
- checkout
|
||||
|
||||
- run:
|
||||
name: Set timezone and check current datetime
|
||||
command: |
|
||||
sudo systemsetup -settimezone Europe/Warsaw
|
||||
echo "Today is $(date +"%Y-%m-%d %T")"
|
||||
|
||||
- run:
|
||||
name: Install project
|
||||
# there is an issue with yarn and cache during executed on CI; for now we just run it twice, second should
|
||||
# be successful. Check it later if updates fixed the issue
|
||||
command: |
|
||||
yarn || true
|
||||
yarn || true
|
||||
|
||||
- run:
|
||||
name: Dist project
|
||||
command: |
|
||||
yarn distmac
|
||||
|
||||
- run:
|
||||
name: Gather artifacts
|
||||
command: |
|
||||
mkdir artifacts
|
||||
cp build/*.dmg artifacts/
|
||||
|
||||
- store_artifacts:
|
||||
path: artifacts
|
||||
destination: artifacts
|
||||
|
||||
- deploy:
|
||||
name: Deploying on SourceForge
|
||||
command: |
|
||||
echo "Deploying on SourceForge"
|
||||
ssh-keyscan -H frs.sourceforge.net >> ~/.ssh/known_hosts
|
||||
mkdir -p artifacts/release
|
||||
cd artifacts; for file in *.dmg; do mv "$file" "release/${file%.dmg}-${CIRCLE_BRANCH}-${CIRCLE_BUILD_NUM}.dmg"; done; cd ..
|
||||
echo "mkdir \"/home/frs/project/gns-3/Nightly Builds/$(date +"%Y-%m-%d")\"" | sftp gns3build@frs.sourceforge.net || true
|
||||
echo "Copying to SourceForge"
|
||||
scp artifacts/release/* gns3build@frs.sourceforge.net:"/home/frs/project/gns-3/Nightly\ Builds/$(date +"%Y-%m-%d")/"
|
||||
#
|
||||
# release:
|
||||
# macos:
|
||||
# xcode: "9.1.0"
|
||||
#
|
||||
# steps:
|
||||
# - yarn release
|
||||
#
|
||||
|
||||
workflows:
|
||||
version: 2
|
||||
build_and_deploy:
|
||||
jobs:
|
||||
- build:
|
||||
filters:
|
||||
tags:
|
||||
only: /v.*/
|
||||
|
1
.gitignore
vendored
@ -34,6 +34,7 @@
|
||||
npm-debug.log
|
||||
testem.log
|
||||
/typings
|
||||
/yarn-error.log
|
||||
|
||||
# e2e
|
||||
/e2e/*.js
|
||||
|
@ -22,6 +22,7 @@ before_script:
|
||||
script: ng test --watch=false
|
||||
|
||||
after_script:
|
||||
# publish on gns3.github.io
|
||||
- ng build --base-href /${TRAVIS_BRANCH}/
|
||||
- export GIT_LAST_LOG="$(git log -1 --pretty=%B)"
|
||||
- git clone https://${GITHUB_CREDENTIALS}@github.com/GNS3/gns3.github.io.git github-pages
|
||||
@ -34,3 +35,6 @@ after_script:
|
||||
- git commit -m "Deploy - $GIT_LAST_LOG"
|
||||
- git push origin master
|
||||
|
||||
# publish
|
||||
- yarn
|
||||
- yarn distlinux
|
||||
|
41
README.md
@ -50,6 +50,47 @@ Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.
|
||||
Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).
|
||||
Before running the tests make sure you are serving the app via `ng serve`.
|
||||
|
||||
|
||||
# Releasing
|
||||
|
||||
## Bumping releases
|
||||
|
||||
We're using [version-bump-prompt](https://www.npmjs.com/package/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](https://github.com/GNS3/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.
|
||||
|
||||
|
||||
## Further help
|
||||
|
||||
If you want to contribute to GNS3 Web UI feel free to reach us at `developers@gns3.net`.
|
||||
|
51
electron-builder.yml
Normal file
@ -0,0 +1,51 @@
|
||||
appId: com.gns3.web-ui
|
||||
copyright: "Copyright © 2018 GNS3"
|
||||
productName: "GNS3 Web UI Prototype"
|
||||
#forceCodeSigning: true
|
||||
artifactName: "${productName}-${os}-${arch}-${version}.${ext}"
|
||||
asar: true
|
||||
compression: normal
|
||||
|
||||
directories:
|
||||
output: build
|
||||
|
||||
files:
|
||||
- dist
|
||||
- main.js
|
||||
- package.json
|
||||
|
||||
mac:
|
||||
category: public.app-category.developer-tools
|
||||
# publish: github
|
||||
target:
|
||||
- dmg
|
||||
dmg:
|
||||
# background: "build/appdmg.png"
|
||||
icon: "dist/assets/icons/mac/icon.icns"
|
||||
iconSize: 128
|
||||
contents:
|
||||
- x: 380
|
||||
y: 240
|
||||
type: link
|
||||
path: /Applications
|
||||
- x: 122
|
||||
y: 240
|
||||
type: file
|
||||
|
||||
linux:
|
||||
# publish: github
|
||||
icon: "dist/assets/icons/png"
|
||||
category: "Network"
|
||||
packageCategory: "Network"
|
||||
description: "GNS3 Web Ui Prototype application. Please don't use it as long as it's not officially announced."
|
||||
target:
|
||||
- deb
|
||||
- AppImage
|
||||
maintainer: "Dominik Ziajka <dominik@gns3.net>"
|
||||
win:
|
||||
# publish: github
|
||||
icon: "dist/assets/icons/win/icon.ico"
|
||||
|
||||
nsis:
|
||||
perMachine: true
|
||||
|
2
main.js
@ -9,7 +9,7 @@ const url = require('url');
|
||||
|
||||
// Keep a global reference of the window object, if you don't, the window will
|
||||
// be closed automatically when the JavaScript object is garbage collected.
|
||||
let mainWindow
|
||||
let mainWindow;
|
||||
|
||||
function createWindow () {
|
||||
// Create the browser window.
|
||||
|
17
package.json
@ -1,22 +1,21 @@
|
||||
{
|
||||
"name": "gns3-web-ui",
|
||||
"version": "0.0.0",
|
||||
"license": "MIT",
|
||||
"version": "0.0.1-beta.0",
|
||||
"license": "GPLv3",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
"ng": "ng",
|
||||
"start": "ng serve",
|
||||
"build": "ng build",
|
||||
"buildforelectron": "ng build -e electronProd",
|
||||
"test": "ng test",
|
||||
"lint": "ng lint",
|
||||
"e2e": "ng e2e",
|
||||
"electrondev": "concurrently -k \"ng serve -e electronDev\" \"electron .\"",
|
||||
"distlinux": "ng build -e electronProd && electron-builder --linux"
|
||||
},
|
||||
"build": {
|
||||
"directories": {
|
||||
"output": "build"
|
||||
}
|
||||
"distlinux": "yarn buildforelectron && electron-builder --linux --x64",
|
||||
"distwin": "yarn buildforelectron && electron-builder --win --x64",
|
||||
"distmac": "yarn buildforelectron && electron-builder --mac --x64",
|
||||
"release": "build"
|
||||
},
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
@ -67,4 +66,4 @@
|
||||
"popper.js": "^1.12.3",
|
||||
"jquery": "1.9.1 - 3"
|
||||
}
|
||||
}
|
||||
}
|
BIN
src/assets/icons/mac/icon.icns
Normal file
BIN
src/assets/icons/png/1024x1024.png
Normal file
After Width: | Height: | Size: 105 KiB |
BIN
src/assets/icons/png/128x128.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
src/assets/icons/png/16x16.png
Normal file
After Width: | Height: | Size: 734 B |
BIN
src/assets/icons/png/24x24.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/icons/png/256x256.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
src/assets/icons/png/32x32.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
src/assets/icons/png/48x48.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
src/assets/icons/png/512x512.png
Normal file
After Width: | Height: | Size: 50 KiB |
BIN
src/assets/icons/png/64x64.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
src/assets/icons/win/icon.ico
Normal file
After Width: | Height: | Size: 353 KiB |