wekan-help 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681
  1. #!/bin/bash
  2. # first read settings
  3. source $SNAP/bin/wekan-read-settings &>/dev/null
  4. if [ "$CADDY_ENABLED" = "true" ]; then
  5. # tweak port nunmber as it has been remapped
  6. export PORT=${CADDY_PORT} &>/dev/null
  7. fi
  8. echo -e "Wekan: The open-source kanban.\n"
  9. echo -e "\n"
  10. echo -e "Debug OIDC OAuth2 etc."
  11. echo -e "To enable the Debug of Wekan:"
  12. echo -e "\t$ snap set $SNAP_NAME debug='true'"
  13. echo -e "\t-Disable the Debug of Wekan:"
  14. echo -e "\t$ snap unset $SNAP_NAME debug"
  15. echo -e "\n"
  16. echo -e "AWS S3 for files:"
  17. echo -e "\t$ snap set $NAP_NAME s3='{\"s3\":{\"key\": \"xxx\", \"secret\": \"xxx\", \"bucket\": \"xxx\", \"region\": \"eu-west-1\"}}'"
  18. echo -e "Disable S3:"
  19. echo -e "\t$ snap unset $SNAP_NAME s3"
  20. echo -e "\n"
  21. #echo -e "Writable path. Snap can not write outside of /var/snap/wekan/common sandbox directory."
  22. #echo -e "Default:"
  23. #echo -e "\t$ snap set $SNAP_NAME writable-path='\$SNAP_COMMON\files'"
  24. #echo -e "\t-To set different path, usually not needed:"
  25. #echo -e "\t$ snap set $SNAP_NAME writable-path='\$SNAP_COMMON\files2'"
  26. #echo -e "\n"
  27. echo -e "Mongo log destimation: devnull/snapcommon/syslog. Default: 'devnull'"
  28. echo -e "To set different mongo log destination of Wekan:"
  29. echo -e "\t$ snap set $SNAP_NAME mongo-log-destination='snapcommon'"
  30. echo -e "\n"
  31. echo -e "To enable the MONGO_URL of Wekan:"
  32. echo -e "\t$ snap set $SNAP_NAME mongo-url='...'"
  33. echo -e "\t-Disable the MONGO_URL of Wekan:"
  34. echo -e "\t$ snap unset $SNAP_NAME mongo-url"
  35. echo -e "\n"
  36. echo -e "Make sure you have connected all interfaces, check more by calling $ snap interfaces ${SNAP_NAME}"
  37. echo -e "\n"
  38. echo -e "${SNAP_NAME} has multiple services, to check status use systemctl"
  39. echo -e "\t$ systemctl status snap.$SNAP_NAME.*"
  40. echo -e "\n"
  41. echo -e "To make backup of wekan's database use: $ ${SNAP_NAME}.database-backup [backup file]"
  42. echo -e "\t backup file is optional parameter, if not passed backup is created in directory:"
  43. echo -e "\t\t${SNAP_COMMON}/db-backups"
  44. echo -e "To list existing backups in default directory: $ ${SNAP_NAME}.database-list-backups"
  45. echo -e "To restore wekan's database use: ${SNAP_NAME}.database-restore <path to backup>"
  46. echo -e "\n"
  47. echo -e "wekan can be configured to share mongodb with other services using content interface"
  48. echo -e "\t-sharing mongodb from $SNAP_NAME to other snap(s):"
  49. echo -e "\t\t-connect mongodb-slot with plug from corresponding snap(s)"
  50. echo -e "\t\t-configure corresponding service to use mongodb unix socket in shared directory, socket file name is: mongodb-$MONGODB_PORT.sock"
  51. echo -e "\t-sharing mongodb from other snap to $SNAP_NAME:"
  52. echo -e "\t\t-connect mongodb-plug with slot from snap providing mongodb"
  53. echo -e "\t\t-disable mongodb in $SNAP_NAME by calling: $ snap set $SNAP_NAME set disable-mongodb='true'"
  54. echo -e "\t\t-set mongodb-bind-unix-socket to point to serving mongodb. Use relative path inside shared directory, e.g run/mongodb-27017.sock"
  55. echo -e "\n"
  56. echo -e "To enable the API of wekan:"
  57. echo -e "\t$ snap set $SNAP_NAME with-api='true'"
  58. echo -e "\t-Disable the API:"
  59. echo -e "\t$ snap unset $SNAP_NAME with-api"
  60. echo -e "\n"
  61. echo -e "After OIDC login, add users automatically to this default board ID. https://github.com/wekan/wekan/pull/5098"
  62. echo -e "To enable the default board ID of wekan:"
  63. echo -e "\t$ snap set $SNAP_NAME default-board-id='abdc1234'"
  64. echo -e "\t-Disable the default board ID:"
  65. echo -e "\t$ snap unset $SNAP_NAME default-board-id"
  66. echo -e "\n"
  67. echo -e "Email: https://github.com/wekan/wekan/wiki/Troubleshooting-Mail"
  68. echo -e "mail-url:"
  69. echo -e "\t$ snap set $SNAP_NAME mail-url='smtp://username:password@email-smtp.eu-west-1.amazonaws.com:587?tls={ciphers:\"SSLv3\"}&secureConnection=false'"
  70. echo -e "mail-from:"
  71. echo -e "\t$ snap set $SNAP_NAME mail-from='Boards Support <support@example.com>'"
  72. echo -e "mail-service (CURRENTLY NOT IN USE):"
  73. echo -e "\t$ snap set $SNAP_NAME mail-service='Outlook365'"
  74. echo -e "mail-service-user:"
  75. echo -e "\t$ snap set $SNAP_NAME mail-service-user='firstname.lastname@hotmail.com'"
  76. echo -e "mail-service-password:"
  77. echo -e "\t$ snap set $SNAP_NAME mail-service-password='SecretPassword'"
  78. echo -e "\n"
  79. echo -e "Number of search results to show per page by default:"
  80. echo -e "\t$ snap set $SNAP_NAME results-per-page='20'"
  81. echo -e "\t-Restore default:"
  82. echo -e "\t$ snap unset $SNAP_NAME results-per-page"
  83. echo -e "\n"
  84. echo -e "Accounts lockout known users failures before, greater than 0. Default: 3"
  85. echo -e "\t$ snap set $SNAP_NAME accounts-lockout-known-users-failures-before='3'"
  86. echo -e "\t-Restore default:"
  87. echo -e "\t$ snap unset $SNAP_NAME accounts-lockout-known-users-failures-before"
  88. echo -e "\n"
  89. echo -e "Accounts lockout know users period, in seconds. Default: 60"
  90. echo -e "\t$ snap set $SNAP_NAME accounts-lockout-known-users-period='60'"
  91. echo -e "\t-Restore default:"
  92. echo -e "\t$ snap unset $SNAP_NAME accounts-lockout-known-users-period"
  93. echo -e "\n"
  94. echo -e "Accounts lockout unknown failure window, in seconds. Default: 15"
  95. echo -e "\t$ snap set $SNAP_NAME accounts-lockout-known-users-failure-window='15'"
  96. echo -e "\t-Restore default:"
  97. echo -e "\t$ snap unset $SNAP_NAME accounts-lockout-known-users-failure-window"
  98. echo -e "\n"
  99. echo -e "Accounts lockout unknown users failures before, greater than 0. Default: 3"
  100. echo -e "\t$ snap set $SNAP_NAME accounts-lockout-unknown-users-failures-before='3'"
  101. echo -e "\t-Restore default:"
  102. echo -e "\t$ snap unset $SNAP_NAME accounts-lockout-unknown-users-failures-before"
  103. echo -e "\n"
  104. echo -e "Accounts lockout unknown users lockout period, in seconds. Default: 60"
  105. echo -e "\t$ snap set $SNAP_NAME accounts-lockout-unknown-users-lockout-period='60'"
  106. echo -e "\t-Restore default:"
  107. echo -e "\t$ snap unset $SNAP_NAME accounts-lockout-unknown-users-lockout-period"
  108. echo -e "\n"
  109. echo -e "Accounts lockout unknown users failure window, in seconds. Default: 15"
  110. echo -e "\t$ snap set $SNAP_NAME accounts-lockout-unknown-users-failure-window='15'"
  111. echo -e "\t-Restore default:"
  112. echo -e "\t$ snap unset $SNAP_NAME accounts-lockout-unknown-users-failure-window"
  113. echo -e "\n"
  114. echo -e "Accounts common login expiration in days. Default: 90"
  115. echo -e "\t$ snap set $SNAP_NAME accounts-common-login-expiration-in-days='90'"
  116. echo -e "\t-Restore default:"
  117. echo -e "\t$ snap unset $SNAP_NAME accounts-common-login-expiration-in-days"
  118. echo -e "\n"
  119. echo -e "https://github.com/wekan/wekan/issues/3585#issuecomment-1021522132"
  120. echo -e "node-options: Add more Node heap. Default:"
  121. echo -e "\t$ snap set $SNAP_NAME node-options=\"--max_old_space_size=4096\""
  122. echo -e "\t-Remove node-options:"
  123. echo -e "\t$ snap unset $SNAP_NAME node-options"
  124. echo -e "\n"
  125. echo -e "Rich text editor in card comments. Default: false https://github.com/wekan/wekan/pull/2560"
  126. echo -e "Enable:"
  127. echo -e "\t$ snap set $SNAP_NAME richer-card-comment-editor='true'"
  128. echo -e "Disable:"
  129. echo -e "\t$ snap unset $SNAP_NAME richer-card-comment-editor"
  130. echo -e "\n"
  131. echo -e "Card opened, send webhook message. Default: false https://github.com/wekan/wekan/issues/2518"
  132. echo -e "Enable:"
  133. echo -e "\t$ snap set $SNAP_NAME card-opened-webhook-enabled='true'"
  134. echo -e "Disable, default:"
  135. echo -e "\t$ snap unset $SNAP_NAME card-opened-webhook-enabled"
  136. echo -e "\n"
  137. echo -e "Attachments upload validation by an external program. {file} is replaced by the uploaded file. Example: /usr/local/bin/avscan {file}"
  138. echo -e "Enable:"
  139. echo -e "\t$ snap set $SNAP_NAME attachments-upload-external-program='/usr/local/bin/avscan {file}'"
  140. echo -e "Disable, default:"
  141. echo -e "\t$ snap unset $SNAP_NAME attachments-upload-external-program"
  142. echo -e "\n"
  143. echo -e "Attachments upload mime types. Example: image/*,text/*"
  144. echo -e "Enable:"
  145. echo -e "\t$ snap set $SNAP_NAME attachments-upload-mime-types='image/*,text/*'"
  146. echo -e "Disable, default:"
  147. echo -e "\t$ snap unset $SNAP_NAME attachments-upload-mime-types"
  148. echo -e "\n"
  149. echo -e "Attachments upload max size in bytes. Example: 5000000"
  150. echo -e "Enable:"
  151. echo -e "\t$ snap set $SNAP_NAME attachments-upload-max-size='5000000'"
  152. echo -e "Disable, default:"
  153. echo -e "\t$ snap unset $SNAP_NAME attachments-upload-max-size"
  154. echo -e "\n"
  155. echo -e "Avatars upload validation by an external program. {file} is replaced by the uploaded file. Example: /usr/local/bin/avscan {file}"
  156. echo -e "Enable:"
  157. echo -e "\t$ snap set $SNAP_NAME avatars-upload-external-program='/usr/local/bin/avscan {file}'"
  158. echo -e "Disable, default:"
  159. echo -e "\t$ snap unset $SNAP_NAME avatars-upload-external-program"
  160. echo -e "\n"
  161. echo -e "Avatars upload mime types. Example: image/*,text/*"
  162. echo -e "Enable:"
  163. echo -e "\t$ snap set $SNAP_NAME avatars-upload-mime-types='image/*,text/*'"
  164. echo -e "Disable, default:"
  165. echo -e "\t$ snap unset $SNAP_NAME avatars-upload-mime-types"
  166. echo -e "\n"
  167. echo -e "Avatars upload max size in bytes. Example: 5000000"
  168. echo -e "Enable:"
  169. echo -e "\t$ snap set $SNAP_NAME avatars-upload-max-size='5000000'"
  170. echo -e "Disable, default:"
  171. echo -e "\t$ snap unset $SNAP_NAME avatars-upload-max-size"
  172. echo -e "\n"
  173. echo -e "Max image pixel: Allow to shrink attached/pasted image https://github.com/wekan/wekan/pull/2544"
  174. echo -e "Example:"
  175. echo -e "\t$ snap set $SNAP_NAME max-image-pixel='1024'"
  176. echo -e "Disable:"
  177. echo -e "\t$ snap unset $SNAP_NAME max-image-pixel"
  178. echo -e "\n"
  179. echo -e "Image compress ratio: Allow to shrink attached/pasted image https://github.com/wekan/wekan/pull/2544"
  180. echo -e "Example:"
  181. echo -e "\t$ snap set $SNAP_NAME image-compress-ratio='80'"
  182. echo -e "Disable:"
  183. echo -e "\t$ snap unset $SNAP_NAME image-compress-ratio"
  184. echo -e "\n"
  185. echo -e "NOTIFICATION TRAY AFTER READ DAYS BEFORE REMOVE https://github.com/wekan/wekan/pull/2998"
  186. echo -e "Number of days after a notification is read before we remove it. Default: 2."
  187. echo -e "Example:"
  188. echo -e "\t$ snap set $SNAP_NAME notification-tray-after-read-days-before-remove='4'"
  189. echo -e "Restore default:"
  190. echo -e "\t$ snap unset $SNAP_NAME notification-tray-after-read-days-before-remove"
  191. echo -e "\n"
  192. echo -e "BIGEVENTS DUE ETC NOTIFICATIONS https://github.com/wekan/wekan/pull/2541"
  193. echo -e "Big events pattern: Notify always due etc regardless of notification settings. Default: due, All: received|start|due|end, Disabled: NONE"
  194. echo -e "Default:"
  195. echo -e "\t$ snap set $SNAP_NAME bigevents-pattern='due'"
  196. echo -e "All:"
  197. echo -e "\t$ snap set $SNAP_NAME bigevents-pattern='received|start|due|end'"
  198. echo -e "Disabled:"
  199. echo -e "\t$ snap set $SNAP_NAME bigevents-pattern='NONE'"
  200. echo -e "\n"
  201. echo -e "EMAIL DUE DATE NOTIFICATION https://github.com/wekan/wekan/pull/2536"
  202. echo -e "System timelines will be showing any user modification for dueat startat endat receivedat, also notification to the watchers and if any card is due, about due or past due."
  203. echo -e "Notify due days, number less than 15 or negative number accepted, you can specify multiple days delimited by ','. Default: NONE"
  204. echo -e "To enable different Notify for Due Days on 2 days before, and on the event day "
  205. echo -e "\t$ snap set $SNAP_NAME notify-due-days-before-and-after='2,0'"
  206. echo -e "\t-Disable Notifying for Due Days:"
  207. echo -e "\t$ snap unset $SNAP_NAME notify-due-days-before-and-after"
  208. echo -e "\n"
  209. echo -e "Notify due at hour of day. Default every morning at 8am. Can be 0-23."
  210. echo -e "If env variable has parsing error, use default. Notification sent to watchers."
  211. echo -e "To enable different Notify Due At Hour Of Day than default 8:"
  212. echo -e "\t$ snap set $SNAP_NAME notify-due-at-hour-of-day='10'"
  213. echo -e "\t-To set back default 8 of Notify Due at Hour of Day:"
  214. echo -e "\t$ snap unset $SNAP_NAME notify-due-at-hour-of-day"
  215. echo -e "\n"
  216. echo -e "To enable the Email Notification Timeout of wekan in ms, default 30000 (=30s):"
  217. echo -e "\t$ snap set $SNAP_NAME email-notification-timeout='10000'"
  218. echo -e "\t-Restore default:"
  219. echo -e "\t$ snap unset $SNAP_NAME email-notification-timeout"
  220. echo -e "\n"
  221. echo -e "To enable the CORS of wekan, to set Access-Control-Allow-Origin header:"
  222. echo -e "\t$ snap set $SNAP_NAME cors='*'"
  223. echo -e "\t-Disable the CORS:"
  224. echo -e "\t$ snap unset $SNAP_NAME cors"
  225. echo -e "\n"
  226. echo -e "To enable the Set Access-Control-Allow-Headers header. \"Authorization,Content-Type\" is required for cross-origin use of the API."
  227. echo -e "\t$ snap set $SNAP_NAME cors-allow-headers='Authorization,Content-Type'"
  228. echo -e "\t-Disable the Set Access-Control-Allow-Headers header. \"Authorization,Content-Type\" is required for cross-origin use of the API."
  229. echo -e "\t$ snap unset $SNAP_NAME cors-allow-headers"
  230. echo -e "\n"
  231. echo -e "To enable the Set Access-Control-Expose-Headers header. This is not needed for typical CORS situations. Example: *"
  232. echo -e "\t$ snap set $SNAP_NAME cors-expose-headers='*'"
  233. echo -e "\t-Disable the Set Access-Control-Expose-Headers header. This is not needed for typical CORS situations. Example: ''"
  234. echo -e "\t$ snap unset $SNAP_NAME cors-expose-headers"
  235. echo -e "\n"
  236. echo -e "The address of the server where Matomo is hosted:"
  237. echo -e "\t$ snap set $SNAP_NAME matomo-address='https://matomo.example.com'"
  238. echo -e "\t-Disable the Matomo integration:"
  239. echo -e "\t$ snap unset $SNAP_NAME matomo-address"
  240. echo -e "\n"
  241. echo -e "The value of the site ID given in matomo server"
  242. echo -e "\t$ snap set $SNAP_NAME matomo-site-id='12345'"
  243. echo -e "\t-Disable the Matomo site id integration:"
  244. echo -e "\t$ snap unset $SNAP_NAME matomo-site-id"
  245. echo -e "\n"
  246. echo -e "The option do not track which enables users to not be tracked by matomo. Default: true"
  247. echo -e "\t$ snap set $SNAP_NAME matomo-do-not-track='true'"
  248. echo -e "\t-Disable the Matomo do not track:"
  249. echo -e "\t$ snap unset $SNAP_NAME matomo-do-not-track"
  250. echo -e "\n"
  251. echo -e "The option that allows matomo to retrieve the username. Default: false"
  252. echo -e "\t$ snap set $SNAP_NAME matomo-with-username='true'"
  253. echo -e "\t-Do not retrieve username:"
  254. echo -e "\t$ snap set $SNAP_NAME matomo-with-username='false'"
  255. echo -e "\n"
  256. echo -e "Metrics allowed IP addresses, separated by ',' . https://github.com/wekan/wekan/wiki/Metrics"
  257. echo -e "\t$ snap set $SNAP_NAME metrics-allowed-ip-addresses='192.168.0.100,192.168.0.200'"
  258. echo -e "\t-Disable the Metrics:"
  259. echo -e "\t$ snap unset $SNAP_NAME metrics-allowed-ip-addresses"
  260. echo -e "\n"
  261. echo -e "Enable browser policy and allow one trusted URL that can have iframe that has Wekan embedded inside."
  262. echo -e "\t\t Setting this to false is not recommended, it also disables all other browser policy protections"
  263. echo -e "\t\t and allows all iframing etc. See wekan/server/policy.js"
  264. echo -e "To enable the Browser Policy of Wekan:"
  265. echo -e "\t$ snap set $SNAP_NAME browser-policy-enabled='true'"
  266. echo -e "\t-Disable the Browser Policy of Wekan:"
  267. echo -e "\t$ snap set $SNAP_NAME browser-policy-enabled='false'"
  268. echo -e "\n"
  269. echo -e "When browser policy is enabled, HTML code at this URL can have iframe that embeds Wekan inside."
  270. echo -e "To enable the Trusted URL of Wekan:"
  271. echo -e "\t$ snap set $SNAP_NAME trusted-url='https://example.com'"
  272. echo -e "\t-Disable the Trusted URL of Wekan:"
  273. echo -e "\t$ snap unset $SNAP_NAME trusted-url"
  274. echo -e "\n"
  275. echo -e "What to send to Outgoing Webhook, or leave out. Example, that includes all that are default: cardId,listId,oldListId,boardId,comment,user,card,commentId ."
  276. echo -e "To enable the Webhooks Attributes of Wekan:"
  277. echo -e "\t$ snap set $SNAP_NAME webhooks-attributes='cardId,listId,oldListId,boardId,comment,user,card,commentId'"
  278. echo -e "\t-Disable the Webhooks Attributes of Wekan to send all default ones:"
  279. echo -e "\t$ snap unset $SNAP_NAME webhooks-attributes"
  280. echo -e "\n"
  281. echo -e "OAuth2 Enabled."
  282. echo -e "To enable the OAuth2 of Wekan:"
  283. echo -e "\t$ snap set $SNAP_NAME oauth2-enabled='true'"
  284. echo -e "\t-Disable the OAuth2 of Wekan:"
  285. echo -e "\t$ snap unset $SNAP_NAME oauth2-enabled"
  286. echo -e "\n"
  287. echo -e "OIDC/OAuth2 redirection to autologin, see https://github.com/wekan/wekan/wiki/autologin"
  288. echo -e "To enable the autologin of Wekan:"
  289. echo -e "\t$ snap set $SNAP_NAME oidc-redirection-enabled='true'"
  290. echo -e "\t-Disable the autologin of Wekan:"
  291. echo -e "\t$ snap unset $SNAP_NAME oidc-redirection-enabled"
  292. echo -e "\n"
  293. echo -e "Optional OAuth2 CA Cert, see https://github.com/wekan/wekan/issues/3299"
  294. echo -e "To enable the OAuth2 of Wekan:"
  295. echo -e "\t$ snap set $SNAP_NAME oauth2-ca-cert='ABCD134'"
  296. echo -e "\t-Disable the OAuth2 of Wekan:"
  297. echo -e "\t$ snap unset $SNAP_NAME oauth2-ca-cert"
  298. echo -e "\n"
  299. echo -e "Enable OAuth2 Oracle on premise identity manager OIM. Default: false"
  300. echo -e "To enable the OAuth2 Oracle OIM of Wekan:"
  301. echo -e "\t$ snap set $SNAP_NAME oracle-oim-enabled='true'"
  302. echo -e "\t-Disable the OAuth2 Oracle OIM of Wekan:"
  303. echo -e "\t$ snap unset $SNAP_NAME oracle-oim-enabled"
  304. echo -e "\n"
  305. echo -e "OAuth2 ADFS Enabled. Also requires oauth2-enabled='true'"
  306. echo -e "To enable the OAuth2 ADFS of Wekan:"
  307. echo -e "\t$ snap set $SNAP_NAME oauth2-adfs-enabled='true'"
  308. echo -e "\t-Disable the OAuth2 ADFS of Wekan:"
  309. echo -e "\t$ snap unset $SNAP_NAME oauth2-adfs-enabled"
  310. echo -e "\n"
  311. echo -e "OAuth2 Azure AD B2C Enabled. Also requires oauth2-enabled='true' . https://github.com/wekan/wekan/issues/5242."
  312. echo -e "To enable the OAuth2 Azure AD B2C of Wekan:"
  313. echo -e "\t$ snap set $SNAP_NAME oauth2-b2c-enabled='true'"
  314. echo -e "\t-Disable the OAuth2 Azure AD B2C of Wekan:"
  315. echo -e "\t$ snap unset $SNAP_NAME oauth2-b2c-enabled"
  316. echo -e "\n"
  317. echo -e "OAuth2 Client ID."
  318. echo -e "To enable the OAuth2 Client ID of Wekan:"
  319. echo -e "\t$ snap set $SNAP_NAME oauth2-client-id='54321abcde'"
  320. echo -e "\t-Disable the OAuth2 Client ID of Wekan:"
  321. echo -e "\t$ snap unset $SNAP_NAME oauth2-client-id"
  322. echo -e "\n"
  323. echo -e "OAuth2 login style: popup or redirect. Default: redirect"
  324. echo -e "To enable the OAuth2 login style popup of Wekan:"
  325. echo -e "\t$ snap set $SNAP_NAME oauth2-login-style='popup'"
  326. echo -e "\t-Disable the OAuth2 login style popup of Wekan:"
  327. echo -e "\t$ snap set $SNAP_NAME oauth2-login-style='redirect'"
  328. echo -e "\n"
  329. echo -e "OAuth2 Secret."
  330. echo -e "To enable the OAuth2 Secret of Wekan:"
  331. echo -e "\t$ snap set $SNAP_NAME oauth2-secret='54321abcde'"
  332. echo -e "\t-Disable the OAuth2 Secret of Wekan:"
  333. echo -e "\t$ snap unset $SNAP_NAME oauth2-secret"
  334. echo -e "\n"
  335. echo -e "OAuth2 Server URL."
  336. echo -e "To enable the OAuth2 Server URL of Wekan:"
  337. echo -e "\t$ snap set $SNAP_NAME oauth2-server-url='https://chat.example.com'"
  338. echo -e "\t-Disable the OAuth2 Server URL of Wekan:"
  339. echo -e "\t$ snap unset $SNAP_NAME oauth2-server-url"
  340. echo -e "\n"
  341. echo -e "OAuth2 Authorization Endpoint."
  342. echo -e "To enable the OAuth2 Authorization Endpoint of Wekan:"
  343. echo -e "\t$ snap set $SNAP_NAME oauth2-auth-endpoint='/oauth/authorize'"
  344. echo -e "\t-Disable the OAuth2 Authorization Endpoint of Wekan:"
  345. echo -e "\t$ snap unset $SNAP_NAME oauth2-auth-endpoint"
  346. echo -e "\n"
  347. echo -e "OAuth2 Userinfo Endpoint."
  348. echo -e "To enable the OAuth2 Userinfo Endpoint of Wekan:"
  349. echo -e "\t$ snap set $SNAP_NAME oauth2-userinfo-endpoint='/oauth/authorize'"
  350. echo -e "\t-Disable the OAuth2 Userinfo Endpoint of Wekan:"
  351. echo -e "\t$ snap unset $SNAP_NAME oauth2-userinfo-endpoint"
  352. echo -e "\n"
  353. echo -e "OAuth2 Token Endpoint."
  354. echo -e "To enable the OAuth2 Token Endpoint of Wekan:"
  355. echo -e "\t$ snap set $SNAP_NAME oauth2-token-endpoint='/oauth/token'"
  356. echo -e "\t-Disable the OAuth2 Token Endpoint of Wekan:"
  357. echo -e "\t$ snap unset $SNAP_NAME oauth2-token-endpoint"
  358. echo -e "\n"
  359. echo -e "OAuth2 ID Token Whitelist Fields."
  360. echo -e "To enable the OAuth2 ID Token Whitelist Fields of Wekan:"
  361. echo -e "\t$ snap set $SNAP_NAME oauth2-id-token-whitelist-fields=[]"
  362. echo -e "\t-Disable the OAuth2 ID Token Whitelist Fields of Wekan:"
  363. echo -e "\t$ snap unset $SNAP_NAME oauth2-id-token-whitelist-fields"
  364. echo -e "\n"
  365. echo -e "OAuth2 Request Permissions."
  366. echo -e "To enable the OAuth2 Request Permissions of Wekan:"
  367. echo -e "\t$ snap set $SNAP_NAME oauth2-request-permissions=\"'openid profile email'\""
  368. echo -e "\t-Disable the OAuth2 Request Permissions of Wekan:"
  369. echo -e "\t$ snap unset $SNAP_NAME oauth2-request-permissions"
  370. echo -e "\n"
  371. echo -e "OAuth2 ID Mapping."
  372. echo -e "To enable the OAuth2 ID Mapping of Wekan:"
  373. echo -e "\t$ snap set $SNAP_NAME oauth2-id-map='username.uid'"
  374. echo -e "\t-Disable the OAuth2 ID Mapping of Wekan:"
  375. echo -e "\t$ snap unset $SNAP_NAME oauth2-id-map"
  376. echo -e "\n"
  377. echo -e "OAuth2 Username Mapping."
  378. echo -e "To enable the OAuth2 Username Mapping of Wekan:"
  379. echo -e "\t$ snap set $SNAP_NAME oauth2-username-map='username'"
  380. echo -e "\t-Disable the OAuth2 Username Mapping of Wekan:"
  381. echo -e "\t$ snap unset $SNAP_NAME oauth2-username-map"
  382. echo -e "\n"
  383. echo -e "OAuth2 Fullname Mapping."
  384. echo -e "To enable the OAuth2 Fullname Mapping of Wekan:"
  385. echo -e "\t$ snap set $SNAP_NAME oauth2-fullname-map='fullname'"
  386. echo -e "\t-Disable the OAuth2 Fullname Mapping of Wekan:"
  387. echo -e "\t$ snap unset $SNAP_NAME oauth2-fullname-map"
  388. echo -e "\n"
  389. echo -e "OAuth2 Email Mapping."
  390. echo -e "To enable the OAuth2 Email Mapping of Wekan:"
  391. echo -e "\t$ snap set $SNAP_NAME oauth2-email-map='email'"
  392. echo -e "\t-Disable the OAuth2 Email Mapping of Wekan:"
  393. echo -e "\t$ snap unset $SNAP_NAME oauth2-email-map"
  394. echo -e "\n"
  395. echo -e "Ldap Enable."
  396. echo -e "To enable the ldap of Wekan:"
  397. echo -e "\t$ snap set $SNAP_NAME ldap-enable='true'"
  398. echo -e "\t-Disable the ldap of Wekan:"
  399. echo -e "\t$ snap set $SNAP_NAME ldap-enable='false'"
  400. echo -e "\n"
  401. echo -e "Ldap Port."
  402. echo -e "The port of the ldap server:"
  403. echo -e "\t$ snap set $SNAP_NAME ldap-port='12345'"
  404. echo -e "\n"
  405. echo -e "LDAP AD Simple Auth. When enabled, ldap-basedn is not needed, and also do set ldap-user-autentication='true'. Example: true. Enable:"
  406. echo -e "\t$ snap set $SNAP_NAME ldap-ad-simple-auth='true'"
  407. echo -e "\t-Disable the LDAP AD Simple Auth of Wekan:"
  408. echo -e "\t$ snap unset $SNAP_NAME ldap-ad-simple-auth"
  409. echo -e "\n"
  410. echo -e "a) Option to login to the LDAP server with the user's own username and password, instead of an administrator key. Default: false (use administrator key)."
  411. echo -e "b) For LDAP AD Simple Auth, set to true."
  412. echo -e "\t$ snap set $SNAP_NAME ldap-user-authentication='true'"
  413. echo -e "\n"
  414. echo -e "Which field is used to find the user for the user authentication. Default: uid."
  415. echo -e "\t$ snap set $SNAP_NAME ldap-user-authentication-field='uid'"
  416. echo -e "\n"
  417. echo -e "Ldap Host."
  418. echo -e "The host server for the LDAP server:"
  419. echo -e "\t$ snap set $SNAP_NAME ldap-host='localhost'"
  420. echo -e "\n"
  421. echo -e "Ldap Base Dn."
  422. echo -e "The base DN for the LDAP Tree:"
  423. echo -e "\t$ snap set $SNAP_NAME ldap-basedn='ou=user,dc=example,dc=org'"
  424. echo -e "\n"
  425. echo -e "Ldap Login Fallback."
  426. echo -e "Fallback on the default authentication method:"
  427. echo -e "\t$ snap set $SNAP_NAME ldap-login-fallback='true'"
  428. echo -e "\n"
  429. echo -e "Ldap Reconnect."
  430. echo -e "Reconnect to the server if the connection is lost:"
  431. echo -e "\t$ snap set $SNAP_NAME ldap-reconnect='false'"
  432. echo -e "\n"
  433. echo -e "Ldap Timeout."
  434. echo -e "Overall timeout, in milliseconds:"
  435. echo -e "\t$ snap set $SNAP_NAME ldap-timeout='12345'"
  436. echo -e "\n"
  437. echo -e "Ldap Idle Timeout."
  438. echo -e "Specifies the timeout for idle LDAP connections in milliseconds:"
  439. echo -e "\t$ snap set $SNAP_NAME ldap-idle-timeout='12345'"
  440. echo -e "\n"
  441. echo -e "Ldap Connect Timeout."
  442. echo -e "Connection timeout, in milliseconds:"
  443. echo -e "\t$ snap set $SNAP_NAME ldap-connect-timeout='12345'"
  444. echo -e "\n"
  445. echo -e "Ldap Authentication."
  446. echo -e "If the LDAP needs a user account to search:"
  447. echo -e "\t$ snap set $SNAP_NAME ldap-authentication='true'"
  448. echo -e "\n"
  449. echo -e "Ldap Authentication User Dn."
  450. echo -e "The search user Dn, 2 examples:"
  451. echo -e "\t$ snap set $SNAP_NAME ldap-authentication-userdn='CN=ldap admin,CN=users,DC=domainmatter,DC=lan'"
  452. echo -e "\t$ snap set $SNAP_NAME ldap-authentication-userdn='CN=wekan_adm,OU=serviceaccounts,OU=admin,OU=prod,DC=mydomain,DC=com'"
  453. echo -e "\n"
  454. echo -e "Ldap Authentication Password."
  455. echo -e "The password for the search user:"
  456. echo -e "\t$ snap set $SNAP_NAME ldap-authentication-password='admin'"
  457. echo -e "\n"
  458. echo -e "Ldap Log Enabled."
  459. echo -e "Enable logs for the module:"
  460. echo -e "\t$ snap set $SNAP_NAME ldap-log-enabled='true'"
  461. echo -e "\n"
  462. echo -e "Ldap Background Sync."
  463. echo -e "If the sync of the users should be done in the background:"
  464. echo -e "\t$ snap set $SNAP_NAME ldap-background-sync='true'"
  465. echo -e "\n"
  466. echo -e "Ldap Background Sync Interval."
  467. echo -e "At which interval does the background task sync."
  468. echo -e "The format must be as specified in: https://bunkat.github.io/later/parsers.html#text"
  469. echo -e "Default is empty '' that is same as 'every 1 hour'"
  470. echo -e "\t$ snap set $SNAP_NAME ldap-background-sync-interval='every 1 hour'"
  471. echo -e "\n"
  472. echo -e "Ldap Background Sync Keep Existant Users Updated."
  473. echo -e "\t$ snap set $SNAP_NAME ldap-background-sync-keep-existant-users-updated='true'"
  474. echo -e "\n"
  475. echo -e "Ldap Background Sync Import New Users."
  476. echo -e "\t$ snap set $SNAP_NAME ldap-background-sync-import-new-users='true'"
  477. echo -e "\n"
  478. echo -e "Ldap Encryption."
  479. echo -e "Allow LDAPS:"
  480. echo -e "\t$ snap set $SNAP_NAME ldap-encryption='ssl'"
  481. echo -e "\n"
  482. echo -e "Ldap Ca Cert."
  483. echo -e "The certification for the LDAPS server:"
  484. echo -e "\t$ snap set $SNAP_NAME ldap-ca-cert=-----BEGIN CERTIFICATE-----MIIE+zCCA+OgAwIBAgIkAhwR/6TVLmdRY6hHxvUFWc0+Enmu/Hu6cj+G2FIdAgIC...-----END CERTIFICATE-----"
  485. echo -e "\n"
  486. echo -e "Ldap Reject Unauthorized."
  487. echo -e "Reject Unauthorized Certificate:"
  488. echo -e "\t$ snap set $SNAP_NAME ldap-reject-unauthorized='true'"
  489. echo -e "\n"
  490. echo -e "Ldap User Search Filter."
  491. echo -e "Optional extra LDAP filters. Don't forget the outmost enclosing parentheses if needed:"
  492. echo -e "\t$ snap set $SNAP_NAME ldap-user-search-filter=''"
  493. echo -e "\n"
  494. echo -e "Ldap User Search Scope."
  495. echo -e "base (search only in the provided DN), one (search only in the provided DN and one level deep), or sub (search the whole subtree). Example: one"
  496. echo -e "\t$ snap set $SNAP_NAME ldap-user-search-scope=one"
  497. echo -e "\n"
  498. echo -e "Ldap User Search Field."
  499. echo -e "Which field is used to find the user:"
  500. echo -e "\t$ snap set $SNAP_NAME ldap-user-search-field='uid'"
  501. echo -e "\n"
  502. echo -e "Ldap Search Page Size."
  503. echo -e "Used for pagination (0=unlimited):"
  504. echo -e "\t$ snap set $SNAP_NAME ldap-search-page-size='12345'"
  505. echo -e "\n"
  506. echo -e "Ldap Search Size Limit."
  507. echo -e "The limit number of entries (0=unlimited):"
  508. echo -e "\t$ snap set $SNAP_NAME ldap-search-size-limit='12345'"
  509. echo -e "\n"
  510. echo -e "Ldap Group Filter Enable. Note the authenticated ldap user must be able to query all relevant group data with own login data from ldap."
  511. echo -e "Enable group filtering:"
  512. echo -e "\t$ snap set $SNAP_NAME ldap-group-filter-enable='true'"
  513. echo -e "\n"
  514. echo -e "Ldap Group Filter ObjectClass."
  515. echo -e "The object class for filtering:"
  516. echo -e "\t$ snap set $SNAP_NAME ldap-group-filter-objectclass='group'"
  517. echo -e "\n"
  518. echo -e "Ldap Group Filter Id Attribute."
  519. echo -e "\t$ snap set $SNAP_NAME ldap-group-filter-group-id-attribute=''"
  520. echo -e "\n"
  521. echo -e "Ldap Group Filter Member Attribute."
  522. echo -e "\t$ snap set $SNAP_NAME ldap-group-filter-group-member-attribute=''"
  523. echo -e "\n"
  524. echo -e "Ldap Group Filter Member Format."
  525. echo -e "\t$ snap set $SNAP_NAME ldap-group-filter-group-member-format=''"
  526. echo -e "\n"
  527. echo -e "Ldap Group Filter Group Name."
  528. echo -e "\t$ snap set $SNAP_NAME ldap-group-filter-group-name=''"
  529. echo -e "\n"
  530. echo -e "Ldap Unique Identifier Field."
  531. echo -e "This field is sometimes class GUID (Globally Unique Identifier):"
  532. echo -e "\t$ snap set $SNAP_NAME ldap-unique-identifier-field=guid"
  533. echo -e "\n"
  534. echo -e "Ldap Utf8 Names Slugify."
  535. echo -e "Convert the username to utf8:"
  536. echo -e "\t$ snap set $SNAP_NAME ldap-utf8-names-slugify='false'"
  537. echo -e "\n"
  538. echo -e "Ldap Username Field."
  539. echo -e "Which field contains the ldap username:"
  540. echo -e "\t$ snap set $SNAP_NAME ldap-username-field='username'"
  541. echo -e "\n"
  542. echo -e "Ldap Fullname Field."
  543. echo -e "Which field contains the ldap fullname:"
  544. echo -e "\t$ snap set $SNAP_NAME ldap-fullname-field='fullname'"
  545. echo -e "\n"
  546. echo -e "Ldap Merge Existing Users."
  547. echo -e "\t$ snap set $SNAP_NAME ldap-merge-existing-users='true'"
  548. echo -e "\n"
  549. echo -e "Ldap Email Match Enable."
  550. echo -e "\t$ snap set $SNAP_NAME ldap-email-match-enable='true'"
  551. echo -e "\n"
  552. echo -e "Ldap Email Match Require."
  553. echo -e "\t$ snap set $SNAP_NAME ldap-email-match-require='true'"
  554. echo -e "\n"
  555. echo -e "Ldap Email Match Verified."
  556. echo -e "\t$ snap set $SNAP_NAME ldap-email-match-verfied='false'"
  557. echo -e "\n"
  558. echo -e "Ldap Fullname Field."
  559. echo -e "Which field contains the ldap email address:"
  560. echo -e "\t$ snap set $SNAP_NAME ldap-fullname-field='fullname'"
  561. echo -e "\n"
  562. echo -e "Ldap Sync User Data."
  563. echo -e "Enable synchronization of user data:"
  564. echo -e "\t$ snap set $SNAP_NAME ldap-sync-user-data='true'"
  565. echo -e "\n"
  566. echo -e "Ldap Sync User Data Fieldmap."
  567. echo -e "A field map for the matching:"
  568. echo -e "\t$ snap set $SNAP_NAME ldap-sync-user-data-fieldmap={\"cn\":\"name\", \"mail\":\"email\"}"
  569. echo -e "\n"
  570. echo -e "Ldap Sync Group Roles."
  571. echo -e "\t$ snap set $SNAP_NAME ldap-sync-group-roles=''"
  572. echo -e "\n"
  573. echo -e "Ldap Default Domain."
  574. echo -e "a) In case AD SimpleAuth is configured, the default domain is appended to the given loginname for creating the correct username for the bind request to AD."
  575. echo -e "b) The default domain of the ldap it is used to create email if the field is not map correctly with the ldap-sync-user-data-fieldmap."
  576. echo -e "\t$ snap set $SNAP_NAME ldap-default-domain=''"
  577. echo -e "\n"
  578. echo -e "Enable/Disable syncing of admin status based on LDAP groups."
  579. echo -e "\t$ snap set $SNAP_NAME ldap-sync-admin-status='true'"
  580. echo -e "\n"
  581. echo -e "Comma separated list of admin group names to sync."
  582. echo -e "\t$ snap set $SNAP_NAME ldap-sync-admin-groups='group1,group2'"
  583. echo -e "\n"
  584. echo -e "Logout with timer."
  585. echo -e "Enable or not the option that allows to disconnect an user after a given time:"
  586. echo -e "\t$ snap set $SNAP_NAME logout-with-timer='true'"
  587. echo -e "\n"
  588. echo -e "Login to LDAP automatically with HTTP header."
  589. echo -e "In below example for siteminder, at right side of = is header name."
  590. echo -e "\t$ snap set $SNAP_NAME header-login-id='HEADERUID'"
  591. echo -e "\t$ snap set $SNAP_NAME header-login-firstname='HEADERFIRSTNAME'"
  592. echo -e "\t$ snap set $SNAP_NAME header-login-lastname='HEADERLASTNAME'"
  593. echo -e "\t$ snap set $SNAP_NAME header-login-email='HEADEREMAILADDRESS'"
  594. echo -e "\n"
  595. echo -e "Logout in."
  596. echo -e "Logout in how many days:"
  597. echo -e "\t$ snap set $SNAP_NAME logout-in='1'"
  598. echo -e "\n"
  599. echo -e "Logout on hours."
  600. echo -e "Logout in how many hours:"
  601. echo -e "\t$ snap set $SNAP_NAME logout-on-hours='9'"
  602. echo -e "\n"
  603. echo -e "Logout on minutes."
  604. echo -e "Logout in how many minutes:"
  605. echo -e "\t$ snap set $SNAP_NAME logout-on-minutes='5'"
  606. echo -e "\n"
  607. echo -e "Default authentication method."
  608. echo -e "The default authentication method used if a user does not exist to create and authenticate. Method can be password or ldap."
  609. echo -e "\t$ snap set $SNAP_NAME default-authentication-method='ldap'"
  610. echo -e "\n"
  611. echo -e "Enable or not password login Form"
  612. echo -e "\t$ snap set $SNAP_NAME password-login-enabled='false'"
  613. echo -e "\n"
  614. echo -e "CAS Enabled. Default: false"
  615. echo -e "\t$ snap set $SNAP_NAME cas-enabled='true'"
  616. echo -e "\n"
  617. echo -e "CAS Base URL."
  618. echo -e "\t$ snap set $SNAP_NAME cas-base-url='https://cas.example.com/cas'"
  619. echo -e "\n"
  620. echo -e "CAS Login URL."
  621. echo -e "\t$ snap set $SNAP_NAME cas-login-url='https://cas.example.com/login'"
  622. echo -e "\n"
  623. echo -e "CAS Validate URL."
  624. echo -e "\t$ snap set $SNAP_NAME cas-validate-url='https://cas.example.com/cas/p3/serviceValidate'"
  625. echo -e "\n"
  626. echo -e "SAML Enabled. Default: false"
  627. echo -e "\t$ snap set $SNAP_NAME saml-enabled='true'"
  628. echo -e "\n"
  629. echo -e "SAML Provider. openam or openidp."
  630. echo -e "\t$ snap set $SNAP_NAME saml-provider='openam'"
  631. echo -e "\n"
  632. echo -e "SAML Entrypoint."
  633. echo -e "\t$ snap set $SNAP_NAME saml-entrypoint=''"
  634. echo -e "\n"
  635. echo -e "SAML Issuer."
  636. echo -e "\t$ snap set $SNAP_NAME saml-issuer=''"
  637. echo -e "\n"
  638. echo -e "SAML Cert."
  639. echo -e "\t$ snap set $SNAP_NAME saml-cert=''"
  640. echo -e "\n"
  641. echo -e "SAML IDPS LO Redirect URL."
  642. echo -e "\t$ snap set $SNAP_NAME saml-ispslo-redirecturl=''"
  643. echo -e "\n"
  644. echo -e "SAML Private Keyfile."
  645. echo -e "\t$ snap set $SNAP_NAME saml-private-keyfile=''"
  646. echo -e "\n"
  647. echo -e "SAML Public Certfile."
  648. echo -e "\t$ snap set $SNAP_NAME saml-public-certfile=''"
  649. echo -e "\n"
  650. echo -e "SAML Identifier Format."
  651. echo -e "\t$ snap set $SNAP_NAME saml-identifier-format=''"
  652. echo -e "\n"
  653. echo -e "SAML Local Profile Match Attribute."
  654. echo -e "\t$ snap set $SNAP_NAME saml-local-profile-match-attribute=''"
  655. echo -e "\n"
  656. echo -e "SAML Attributes."
  657. echo -e "\t$ snap set $SNAP_NAME saml-attributes=''"
  658. echo -e "\n"
  659. echo -e "Wait spinner to use."
  660. echo -e "\t$ snap set $SNAP_NAME wait-spinner='Bounce'"
  661. echo -e "\n"
  662. # parse config file for supported settings keys
  663. echo -e "wekan supports settings keys"
  664. echo -e "values can be changed by calling\n$ snap set $SNAP_NAME <key name>='<key value>'"
  665. echo -e "list of supported keys:"
  666. for key in ${keys[@]}
  667. do
  668. default_value="DEFAULT_$key"
  669. description="DESCRIPTION_$key"
  670. snappy_key="KEY_$key"
  671. echo -e "\t${!snappy_key}: ${!description}"
  672. if [ "x" == "x${!key}" ]; then
  673. echo -e "\t\tNo value set, using default value: '${!default_value}'"
  674. else
  675. echo -e "\t\tCurrent value set to: '${!key}', (default value: '${!default_value}')"
  676. fi
  677. done
  678. echo -e "\n!!!! Some changes result in restart of some or all services, use with caution !!!!!"