[fix] wiki.js-roles
This commit is contained in:
parent
e516bcacc5
commit
cd7db6cf4e
7 changed files with 102 additions and 16 deletions
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"var_authelia_for_wiki_js_wiki_js_url_base": "https://wiki_js.example.org",
|
"var_authelia_for_wiki_js_wiki_js_url_base": "https://wiki-js.example.org",
|
||||||
"var_authelia_for_wiki_js_client_id": "wiki_js",
|
"var_authelia_for_wiki_js_client_id": "wiki_js",
|
||||||
"var_authelia_for_wiki_js_client_secret": "REPLACE_ME",
|
"var_authelia_for_wiki_js_client_secret": "REPLACE_ME",
|
||||||
"var_authelia_for_wiki_js_uuid": "REPLACE_ME"
|
"var_authelia_for_wiki_js_strategy_id": "authelia"
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"public": false,
|
"public": false,
|
||||||
"authorization_policy": "one_factor",
|
"authorization_policy": "one_factor",
|
||||||
"redirect_uris": [
|
"redirect_uris": [
|
||||||
"{{var_authelia_for_wiki_js_wiki_js_url_base}}/login/{{var_authelia_for_wiki_js_uuid}}/calback"
|
"{{var_authelia_for_wiki_js_wiki_js_url_base}}/login/{{var_authelia_for_wiki_js_strategy_id}}/callback"
|
||||||
],
|
],
|
||||||
"scopes": [
|
"scopes": [
|
||||||
"openid",
|
"openid",
|
||||||
|
@ -13,5 +13,5 @@
|
||||||
"profile"
|
"profile"
|
||||||
],
|
],
|
||||||
"userinfo_signed_response_alg": "none",
|
"userinfo_signed_response_alg": "none",
|
||||||
"token_endpoint_auth_method": "client_secret_basic"
|
"token_endpoint_auth_method": "client_secret_post"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"var_vikunja_and_nginx_domain": "vikunja.example.org",
|
"var_wiki_js_and_nginx_domain": "wiki-js.example.org",
|
||||||
"var_wiki_js_and_nginx_internal_port": 5632,
|
"var_wiki_js_and_nginx_internal_port": 5632,
|
||||||
"var_vikunja_and_nginx_tls_mode": "force"
|
"var_wiki_js_and_nginx_tls_mode": "force"
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
"var_wiki_js_log_level": "info",
|
"var_wiki_js_log_level": "info",
|
||||||
"var_wiki_js_log_format": "default",
|
"var_wiki_js_log_format": "default",
|
||||||
"var_wiki_js_database_kind": "sqlite",
|
"var_wiki_js_database_kind": "sqlite",
|
||||||
"var_wiki_js_database_data_sqlite_path": "/var/wiki.js/data.sqlite",
|
"var_wiki_js_database_data_sqlite_path": "/var/wiki_js/data.sqlite",
|
||||||
"var_wiki_js_database_data_postgresql_host": "postgresql.example.org",
|
"var_wiki_js_database_data_postgresql_host": "postgresql.example.org",
|
||||||
"var_wiki_js_database_data_postgresql_port": 5432,
|
"var_wiki_js_database_data_postgresql_port": 5432,
|
||||||
"var_wiki_js_database_data_postgresql_username": "wiki_js_user",
|
"var_wiki_js_database_data_postgresql_username": "wiki_js_user",
|
||||||
|
|
|
@ -544,6 +544,43 @@ wiki_js.cli.api = (wiki_js.cli.api || {});
|
||||||
}
|
}
|
||||||
exports.call_authentication_strategy_set = call_authentication_strategy_set;
|
exports.call_authentication_strategy_set = call_authentication_strategy_set;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*/
|
||||||
|
function call_theming_set(
|
||||||
|
login_token,
|
||||||
|
dark_mode,
|
||||||
|
toc_position
|
||||||
|
)
|
||||||
|
{
|
||||||
|
wiki_js.cli.helpers.log.write(
|
||||||
|
"info",
|
||||||
|
"api_call_theming_set",
|
||||||
|
{
|
||||||
|
"dark_mode": dark_mode,
|
||||||
|
"toc_position": toc_position,
|
||||||
|
}
|
||||||
|
);
|
||||||
|
return (
|
||||||
|
call_generic_graphql(
|
||||||
|
"mutation ($theme: String!, $iconset: String!, $darkMode: Boolean!, $tocPosition: String, $injectCSS: String, $injectHead: String, $injectBody: String) {theming {setConfig(theme: $theme, iconset: $iconset, darkMode: $darkMode, tocPosition: $tocPosition, injectCSS: $injectCSS, injectHead: $injectHead, injectBody: $injectBody) {responseResult {succeeded errorCode slug message __typename} __typename} __typename}}",
|
||||||
|
{
|
||||||
|
"login_token": login_token,
|
||||||
|
"variables": {
|
||||||
|
"theme": "default",
|
||||||
|
"iconset": "mdi",
|
||||||
|
"darkMode": dark_mode,
|
||||||
|
"tocPosition": "left",
|
||||||
|
"injectCSS": "",
|
||||||
|
"injectHead": "",
|
||||||
|
"injectBody": ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
exports.call_theming_set = call_theming_set;
|
||||||
|
|
||||||
}) (wiki_js.cli.api);
|
}) (wiki_js.cli.api);
|
||||||
|
|
||||||
|
|
||||||
|
@ -760,6 +797,31 @@ wiki_js.cli.logic = (wiki_js.cli.logic || {});
|
||||||
}
|
}
|
||||||
exports.authentication_strategy_add = authentication_strategy_add;
|
exports.authentication_strategy_add = authentication_strategy_add;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*/
|
||||||
|
async function theming_set(
|
||||||
|
options = {}
|
||||||
|
)
|
||||||
|
{
|
||||||
|
options = Object.assign(
|
||||||
|
{
|
||||||
|
"dark_mode": false,
|
||||||
|
"toc_position": "left",
|
||||||
|
},
|
||||||
|
options
|
||||||
|
);
|
||||||
|
const login_token = await wiki_js.cli.api.call_login_local(
|
||||||
|
);
|
||||||
|
const result = await wiki_js.cli.api.call_theming_set(
|
||||||
|
login_token,
|
||||||
|
options.dark_mode,
|
||||||
|
options.toc_position
|
||||||
|
);
|
||||||
|
return Promise.resolve(result);
|
||||||
|
}
|
||||||
|
exports.theming_set = theming_set;
|
||||||
|
|
||||||
}) (wiki_js.cli.logic);
|
}) (wiki_js.cli.logic);
|
||||||
|
|
||||||
|
|
||||||
|
@ -849,7 +911,7 @@ wiki_js.cli = (wiki_js.cli || {});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "init": {
|
case "init": {
|
||||||
if (args.positional.length < 3) {
|
if (args.positional.length <= 2) {
|
||||||
return Promise.reject("SYNTAX: … init <admin-email-address> <admin-password> [<site-url> [<allow-telemetry>]]");
|
return Promise.reject("SYNTAX: … init <admin-email-address> <admin-password> [<site-url> [<allow-telemetry>]]");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -878,7 +940,7 @@ wiki_js.cli = (wiki_js.cli || {});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "email-settings-set": {
|
case "email-settings-set": {
|
||||||
if (args.positional.length < 7) {
|
if (args.positional.length <= 6) {
|
||||||
return Promise.reject("SYNTAX: … email-settings-set <smtp-host> <smtp-port> <smtp-username> <smtp-password> <sender-name> <sender-email-address>");
|
return Promise.reject("SYNTAX: … email-settings-set <smtp-host> <smtp-port> <smtp-username> <smtp-password> <sender-name> <sender-email-address>");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -910,7 +972,7 @@ wiki_js.cli = (wiki_js.cli || {});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "auth-strat-add-oauth2": {
|
case "auth-strat-add-oauth2": {
|
||||||
if (args.positional.length < 8) {
|
if (args.positional.length <= 7) {
|
||||||
return Promise.reject("SYNTAX: … auth-strat-add-oauth2 <strategy-key> <strategy-name> <strategy-client-id> <strategy-client-secret> <strategy-authorization-url> <strategy-token-url> <strategy-user-info-url>");
|
return Promise.reject("SYNTAX: … auth-strat-add-oauth2 <strategy-key> <strategy-name> <strategy-client-id> <strategy-client-secret> <strategy-authorization-url> <strategy-token-url> <strategy-user-info-url>");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -929,6 +991,21 @@ wiki_js.cli = (wiki_js.cli || {});
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case "theming-set": {
|
||||||
|
if (args.positional.length <= 2) {
|
||||||
|
return Promise.reject("SYNTAX: … theming-set <dark-mode> [<toc-position>]");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
await wiki_js.cli.logic.theming_set(
|
||||||
|
{
|
||||||
|
"dark_mode": (args.positional[1] === "1"),
|
||||||
|
"toc_position": args.positional[2],
|
||||||
|
}
|
||||||
|
);
|
||||||
|
return Promise.resolve(undefined);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,5 +11,5 @@
|
||||||
|
|
||||||
## ToDo
|
## ToDo
|
||||||
|
|
||||||
- Admin-Account
|
- Locale
|
||||||
- E-Mail
|
- Start Page
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
"become_user": "{{var_wiki_js_user}}",
|
"become_user": "{{var_wiki_js_user}}",
|
||||||
"ansible.builtin.get_url": {
|
"ansible.builtin.get_url": {
|
||||||
"url": "https://github.com/Requarks/wiki/releases/latest/download/wiki-js.tar.gz",
|
"url": "https://github.com/Requarks/wiki/releases/latest/download/wiki-js.tar.gz",
|
||||||
"dest": "/tmp/wiki_js.zip"
|
"dest": "/tmp/wiki_js.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -121,7 +121,7 @@
|
||||||
"become_user": "{{var_wiki_js_user}}",
|
"become_user": "{{var_wiki_js_user}}",
|
||||||
"ansible.builtin.command": {
|
"ansible.builtin.command": {
|
||||||
"chdir": "{{var_wiki_js_directory}}",
|
"chdir": "{{var_wiki_js_directory}}",
|
||||||
"cmd": "node cli.js -b https://{{var_wiki_js_domain}} init {{var_wiki_js_admin_email_address}} {{var_wiki_js_admin_password}} https://{{var_wiki_js_domain}} 0"
|
"cmd": "node cli.js -b http://127.0.0.1:{{var_wiki_js_port | string}} init {{var_wiki_js_admin_email_address}} {{var_wiki_js_admin_password}} https://{{var_wiki_js_domain}} 0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -130,7 +130,16 @@
|
||||||
"become_user": "{{var_wiki_js_user}}",
|
"become_user": "{{var_wiki_js_user}}",
|
||||||
"ansible.builtin.command": {
|
"ansible.builtin.command": {
|
||||||
"chdir": "{{var_wiki_js_directory}}",
|
"chdir": "{{var_wiki_js_directory}}",
|
||||||
"cmd": "node cli.js -b https://{{var_wiki_js_domain}} -u {{var_wiki_js_admin_email_address}} -p {{var_wiki_js_admin_password}} email-settings-set {{var_wiki_js_smtp_host}} {{var_wiki_js_smtp_port}} {{var_wiki_js_smtp_username}} {{var_wiki_js_smtp_password}} {{email_sending_sender_name}} {{email_sending_sender_email_address}}"
|
"cmd": "node cli.js -b http://127.0.0.1:{{var_wiki_js_port | string}} -u {{var_wiki_js_admin_email_address}} -p {{var_wiki_js_admin_password}} email-settings-set {{var_wiki_js_smtp_host}} {{var_wiki_js_smtp_port}} {{var_wiki_js_smtp_username}} {{var_wiki_js_smtp_password}} {{email_sending_sender_name}} {{email_sending_sender_email_address}}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "theming",
|
||||||
|
"become": true,
|
||||||
|
"become_user": "{{var_wiki_js_user}}",
|
||||||
|
"ansible.builtin.command": {
|
||||||
|
"chdir": "{{var_wiki_js_directory}}",
|
||||||
|
"cmd": "node cli.js -b http://127.0.0.1:{{var_wiki_js_port | string}} -u {{var_wiki_js_admin_email_address}} -p {{var_wiki_js_admin_password}} theming-set 1 left"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -140,7 +149,7 @@
|
||||||
"become_user": "{{var_wiki_js_user}}",
|
"become_user": "{{var_wiki_js_user}}",
|
||||||
"ansible.builtin.command": {
|
"ansible.builtin.command": {
|
||||||
"chdir": "{{var_wiki_js_directory}}",
|
"chdir": "{{var_wiki_js_directory}}",
|
||||||
"cmd": "node cli.js -b https://{{var_wiki_js_domain}} -u {{var_wiki_js_admin_email_address}} -p {{var_wiki_js_admin_password}} auth-strat-add-oauth2 {{var_wiki_js_authentication_data_authelia_provider_id}} {{var_wiki_js_authentication_data_authelia_provider_name}} {{var_wiki_js_authentication_data_authelia_client_id}} {{var_wiki_js_authentication_data_authelia_client_secret}} {{var_wiki_js_authentication_data_authelia_url_base}}/api/oidc/authorization {{var_wiki_js_authentication_data_authelia_url_base}}/api/oidc/token {{var_wiki_js_authentication_data_authelia_url_base}}/api/oidc/userinfo"
|
"cmd": "node cli.js -b http://127.0.0.1:{{var_wiki_js_port | string}} -u {{var_wiki_js_admin_email_address}} -p {{var_wiki_js_admin_password}} auth-strat-add-oauth2 {{var_wiki_js_authentication_data_authelia_provider_id}} {{var_wiki_js_authentication_data_authelia_provider_name}} {{var_wiki_js_authentication_data_authelia_client_id}} {{var_wiki_js_authentication_data_authelia_client_secret}} {{var_wiki_js_authentication_data_authelia_url_base}}/api/oidc/authorization {{var_wiki_js_authentication_data_authelia_url_base}}/api/oidc/token {{var_wiki_js_authentication_data_authelia_url_base}}/api/oidc/userinfo"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
Loading…
Add table
Reference in a new issue