diff options
author | Daniil Baturin <daniil@vyos.io> | 2022-03-27 11:47:15 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-27 11:47:15 +0300 |
commit | 34814e576adbe6aa3e863b6fd7404dbe54cdba55 (patch) | |
tree | aeaa3a023617707d2593db603acecf64fdbe83ab | |
parent | 6ad04c53e296cbc445474f1dcb0ceaba64af47f9 (diff) | |
parent | 3665d9f8dc9435b70084a5c185fb8bd27023fa4c (diff) | |
download | vyos-1x-34814e576adbe6aa3e863b6fd7404dbe54cdba55.tar.gz vyos-1x-34814e576adbe6aa3e863b6fd7404dbe54cdba55.zip |
Merge pull request #1254 from jestabro/eq-gql-test-node
graphql: T3993: add unsettable gql option; this is not exposed by CLI
-rw-r--r-- | python/vyos/defaults.py | 1 | ||||
-rwxr-xr-x | src/conf_mode/http-api.py | 9 | ||||
-rwxr-xr-x | src/services/vyos-http-api-server | 4 |
3 files changed, 13 insertions, 1 deletions
diff --git a/python/vyos/defaults.py b/python/vyos/defaults.py index 9bdb65012..bddbc08c9 100644 --- a/python/vyos/defaults.py +++ b/python/vyos/defaults.py @@ -48,6 +48,7 @@ api_data = { 'port' : '8080', 'socket' : False, 'strict' : False, + 'gql' : False, 'debug' : False, 'api_keys' : [ {"id": "testapp", "key": "qwerty"} ] } diff --git a/src/conf_mode/http-api.py b/src/conf_mode/http-api.py index b5f5e919f..00f3d4f7f 100755 --- a/src/conf_mode/http-api.py +++ b/src/conf_mode/http-api.py @@ -66,6 +66,15 @@ def get_config(config=None): if conf.exists('debug'): http_api['debug'] = True + # this node is not available by CLI by default, and is reserved for + # the graphql tools. One can enable it for testing, with the warning + # that this will open an unauthenticated server. To do so + # mkdir /opt/vyatta/share/vyatta-cfg/templates/service/https/api/gql + # touch /opt/vyatta/share/vyatta-cfg/templates/service/https/api/gql/node.def + # and configure; editing the config alone is insufficient. + if conf.exists('gql'): + http_api['gql'] = True + if conf.exists('socket'): http_api['socket'] = True diff --git a/src/services/vyos-http-api-server b/src/services/vyos-http-api-server index 06871f1d6..1000d8b72 100755 --- a/src/services/vyos-http-api-server +++ b/src/services/vyos-http-api-server @@ -648,10 +648,12 @@ if __name__ == '__main__': app.state.vyos_keys = server_config['api_keys'] app.state.vyos_debug = server_config['debug'] + app.state.vyos_gql = server_config['gql'] app.state.vyos_strict = server_config['strict'] app.state.vyos_origins = server_config.get('cors', {}).get('origins', []) - graphql_init(app) + if app.state.vyos_gql: + graphql_init(app) try: if not server_config['socket']: |