mirror of https://github.com/wg-easy/wg-easy
committed by
GitHub
23 changed files with 770 additions and 1232 deletions
@ -19,8 +19,8 @@ jobs: |
|||||
runs-on: ubuntu-latest |
runs-on: ubuntu-latest |
||||
steps: |
steps: |
||||
- uses: actions/checkout@v2 |
- uses: actions/checkout@v2 |
||||
|
with: |
||||
- uses: benjlevesque/[email protected] |
ref: production |
||||
|
|
||||
- name: Set up QEMU |
- name: Set up QEMU |
||||
uses: docker/setup-qemu-action@v1 |
uses: docker/setup-qemu-action@v1 |
||||
@ -35,10 +35,7 @@ jobs: |
|||||
password: ${{ secrets.DOCKER_PASSWORD }} |
password: ${{ secrets.DOCKER_PASSWORD }} |
||||
|
|
||||
# Set environment variables |
# Set environment variables |
||||
- run: echo GH_BRANCH=${GITHUB_REF#refs/heads/} >> $GITHUB_ENV |
- run: echo RELEASE=$(cat ./src/package.json | jq -r .release) >> $GITHUB_ENV |
||||
- run: echo VERSION=$(cat package.json | jq -r .version) >> $GITHUB_ENV |
|
||||
- run: echo DOCKER_TAGS=$(cat package.json | jq -r .docker[\"$GH_BRANCH\"].tags) >> $GITHUB_ENV |
|
||||
- run: echo Branch ${{ env.GH_BRANCH }}, Tags ${{ env.DOCKER_TAGS }} |
|
||||
|
|
||||
# Build & Publish |
# Build & Publish |
||||
- name: Build & Publish Docker Image |
- name: Build & Publish Docker Image |
||||
@ -46,4 +43,4 @@ jobs: |
|||||
with: |
with: |
||||
push: true |
push: true |
||||
platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8 |
platforms: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8 |
||||
tags: weejewel/wg-easy:v${{ env.VERSION }}, weejewel/wg-easy:${{ env.DOCKER_TAGS }} |
tags: weejewel/wg-easy:latest, weejewel/wg-easy:${{ env.RELEASE }} |
||||
|
@ -1 +1,3 @@ |
|||||
/config |
/config |
||||
|
/wg0.conf |
||||
|
/wg0.json |
@ -0,0 +1,11 @@ |
|||||
|
**You may:** |
||||
|
|
||||
|
* Use this software for yourself; |
||||
|
* Use this software for a company; |
||||
|
* Modify this software, as long as you: |
||||
|
* Publish the changes on GitHub as an open-source & linked fork; |
||||
|
* Don't remove any links to the original project or donation pages; |
||||
|
|
||||
|
**You may not:** |
||||
|
|
||||
|
* Use this software in a commercial product without a license from the original author; |
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 105 KiB |
@ -0,0 +1,9 @@ |
|||||
|
version: "3.8" |
||||
|
services: |
||||
|
wg-easy: |
||||
|
image: wg-easy |
||||
|
command: npm run serve |
||||
|
volumes: |
||||
|
- ./src/:/app/ |
||||
|
# environment: |
||||
|
# - PASSWORD=p |
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"1": "Initial version. Enjoy!", |
||||
|
"2": "You can now rename a client, and update the address. Enjoy!", |
||||
|
"3": "Many improvements and small changes. Enjoy!", |
||||
|
"4": "Now with pretty charts for client's network speed. Enjoy!" |
||||
|
} |
@ -0,0 +1,4 @@ |
|||||
|
{ |
||||
|
"version": "1.0.0", |
||||
|
"lockfileVersion": 1 |
||||
|
} |
@ -1,10 +1,17 @@ |
|||||
'use strict'; |
'use strict'; |
||||
|
|
||||
|
const { release } = require('./package.json'); |
||||
|
|
||||
|
module.exports.RELEASE = release; |
||||
module.exports.PORT = process.env.PORT || 51821; |
module.exports.PORT = process.env.PORT || 51821; |
||||
module.exports.PASSWORD = process.env.PASSWORD; |
module.exports.PASSWORD = process.env.PASSWORD; |
||||
module.exports.WG_PATH = process.env.WG_PATH || '/etc/wireguard/'; |
module.exports.WG_PATH = process.env.WG_PATH || '/etc/wireguard/'; |
||||
module.exports.WG_HOST = process.env.WG_HOST; |
module.exports.WG_HOST = process.env.WG_HOST; |
||||
module.exports.WG_PORT = process.env.WG_PORT || 51820; |
module.exports.WG_PORT = process.env.WG_PORT || 51820; |
||||
module.exports.WG_MTU = process.env.WG_MTU || null; |
module.exports.WG_MTU = process.env.WG_MTU || null; |
||||
|
module.exports.WG_PERSISTENT_KEEPALIVE = process.env.WG_PERSISTENT_KEEPALIVE || 0; |
||||
module.exports.WG_DEFAULT_ADDRESS = process.env.WG_DEFAULT_ADDRESS || '10.8.0.x'; |
module.exports.WG_DEFAULT_ADDRESS = process.env.WG_DEFAULT_ADDRESS || '10.8.0.x'; |
||||
module.exports.WG_DEFAULT_DNS = process.env.WG_DEFAULT_DNS || '1.1.1.1'; |
module.exports.WG_DEFAULT_DNS = typeof process.env.WG_DEFAULT_DNS === 'string' |
||||
|
? process.env.WG_DEFAULT_DNS |
||||
|
: '1.1.1.1'; |
||||
|
module.exports.WG_ALLOWED_IPS = process.env.WG_ALLOWED_IPS || '0.0.0.0/0, ::/0'; |
||||
|
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
@ -0,0 +1,7 @@ |
|||||
|
/** |
||||
|
* Minified by jsDelivr using Terser v5.7.1. |
||||
|
* Original file: /npm/vue-apexcharts@1.6.2/dist/vue-apexcharts.js |
||||
|
* |
||||
|
* Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
|
||||
|
*/ |
||||
|
!function (t, e) { "object" == typeof exports && "undefined" != typeof module ? module.exports = e(require("apexcharts/dist/apexcharts.min")) : "function" == typeof define && define.amd ? define(["apexcharts/dist/apexcharts.min"], e) : t.VueApexCharts = e(t.ApexCharts) }(this, (function (t) { "use strict"; function e(t) { return (e = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (t) { return typeof t } : function (t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t })(t) } function n(t, e, n) { return e in t ? Object.defineProperty(t, e, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : t[e] = n, t } t = t && t.hasOwnProperty("default") ? t.default : t; var i = { props: { options: { type: Object }, type: { type: String }, series: { type: Array, required: !0, default: function () { return [] } }, width: { default: "100%" }, height: { default: "auto" } }, data: function () { return { chart: null } }, beforeMount: function () { window.ApexCharts = t }, mounted: function () { this.init() }, created: function () { var t = this; this.$watch("options", (function (e) { !t.chart && e ? t.init() : t.chart.updateOptions(t.options) })), this.$watch("series", (function (e) { !t.chart && e ? t.init() : t.chart.updateSeries(t.series) }));["type", "width", "height"].forEach((function (e) { t.$watch(e, (function () { t.refresh() })) })) }, beforeDestroy: function () { this.chart && this.destroy() }, render: function (t) { return t("div") }, methods: { init: function () { var e = this, n = { chart: { type: this.type || this.options.chart.type || "line", height: this.height, width: this.width, events: {} }, series: this.series }; Object.keys(this.$listeners).forEach((function (t) { n.chart.events[t] = e.$listeners[t] })); var i = this.extend(this.options, n); return this.chart = new t(this.$el, i), this.chart.render() }, isObject: function (t) { return t && "object" === e(t) && !Array.isArray(t) && null != t }, extend: function (t, e) { var i = this; "function" != typeof Object.assign && (Object.assign = function (t) { if (null == t) throw new TypeError("Cannot convert undefined or null to object"); for (var e = Object(t), n = 1; n < arguments.length; n++) { var i = arguments[n]; if (null != i) for (var r in i) i.hasOwnProperty(r) && (e[r] = i[r]) } return e }); var r = Object.assign({}, t); return this.isObject(t) && this.isObject(e) && Object.keys(e).forEach((function (o) { i.isObject(e[o]) && o in t ? r[o] = i.extend(t[o], e[o]) : Object.assign(r, n({}, o, e[o])) })), r }, refresh: function () { return this.destroy(), this.init() }, destroy: function () { this.chart.destroy() }, updateSeries: function (t, e) { return this.chart.updateSeries(t, e) }, updateOptions: function (t, e, n, i) { return this.chart.updateOptions(t, e, n, i) }, toggleSeries: function (t) { return this.chart.toggleSeries(t) }, showSeries: function (t) { this.chart.showSeries(t) }, hideSeries: function (t) { this.chart.hideSeries(t) }, appendSeries: function (t, e) { return this.chart.appendSeries(t, e) }, resetSeries: function () { this.chart.resetSeries() }, zoomX: function (t, e) { this.chart.zoomX(t, e) }, toggleDataPointSelection: function (t, e) { this.chart.toggleDataPointSelection(t, e) }, appendData: function (t) { return this.chart.appendData(t) }, addText: function (t) { this.chart.addText(t) }, addImage: function (t) { this.chart.addImage(t) }, addShape: function (t) { this.chart.addShape(t) }, dataURI: function () { return this.chart.dataURI() }, setLocale: function (t) { return this.chart.setLocale(t) }, addXaxisAnnotation: function (t, e) { this.chart.addXaxisAnnotation(t, e) }, addYaxisAnnotation: function (t, e) { this.chart.addYaxisAnnotation(t, e) }, addPointAnnotation: function (t, e) { this.chart.addPointAnnotation(t, e) }, removeAnnotation: function (t, e) { this.chart.removeAnnotation(t, e) }, clearAnnotations: function () { this.chart.clearAnnotations() } } }; return window.ApexCharts = t, i.install = function (e) { e.ApexCharts = t, window.ApexCharts = t, Object.defineProperty(e.prototype, "$apexcharts", { get: function () { return t } }) }, i })); |
Loading…
Reference in new issue