v2.1.0 (#293)
* Fix wrapping when too many hosts are shown (#207) * Update npm packages, fixes CVE-2019-10757 * Revert some breaking packages * Major overhaul - Docker buildx support in CI - Cypress API Testing in CI - Restructured folder layout (insert clean face meme) - Added Swagger documentation and validate API against that (to be completed) - Use common base image for all supported archs, which includes updated nginx with ipv6 support - Updated certbot and changes required for it - Large amount of Hosts names will wrap in UI - Updated packages for frontend - Version bump 2.1.0 * Updated documentation * Fix JWT expire time going crazy. Now set to 1day * Backend JS formatting rules * Remove v1 importer, I doubt anyone is using v1 anymore * Added backend formatting rules and enforce them in Jenkins builds * Fix CI, doesn't need a tty * Thanks bcrypt. Why can't you just be normal. * Cleanup after syntax check Co-authored-by: Marcelo Castagna <margaale@users.noreply.github.com>
This commit is contained in:
.babelrc.gitignore
.jenkins
.versionDockerfileDockerfile.arm64Dockerfile.armv6lDockerfile.armv7lJenkinsfileREADME.mdbackend
.eslintrc.json.gitignore.prettierrcapp.js
config
db.jsdoc
index.jsinternal
access-list.jsaudit-log.jscertificate.jsdead-host.jshost.jsip_ranges.jsnginx.jsproxy-host.jsredirection-host.jsreport.jssetting.jsstream.jstoken.jsuser.js
knexfile.jslib
access.js
logger.jsmigrate.jsaccess
access_lists-create.jsonaccess_lists-delete.jsonaccess_lists-get.jsonaccess_lists-list.jsonaccess_lists-update.jsonauditlog-list.jsoncertificates-create.jsoncertificates-delete.jsoncertificates-get.jsoncertificates-list.jsoncertificates-update.jsondead_hosts-create.jsondead_hosts-delete.jsondead_hosts-get.jsondead_hosts-list.jsondead_hosts-update.jsonpermissions.jsonproxy_hosts-create.jsonproxy_hosts-delete.jsonproxy_hosts-get.jsonproxy_hosts-list.jsonproxy_hosts-update.jsonredirection_hosts-create.jsonredirection_hosts-delete.jsonredirection_hosts-get.jsonredirection_hosts-list.jsonredirection_hosts-update.jsonreports-hosts.jsonroles.jsonsettings-get.jsonsettings-list.jsonsettings-update.jsonstreams-create.jsonstreams-delete.jsonstreams-get.jsonstreams-list.jsonstreams-update.jsonusers-create.jsonusers-delete.jsonusers-get.jsonusers-list.jsonusers-loginas.jsonusers-password.jsonusers-permissions.jsonusers-update.json
error.jsexpress
helpers.jsmigrate_template.jsutils.jsvalidator
migrations
20180618015850_initial.js20180929054513_websockets.js20181019052346_forward_host.js20181113041458_http2_support.js20181213013211_forward_scheme.js20190104035154_disabled.js20190215115310_customlocations.js20190218060101_hsts.js20190227065017_settings.js
models
access_list.jsaccess_list_auth.jsaudit-log.jsauth.jscertificate.jsdead_host.jsproxy_host.jsredirection_host.jssetting.jsstream.jstoken.jsuser.jsuser_permission.js
nodemon.jsonpackage.jsonroutes
api
schema
definitions.json
setup.jsendpoints
access-lists.jsoncertificates.jsondead-hosts.jsonproxy-hosts.jsonredirection-hosts.jsonsettings.jsonstreams.jsontokens.jsonusers.json
examples.jsonindex.jsontemplates
_assets.conf_certificates.conf_exploits.conf_forced_ssl.conf_header_comment.conf_hsts.conf_listen.conf_location.confdead_host.confdefault.confip_ranges.confletsencrypt-request.confproxy_host.confredirection_host.confstream.conf
yarn.lockbin
config
doc
docker-compose.ymldocker
Dockerfile
dev
docker-compose.ci.ymldocker-compose.dev.ymlrootfs
bin
etc
cont-finish.d
cont-init.d
fix-attrs.d
letsencrypt.ininginx
conf.d
default.confdev.conf
mime.typesnginx.confinclude
.gitignoreassets.confblock-exploits.confforce-ssl.confip_ranges.confletsencrypt-acme-challenge.confproxy.confssl-ciphers.conf
production.confservices.d
root
var
www
html
frontend
.babelrc.gitignorepackage.json
knexfile.jspackage.jsonapp-images
default-avatar.jpg
fontsfavicons
html
imagesjs
app
api.jsrouter.js
audit-log
cache.jscontroller.jsdashboard
empty
error
help
i18n.jsmain.jsnginx
access
certificates-list-item.ejscertificates
dead
proxy
access-list-item.ejsdelete.ejsdelete.jsform.ejsform.js
list
location-item.ejslocation.jsmain.ejsmain.jsredirection
stream
settings
tokens.jsui
user
users
i18n
index.jslib
login.jslogin
models
scss
webpack.config.jsyarn.lockrootfs
scripts
src
backend
app.jsdb.jsimporter.jsindex.js
internal
access-list.jsaudit-log.jscertificate.jsdead-host.jshost.jsip_ranges.jsnginx.jsproxy-host.jsredirection-host.jsreport.jssetting.jsstream.jstoken.jsuser.js
lib
access.js
logger.jsmigrate.jsaccess
access_lists-create.jsonaccess_lists-delete.jsonaccess_lists-get.jsonaccess_lists-list.jsonaccess_lists-update.jsonauditlog-list.jsoncertificates-create.jsoncertificates-delete.jsoncertificates-get.jsoncertificates-list.jsoncertificates-update.jsondead_hosts-create.jsondead_hosts-delete.jsondead_hosts-get.jsondead_hosts-list.jsondead_hosts-update.jsonpermissions.jsonproxy_hosts-create.jsonproxy_hosts-delete.jsonproxy_hosts-get.jsonproxy_hosts-list.jsonproxy_hosts-update.jsonredirection_hosts-create.jsonredirection_hosts-delete.jsonredirection_hosts-get.jsonredirection_hosts-list.jsonredirection_hosts-update.jsonreports-hosts.jsonroles.jsonsettings-get.jsonsettings-list.jsonsettings-update.jsonstreams-create.jsonstreams-delete.jsonstreams-get.jsonstreams-list.jsonstreams-update.jsonusers-create.jsonusers-delete.jsonusers-get.jsonusers-list.jsonusers-loginas.jsonusers-password.jsonusers-permissions.jsonusers-update.json
error.jsexpress
helpers.jsmigrate_template.jsutils.jsvalidator
migrations
20180618015850_initial.js20180929054513_websockets.js20181113041458_http2_support.js20190104035154_disabled.js20190218060101_hsts.js20190227065017_settings.js
models
access_list.jsaccess_list_auth.jsaudit-log.jsauth.jscertificate.jsdead_host.jsproxy_host.jsredirection_host.jssetting.jsstream.jstoken.jsuser.jsuser_permission.js
routes
setup.jsviews
partials
frontend
test
.eslintrc.json.gitignore.prettierrcREADME.md
webpack.config.jscypress
jsconfig.jsonpackage.jsonyarn.lock
279
backend/schema/endpoints/redirection-hosts.json
Normal file
279
backend/schema/endpoints/redirection-hosts.json
Normal file
@ -0,0 +1,279 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||
"$id": "endpoints/redirection-hosts",
|
||||
"title": "Redirection Hosts",
|
||||
"description": "Endpoints relating to Redirection Hosts",
|
||||
"stability": "stable",
|
||||
"type": "object",
|
||||
"definitions": {
|
||||
"id": {
|
||||
"$ref": "../definitions.json#/definitions/id"
|
||||
},
|
||||
"created_on": {
|
||||
"$ref": "../definitions.json#/definitions/created_on"
|
||||
},
|
||||
"modified_on": {
|
||||
"$ref": "../definitions.json#/definitions/modified_on"
|
||||
},
|
||||
"domain_names": {
|
||||
"$ref": "../definitions.json#/definitions/domain_names"
|
||||
},
|
||||
"forward_domain_name": {
|
||||
"$ref": "../definitions.json#/definitions/domain_name"
|
||||
},
|
||||
"preserve_path": {
|
||||
"description": "Should the path be preserved",
|
||||
"example": true,
|
||||
"type": "boolean"
|
||||
},
|
||||
"certificate_id": {
|
||||
"$ref": "../definitions.json#/definitions/certificate_id"
|
||||
},
|
||||
"ssl_forced": {
|
||||
"$ref": "../definitions.json#/definitions/ssl_forced"
|
||||
},
|
||||
"hsts_enabled": {
|
||||
"$ref": "../definitions.json#/definitions/hsts_enabled"
|
||||
},
|
||||
"hsts_subdomains": {
|
||||
"$ref": "../definitions.json#/definitions/hsts_subdomains"
|
||||
},
|
||||
"http2_support": {
|
||||
"$ref": "../definitions.json#/definitions/http2_support"
|
||||
},
|
||||
"block_exploits": {
|
||||
"$ref": "../definitions.json#/definitions/block_exploits"
|
||||
},
|
||||
"advanced_config": {
|
||||
"type": "string"
|
||||
},
|
||||
"enabled": {
|
||||
"$ref": "../definitions.json#/definitions/enabled"
|
||||
},
|
||||
"meta": {
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"properties": {
|
||||
"id": {
|
||||
"$ref": "#/definitions/id"
|
||||
},
|
||||
"created_on": {
|
||||
"$ref": "#/definitions/created_on"
|
||||
},
|
||||
"modified_on": {
|
||||
"$ref": "#/definitions/modified_on"
|
||||
},
|
||||
"domain_names": {
|
||||
"$ref": "#/definitions/domain_names"
|
||||
},
|
||||
"forward_domain_name": {
|
||||
"$ref": "#/definitions/forward_domain_name"
|
||||
},
|
||||
"preserve_path": {
|
||||
"$ref": "#/definitions/preserve_path"
|
||||
},
|
||||
"certificate_id": {
|
||||
"$ref": "#/definitions/certificate_id"
|
||||
},
|
||||
"ssl_forced": {
|
||||
"$ref": "#/definitions/ssl_forced"
|
||||
},
|
||||
"hsts_enabled": {
|
||||
"$ref": "#/definitions/hsts_enabled"
|
||||
},
|
||||
"hsts_subdomains": {
|
||||
"$ref": "#/definitions/hsts_subdomains"
|
||||
},
|
||||
"http2_support": {
|
||||
"$ref": "#/definitions/http2_support"
|
||||
},
|
||||
"block_exploits": {
|
||||
"$ref": "#/definitions/block_exploits"
|
||||
},
|
||||
"advanced_config": {
|
||||
"$ref": "#/definitions/advanced_config"
|
||||
},
|
||||
"enabled": {
|
||||
"$ref": "#/definitions/enabled"
|
||||
},
|
||||
"meta": {
|
||||
"$ref": "#/definitions/meta"
|
||||
}
|
||||
},
|
||||
"links": [
|
||||
{
|
||||
"title": "List",
|
||||
"description": "Returns a list of Redirection Hosts",
|
||||
"href": "/nginx/redirection-hosts",
|
||||
"access": "private",
|
||||
"method": "GET",
|
||||
"rel": "self",
|
||||
"http_header": {
|
||||
"$ref": "../examples.json#/definitions/auth_header"
|
||||
},
|
||||
"targetSchema": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/properties"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"title": "Create",
|
||||
"description": "Creates a new Redirection Host",
|
||||
"href": "/nginx/redirection-hosts",
|
||||
"access": "private",
|
||||
"method": "POST",
|
||||
"rel": "create",
|
||||
"http_header": {
|
||||
"$ref": "../examples.json#/definitions/auth_header"
|
||||
},
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"domain_names",
|
||||
"forward_domain_name"
|
||||
],
|
||||
"properties": {
|
||||
"domain_names": {
|
||||
"$ref": "#/definitions/domain_names"
|
||||
},
|
||||
"forward_domain_name": {
|
||||
"$ref": "#/definitions/forward_domain_name"
|
||||
},
|
||||
"preserve_path": {
|
||||
"$ref": "#/definitions/preserve_path"
|
||||
},
|
||||
"certificate_id": {
|
||||
"$ref": "#/definitions/certificate_id"
|
||||
},
|
||||
"ssl_forced": {
|
||||
"$ref": "#/definitions/ssl_forced"
|
||||
},
|
||||
"hsts_enabled": {
|
||||
"$ref": "#/definitions/hsts_enabled"
|
||||
},
|
||||
"hsts_subdomains": {
|
||||
"$ref": "#/definitions/hsts_enabled"
|
||||
},
|
||||
"http2_support": {
|
||||
"$ref": "#/definitions/http2_support"
|
||||
},
|
||||
"block_exploits": {
|
||||
"$ref": "#/definitions/block_exploits"
|
||||
},
|
||||
"advanced_config": {
|
||||
"$ref": "#/definitions/advanced_config"
|
||||
},
|
||||
"meta": {
|
||||
"$ref": "#/definitions/meta"
|
||||
}
|
||||
}
|
||||
},
|
||||
"targetSchema": {
|
||||
"properties": {
|
||||
"$ref": "#/properties"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"title": "Update",
|
||||
"description": "Updates a existing Redirection Host",
|
||||
"href": "/nginx/redirection-hosts/{definitions.identity.example}",
|
||||
"access": "private",
|
||||
"method": "PUT",
|
||||
"rel": "update",
|
||||
"http_header": {
|
||||
"$ref": "../examples.json#/definitions/auth_header"
|
||||
},
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"domain_names": {
|
||||
"$ref": "#/definitions/domain_names"
|
||||
},
|
||||
"forward_domain_name": {
|
||||
"$ref": "#/definitions/forward_domain_name"
|
||||
},
|
||||
"preserve_path": {
|
||||
"$ref": "#/definitions/preserve_path"
|
||||
},
|
||||
"certificate_id": {
|
||||
"$ref": "#/definitions/certificate_id"
|
||||
},
|
||||
"ssl_forced": {
|
||||
"$ref": "#/definitions/ssl_forced"
|
||||
},
|
||||
"hsts_enabled": {
|
||||
"$ref": "#/definitions/hsts_enabled"
|
||||
},
|
||||
"hsts_subdomains": {
|
||||
"$ref": "#/definitions/hsts_enabled"
|
||||
},
|
||||
"http2_support": {
|
||||
"$ref": "#/definitions/http2_support"
|
||||
},
|
||||
"block_exploits": {
|
||||
"$ref": "#/definitions/block_exploits"
|
||||
},
|
||||
"advanced_config": {
|
||||
"$ref": "#/definitions/advanced_config"
|
||||
},
|
||||
"meta": {
|
||||
"$ref": "#/definitions/meta"
|
||||
}
|
||||
}
|
||||
},
|
||||
"targetSchema": {
|
||||
"properties": {
|
||||
"$ref": "#/properties"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"title": "Delete",
|
||||
"description": "Deletes a existing Redirection Host",
|
||||
"href": "/nginx/redirection-hosts/{definitions.identity.example}",
|
||||
"access": "private",
|
||||
"method": "DELETE",
|
||||
"rel": "delete",
|
||||
"http_header": {
|
||||
"$ref": "../examples.json#/definitions/auth_header"
|
||||
},
|
||||
"targetSchema": {
|
||||
"type": "boolean"
|
||||
}
|
||||
},
|
||||
{
|
||||
"title": "Enable",
|
||||
"description": "Enables a existing Redirection Host",
|
||||
"href": "/nginx/redirection-hosts/{definitions.identity.example}/enable",
|
||||
"access": "private",
|
||||
"method": "POST",
|
||||
"rel": "update",
|
||||
"http_header": {
|
||||
"$ref": "../examples.json#/definitions/auth_header"
|
||||
},
|
||||
"targetSchema": {
|
||||
"type": "boolean"
|
||||
}
|
||||
},
|
||||
{
|
||||
"title": "Disable",
|
||||
"description": "Disables a existing Redirection Host",
|
||||
"href": "/nginx/redirection-hosts/{definitions.identity.example}/disable",
|
||||
"access": "private",
|
||||
"method": "POST",
|
||||
"rel": "update",
|
||||
"http_header": {
|
||||
"$ref": "../examples.json#/definitions/auth_header"
|
||||
},
|
||||
"targetSchema": {
|
||||
"type": "boolean"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
Reference in New Issue
Block a user