1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/wekan_ynh.git synced 2024-09-03 20:36:09 +02:00

Merge pull request #135 from YunoHost-Apps/testing

Upgrade to 5.93~ynh1
This commit is contained in:
yalh76 2022-01-19 19:52:40 +01:00 committed by GitHub
commit 493a70f7d0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 154 additions and 114 deletions

View file

@ -17,7 +17,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in
Trello-like kanban Trello-like kanban
**Shipped version:** 5.35~ynh1 **Shipped version:** 5.93~ynh1
@ -27,10 +27,9 @@ Trello-like kanban
## Disclaimers / important information ## Disclaimers / important information
* Any known limitations, constrains or stuff not working, such as (but not limited to): * There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan.
* There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan. * This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500).
* This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500). * YunoHost users with more than one email address can't login to wekan using ldap. For example first YunoHost user has severals email addresses: root@domain; admin@domain; webmaster@domain; postmaster@domain, etc... Workaround: remove all mail aliases of the user you want to connect, connect one time on wekan, recreate the aliases of the YunoHost user.
* YunoHost users with more than one email address can't login to wekan using ldap. For example first YunoHost user has severals email addresses: root@domain; admin@domain; webmaster@domain; postmaster@domain, etc... Workaround: remove all mail aliases of the user you want to connect, connect one time on wekan, recreate the aliases of the YunoHost user.
## Configuration: ## Configuration:
As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group. As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group.
@ -48,7 +47,6 @@ If you have disable ldap authentication, first registered user will be admin, an
## Documentation and resources ## Documentation and resources
* Official app website: https://wekan.github.io * Official app website: https://wekan.github.io
* Official user documentation: https://yunohost.org/#/app_wekan
* Upstream app code repository: https://github.com/wekan/wekan * Upstream app code repository: https://github.com/wekan/wekan
* YunoHost documentation for this app: https://yunohost.org/app_wekan * YunoHost documentation for this app: https://yunohost.org/app_wekan
* Report a bug: https://github.com/YunoHost-Apps/wekan_ynh/issues * Report a bug: https://github.com/YunoHost-Apps/wekan_ynh/issues

View file

@ -13,7 +13,7 @@ Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour
Un kanban similaire à Trello Un kanban similaire à Trello
**Version incluse :** 5.35~ynh1 **Version incluse :** 5.93~ynh1
@ -23,10 +23,9 @@ Un kanban similaire à Trello
## Avertissements / informations importantes ## Avertissements / informations importantes
* Any known limitations, constrains or stuff not working, such as (but not limited to): * There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan.
* There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan. * This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500).
* This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500). * YunoHost users with more than one email address can't login to wekan using ldap. For example first YunoHost user has severals email addresses: root@domain; admin@domain; webmaster@domain; postmaster@domain, etc... Workaround: remove all mail aliases of the user you want to connect, connect one time on wekan, recreate the aliases of the YunoHost user.
* YunoHost users with more than one email address can't login to wekan using ldap. For example first YunoHost user has severals email addresses: root@domain; admin@domain; webmaster@domain; postmaster@domain, etc... Workaround: remove all mail aliases of the user you want to connect, connect one time on wekan, recreate the aliases of the YunoHost user.
## Configuration: ## Configuration:
As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group. As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group.
@ -44,7 +43,6 @@ If you have disable ldap authentication, first registered user will be admin, an
## Documentations et ressources ## Documentations et ressources
* Site officiel de l'app : https://wekan.github.io * Site officiel de l'app : https://wekan.github.io
* Documentation officielle utilisateur : https://yunohost.org/#/app_wekan
* Dépôt de code officiel de l'app : https://github.com/wekan/wekan * Dépôt de code officiel de l'app : https://github.com/wekan/wekan
* Documentation YunoHost pour cette app : https://yunohost.org/app_wekan * Documentation YunoHost pour cette app : https://yunohost.org/app_wekan
* Signaler un bug : https://github.com/YunoHost-Apps/wekan_ynh/issues * Signaler un bug : https://github.com/YunoHost-Apps/wekan_ynh/issues

View file

@ -1,9 +1,9 @@
;; Test complet ;; Test complet
; Manifest ; Manifest
domain="domain.tld" (DOMAIN) domain="domain.tld"
path="/path" (PATH) path="/path"
admin="john" (USER) admin="john"
is_public=1 (PUBLIC|public=1|private=0) is_public=1
; Checks ; Checks
pkg_linter=1 pkg_linter=1
setup_sub_dir=1 setup_sub_dir=1
@ -29,7 +29,9 @@
# 5.00~ynh1 # 5.00~ynh1
#upgrade=1 from_commit=8655e8062d1bc6e90b01b98ca9a0dea15d60119e #upgrade=1 from_commit=8655e8062d1bc6e90b01b98ca9a0dea15d60119e
# 5.17~ynh1 # 5.17~ynh1
#upgrade=1 from_commit=8cdb28eff25b8b431635b87f92f96f8e216ad71f upgrade=1 from_commit=8cdb28eff25b8b431635b87f92f96f8e216ad71f
# 5.35~ynh1
upgrade=1 from_commit=2e9c8be6b87d5c4cd6693e7b3c0c05cfc7d1ac51
backup_restore=1 backup_restore=1
multi_instance=1 multi_instance=1
port_already_use=0 port_already_use=0
@ -56,3 +58,5 @@ Notification=down
name=5.00~ynh1 name=5.00~ynh1
; commit=8cdb28eff25b8b431635b87f92f96f8e216ad71f ; commit=8cdb28eff25b8b431635b87f92f96f8e216ad71f
name=5.17~ynh1 name=5.17~ynh1
; commit=2e9c8be6b87d5c4cd6693e7b3c0c05cfc7d1ac51
name=5.35~ynh1

111
conf/.env
View file

@ -22,16 +22,23 @@ ROOT_URL='https://__DOMAIN____PATH__'
# https://github.com/wekan/wekan/wiki/Adding-users # https://github.com/wekan/wekan/wiki/Adding-users
# https://github.com/wekan/wekan/wiki/Troubleshooting-Mail # https://github.com/wekan/wekan/wiki/Troubleshooting-Mail
# https://github.com/wekan/wekan-mongodb/blob/master/docker-compose.yml # https://github.com/wekan/wekan-mongodb/blob/master/docker-compose.yml
MAIL_URL='smtp://localhost:25/' MAIL_URL='smtp://__MAIN_DOMAIN__:25/'
MAIL_FROM='Wekan Support <wekan@__DOMAIN__>' MAIL_FROM='Wekan Support <wekan@__DOMAIN__>'
# Currently MAIL_SERVICE is not in use.
#MAIL_SERVICE=Outlook365
#MAIL_SERVICE_USER=firstname.lastname@hotmail.com
#MAIL_SERVICE_PASSWORD=SecretPassword
#--------------------------------------------- #---------------------------------------------
#KADIRA_OPTIONS_ENDPOINT=http://127.0.0.1:11011 #KADIRA_OPTIONS_ENDPOINT=http://127.0.0.1:11011
#--------------------------------------------- #---------------------------------------------
# This is local port where Wekan Node.js runs, same as below on Caddyfile settings. # This is local port where Wekan Node.js runs, same as below on Caddyfile settings.
PORT=__PORT__ PORT=__PORT__
#--------------------------------------------- #---------------------------------------------
# Wekan Export Board works when WITH_API=true. # ==== NUMBER OF SEARCH RESULTS PER PAGE BY DEFAULT ====
# If you disable Wekan API with false, Export Board does not work. #RESULTS_PER_PAGE=20
#---------------------------------------------
# Wekan Board works when WITH_API=true.
# If you disable Wekan API with false, Board does not work.
WITH_API='true' WITH_API='true'
#--------------------------------------------------------------- #---------------------------------------------------------------
# ==== PASSWORD BRUTE FORCE PROTECTION ==== # ==== PASSWORD BRUTE FORCE PROTECTION ====
@ -44,6 +51,11 @@ WITH_API='true'
#ACCOUNTS_LOCKOUT_UNKNOWN_USERS_LOCKOUT_PERIOD=60 #ACCOUNTS_LOCKOUT_UNKNOWN_USERS_LOCKOUT_PERIOD=60
#ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW=15 #ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW=15
#--------------------------------------------------------------- #---------------------------------------------------------------
# ==== ACCOUNT OPTIONS ====
# https://docs.meteor.com/api/accounts-multi.html#AccountsCommon-config
# Defaults below. Uncomment to change. wekan/server/accounts-common.js
# - ACCOUNTS_COMMON_LOGIN_EXPIRATION_IN_DAYS=90
#---------------------------------------------------------------
# ==== RICH TEXT EDITOR IN CARD COMMENTS ==== # ==== RICH TEXT EDITOR IN CARD COMMENTS ====
# https://github.com/wekan/wekan/pull/2560 # https://github.com/wekan/wekan/pull/2560
RICHER_CARD_COMMENT_EDITOR=true RICHER_CARD_COMMENT_EDITOR=true
@ -70,26 +82,26 @@ CARD_OPENED_WEBHOOK_ENABLED=false
# disable the feature by setting this variable to "NONE" or # disable the feature by setting this variable to "NONE" or
# change the pattern to any valid regex. i.e. '|' delimited # change the pattern to any valid regex. i.e. '|' delimited
# activityType names. # activityType names.
# a) Example # a) Example
#BIGEVENTS_PATTERN=due #BIGEVENTS_PATTERN=due
# b) All # b) All
#BIGEVENTS_PATTERN=received|start|due|end #BIGEVENTS_PATTERN=received|start|due|end
# c) Disabled # c) Disabled
BIGEVENTS_PATTERN=NONE BIGEVENTS_PATTERN=NONE
#--------------------------------------------------------------- #---------------------------------------------------------------
# ==== EMAIL DUE DATE NOTIFICATION ===== # ==== EMAIL DUE DATE NOTIFICATION =====
# https://github.com/wekan/wekan/pull/2536 # https://github.com/wekan/wekan/pull/2536
# System timelines will be showing any user modification for # System timelines will be showing any user modification for
# dueat startat endat receivedat, also notification to # dueat startat endat receivedat, also notification to
# the watchers and if any card is due, about due or past due. # the watchers and if any card is due, about due or past due.
# #
# Notify due days, default is None. # Notify due days, default is None.
#NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2,0 #NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2,0
# it will notify user 2 days before due day and on the due day # it will notify user 2 days before due day and on the due day
# #
# Notify due at hour of day. Default every morning at 8am. Can be 0-23. # Notify due at hour of day. Default every morning at 8am. Can be 0-23.
# If env variable has parsing error, use default. Notification sent to watchers. # If env variable has parsing error, use default. Notification sent to watchers.
# NOTIFY_DUE_AT_HOUR_OF_DAY=8 #NOTIFY_DUE_AT_HOUR_OF_DAY=8
#----------------------------------------------------------------- #-----------------------------------------------------------------
# ==== EMAIL NOTIFICATION TIMEOUT, ms ===== # ==== EMAIL NOTIFICATION TIMEOUT, ms =====
# Defaut: 30000 ms = 30s # Defaut: 30000 ms = 30s
@ -115,6 +127,7 @@ BIGEVENTS_PATTERN=NONE
# The option that allows matomo to retrieve the username: # The option that allows matomo to retrieve the username:
# Example: MATOMO_WITH_USERNAME=true # Example: MATOMO_WITH_USERNAME=true
#MATOMO_WITH_USERNAME='false' #MATOMO_WITH_USERNAME='false'
#---------------------------------------------
# Enable browser policy and allow one trusted URL that can have iframe that has Wekan embedded inside. # Enable browser policy and allow one trusted URL that can have iframe that has Wekan embedded inside.
# Setting this to false is not recommended, it also disables all other browser policy protections # Setting this to false is not recommended, it also disables all other browser policy protections
# and allows all iframing etc. See wekan/server/policy.js # and allows all iframing etc. See wekan/server/policy.js
@ -137,27 +150,36 @@ WEBHOOKS_ATTRIBUTES=''
# 2) Configure the environment variables. This differs slightly # 2) Configure the environment variables. This differs slightly
# by installation type, but make sure you have the following: # by installation type, but make sure you have the following:
#OAUTH2_ENABLED=true #OAUTH2_ENABLED=true
#
# Optional OAuth2 CA Cert, see https://github.com/wekan/wekan/issues/3299 # Optional OAuth2 CA Cert, see https://github.com/wekan/wekan/issues/3299
#OAUTH2_CA_CERT=ABCD1234 #OAUTH2_CA_CERT=ABCD1234
#
# Use OAuth2 ADFS additional changes. Also needs OAUTH2_ENABLED=true setting. # Use OAuth2 ADFS additional changes. Also needs OAUTH2_ENABLED=true setting.
#OAUTH2_ADFS_ENABLED=false #OAUTH2_ADFS_ENABLED=false
#
# OAuth2 docs: https://github.com/wekan/wekan/wiki/OAuth2 # OAuth2 docs: https://github.com/wekan/wekan/wiki/OAuth2
# OAuth2 login style: popup or redirect. # OAuth2 login style: popup or redirect.
#OAUTH2_LOGIN_STYLE=redirect #OAUTH2_LOGIN_STYLE=redirect
#
# Application GUID captured during app registration: # Application GUID captured during app registration:
#OAUTH2_CLIENT_ID=xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx #OAUTH2_CLIENT_ID=xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx
#
# Secret key generated during app registration: # Secret key generated during app registration:
#OAUTH2_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #OAUTH2_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
#OAUTH2_SERVER_URL=https://login.microsoftonline.com/ #OAUTH2_SERVER_URL=https://login.microsoftonline.com/
#OAUTH2_AUTH_ENDPOINT=/oauth2/v2.0/authorize #OAUTH2_AUTH_ENDPOINT=/oauth2/v2.0/authorize
#OAUTH2_USERINFO_ENDPOINT=https://graph.microsoft.com/oidc/userinfo #OAUTH2_USERINFO_ENDPOINT=https://graph.microsoft.com/oidc/userinfo
#OAUTH2_TOKEN_ENDPOINT=/oauth2/v2.0/token #OAUTH2_TOKEN_ENDPOINT=/oauth2/v2.0/token
#
# The claim name you want to map to the unique ID field: # The claim name you want to map to the unique ID field:
#OAUTH2_ID_MAP=email #OAUTH2_ID_MAP=email
#
# The claim name you want to map to the username field: # The claim name you want to map to the username field:
#OAUTH2_USERNAME_MAP=email #OAUTH2_USERNAME_MAP=email
#
# The claim name you want to map to the full name field: # The claim name you want to map to the full name field:
#OAUTH2_FULLNAME_MAP=name #OAUTH2_FULLNAME_MAP=name
#
# The claim name you want to map to the email field: # The claim name you want to map to the email field:
#OAUTH2_EMAIL_MAP=email #OAUTH2_EMAIL_MAP=email
#----------------------------------------------------------------- #-----------------------------------------------------------------
@ -179,30 +201,43 @@ WEBHOOKS_ATTRIBUTES=''
# https://github.com/wekan/wekan/wiki/OAuth2 # https://github.com/wekan/wekan/wiki/OAuth2
# Enable the OAuth2 connection # Enable the OAuth2 connection
#OAUTH2_ENABLED=true #OAUTH2_ENABLED=true
#
# OAuth2 login style: popup or redirect. # OAuth2 login style: popup or redirect.
#OAUTH2_LOGIN_STYLE=redirect #OAUTH2_LOGIN_STYLE=redirect
#
# OAuth2 Client ID. # OAuth2 Client ID.
#OAUTH2_CLIENT_ID=abcde12345 #OAUTH2_CLIENT_ID=abcde12345
#
# OAuth2 Secret. # OAuth2 Secret.
#OAUTH2_SECRET=54321abcde #OAUTH2_SECRET=54321abcde
#
# OAuth2 Server URL. # OAuth2 Server URL.
#OAUTH2_SERVER_URL=https://chat.example.com #OAUTH2_SERVER_URL=https://chat.example.com
#
# OAuth2 Authorization Endpoint. # OAuth2 Authorization Endpoint.
#OAUTH2_AUTH_ENDPOINT=/oauth/authorize #OAUTH2_AUTH_ENDPOINT=/oauth/authorize
#
# OAuth2 Userinfo Endpoint. # OAuth2 Userinfo Endpoint.
#OAUTH2_USERINFO_ENDPOINT=/oauth/userinfo #OAUTH2_USERINFO_ENDPOINT=/oauth/userinfo
#
# OAuth2 Token Endpoint. # OAuth2 Token Endpoint.
#OAUTH2_TOKEN_ENDPOINT=/oauth/token #OAUTH2_TOKEN_ENDPOINT=/oauth/token
#
# OAUTH2 ID Token Whitelist Fields. # OAUTH2 ID Token Whitelist Fields.
#OAUTH2_ID_TOKEN_WHITELIST_FIELDS=[] #OAUTH2_ID_TOKEN_WHITELIST_FIELDS=[]
#
# OAUTH2 Request Permissions. # OAUTH2 Request Permissions.
#OAUTH2_REQUEST_PERMISSIONS='openid profile email' #OAUTH2_REQUEST_PERMISSIONS='openid profile email'
#
# OAuth2 ID Mapping # OAuth2 ID Mapping
#OAUTH2_ID_MAP= #OAUTH2_ID_MAP=
#
# OAuth2 Username Mapping # OAuth2 Username Mapping
#OAUTH2_USERNAME_MAP= #OAUTH2_USERNAME_MAP=
#
# OAuth2 Fullname Mapping # OAuth2 Fullname Mapping
#OAUTH2_FULLNAME_MAP= #OAUTH2_FULLNAME_MAP=
#
# OAuth2 Email Mapping # OAuth2 Email Mapping
#OAUTH2_EMAIL_MAP= #OAUTH2_EMAIL_MAP=
#--------------------------------------------- #---------------------------------------------
@ -218,10 +253,49 @@ LDAP_PORT=389
# example : LDAP_HOST=localhost # example : LDAP_HOST=localhost
#LDAP_HOST= #LDAP_HOST=
LDAP_HOST=localhost LDAP_HOST=localhost
#
#-----------------------------------------------------------------
# ==== LDAP AD Simple Auth ====
#
# Set to true, if you want to connect with Active Directory by Simple Authentication.
# When using AD Simple Auth, LDAP_BASEDN is not needed.
#
# Example:
#LDAP_AD_SIMPLE_AUTH=true
#
# === LDAP User Authentication ===
#
# 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).
#
# b) When using AD Simple Auth, set to true, when login user is used for binding,
# and LDAP_BASEDN is not needed.
#
# Example:
#LDAP_USER_AUTHENTICATION=true
#
# Which field is used to find the user for the user authentication. Default: uid.
#LDAP_USER_AUTHENTICATION_FIELD=uid
#
# === LDAP Default Domain ===
#
# 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.
#
# 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
#
# Example :
#LDAP_DEFAULT_DOMAIN=mydomain.com
#
#-----------------------------------------------------------------
# ==== LDAP BASEDN Auth ====
#
# LDAP_BASEDN : The base DN for the LDAP Tree # LDAP_BASEDN : The base DN for the LDAP Tree
# example : LDAP_BASEDN=ou=user,dc=example,dc=org # example : LDAP_BASEDN=ou=user,dc=example,dc=org
#LDAP_BASEDN= #LDAP_BASEDN=
LDAP_BASEDN=dc=yunohost,dc=org LDAP_BASEDN=dc=yunohost,dc=org
#---------------------------------------------
# LDAP_LOGIN_FALLBACK : Fallback on the default authentication method # LDAP_LOGIN_FALLBACK : Fallback on the default authentication method
# example : LDAP_LOGIN_FALLBACK=true # example : LDAP_LOGIN_FALLBACK=true
#LDAP_LOGIN_FALLBACK=false #LDAP_LOGIN_FALLBACK=false
@ -257,6 +331,7 @@ LDAP_AUTHENTIFICATION=false
# LDAP_AUTHENTIFICATION_PASSWORD : The password for the search user # LDAP_AUTHENTIFICATION_PASSWORD : The password for the search user
# example : AUTHENTIFICATION_PASSWORD=admin # example : AUTHENTIFICATION_PASSWORD=admin
#LDAP_AUTHENTIFICATION_PASSWORD= #LDAP_AUTHENTIFICATION_PASSWORD=
#
# LDAP_LOG_ENABLED : Enable logs for the module # LDAP_LOG_ENABLED : Enable logs for the module
# example : LDAP_LOG_ENABLED=true # example : LDAP_LOG_ENABLED=true
#LDAP_LOG_ENABLED=false #LDAP_LOG_ENABLED=false
@ -270,6 +345,7 @@ LDAP_BACKGROUND_SYNC=true
# Leave this unset, so it uses default, and does not crash. # Leave this unset, so it uses default, and does not crash.
# https://github.com/wekan/wekan/issues/2354#issuecomment-515305722 # https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
LDAP_BACKGROUND_SYNC_INTERVAL='' LDAP_BACKGROUND_SYNC_INTERVAL=''
#
# LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED : # LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED :
# example : LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=true # example : LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=true
#LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false #LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false
@ -281,16 +357,15 @@ LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS=true
# LDAP_ENCRYPTION : If using LDAPS # LDAP_ENCRYPTION : If using LDAPS
# example : LDAP_ENCRYPTION=ssl # example : LDAP_ENCRYPTION=ssl
#LDAP_ENCRYPTION=false #LDAP_ENCRYPTION=false
#
# LDAP_CA_CERT : The certification for the LDAPS server. Certificate needs to be included in this docker-compose.yml file. # LDAP_CA_CERT : The certification for the LDAPS server. Certificate needs to be included in this docker-compose.yml file.
# example : LDAP_CA_CERT=-----BEGIN CERTIFICATE-----MIIE+zCCA+OgAwIBAgIkAhwR/6TVLmdRY6hHxvUFWc0+Enmu/Hu6cj+G2FIdAgIC...-----END CERTIFICATE----- # example : LDAP_CA_CERT=-----BEGIN CERTIFICATE-----MIIE+zCCA+OgAwIBAgIkAhwR/6TVLmdRY6hHxvUFWc0+Enmu/Hu6cj+G2FIdAgIC...-----END CERTIFICATE-----
#LDAP_CA_CERT= #LDAP_CA_CERT=
#
# LDAP_REJECT_UNAUTHORIZED : Reject Unauthorized Certificate # LDAP_REJECT_UNAUTHORIZED : Reject Unauthorized Certificate
# example : LDAP_REJECT_UNAUTHORIZED=true # example : LDAP_REJECT_UNAUTHORIZED=true
#LDAP_REJECT_UNAUTHORIZED=false #LDAP_REJECT_UNAUTHORIZED=false
# 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). #
#LDAP_USER_AUTHENTICATION=true
# Which field is used to find the user for the user authentication. Default: uid.
#LDAP_USER_AUTHENTICATION_FIELD=uid
# LDAP_USER_SEARCH_FILTER : Optional extra LDAP filters. Don't forget the outmost enclosing parentheses if needed # LDAP_USER_SEARCH_FILTER : Optional extra LDAP filters. Don't forget the outmost enclosing parentheses if needed
# example : LDAP_USER_SEARCH_FILTER= # example : LDAP_USER_SEARCH_FILTER=
#LDAP_USER_SEARCH_FILTER= #LDAP_USER_SEARCH_FILTER=
@ -302,7 +377,7 @@ LDAP_USER_SEARCH_SCOPE=sub
# LDAP_USER_SEARCH_FIELD : Which field is used to find the user # LDAP_USER_SEARCH_FIELD : Which field is used to find the user
# example : LDAP_USER_SEARCH_FIELD=uid # example : LDAP_USER_SEARCH_FIELD=uid
#LDAP_USER_SEARCH_FIELD= #LDAP_USER_SEARCH_FIELD=
LDAP_USER_SEARCH_FIELD=uid LDAP_USER_SEARCH_FIELD=uid,mail
# LDAP_SEARCH_PAGE_SIZE : Used for pagination (0=unlimited) # LDAP_SEARCH_PAGE_SIZE : Used for pagination (0=unlimited)
# example : LDAP_SEARCH_PAGE_SIZE=12345 # example : LDAP_SEARCH_PAGE_SIZE=12345
#LDAP_SEARCH_PAGE_SIZE=0 #LDAP_SEARCH_PAGE_SIZE=0
@ -383,9 +458,6 @@ LDAP_SYNC_USER_DATA_FIELDMAP={"cn":"name"}
# example : # example :
#LDAP_SYNC_GROUP_ROLES= #LDAP_SYNC_GROUP_ROLES=
LDAP_SYNC_GROUP_ROLES=__APP__.admin LDAP_SYNC_GROUP_ROLES=__APP__.admin
# LDAP_DEFAULT_DOMAIN : 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
# example :
#LDAP_DEFAULT_DOMAIN=
# Enable/Disable syncing of admin status based on ldap groups: # Enable/Disable syncing of admin status based on ldap groups:
#LDAP_SYNC_ADMIN_STATUS=true #LDAP_SYNC_ADMIN_STATUS=true
LDAP_SYNC_ADMIN_STATUS=true LDAP_SYNC_ADMIN_STATUS=true
@ -411,7 +483,7 @@ LDAP_SYNC_ADMIN_GROUPS=__APP__.admin
# example : LOGOUT_ON_MINUTES=55 # example : LOGOUT_ON_MINUTES=55
#LOGOUT_ON_MINUTES= #LOGOUT_ON_MINUTES=
#--------------------------------------------------------------------- #---------------------------------------------------------------------
# PASSWORD_LOGIN_ENABLED : Enable or not the password login form. # PASSWORD_LOGIN_ENABLED : Enable or not the password login form.
#PASSWORD_LOGIN_ENABLED=true #PASSWORD_LOGIN_ENABLED=true
#--------------------------------------------------------------------- #---------------------------------------------------------------------
#CAS_ENABLED=true #CAS_ENABLED=true
@ -431,3 +503,6 @@ LDAP_SYNC_ADMIN_GROUPS=__APP__.admin
#SAML_LOCAL_PROFILE_MATCH_ATTRIBUTE= #SAML_LOCAL_PROFILE_MATCH_ATTRIBUTE=
#SAML_ATTRIBUTES= #SAML_ATTRIBUTES=
#--------------------------------------------------------------------- #---------------------------------------------------------------------
# Wait spinner to use
#WAIT_SPINNER=Bounce
#---------------------------------------------------------------------

9
conf/amd64.src Normal file
View file

@ -0,0 +1,9 @@
# This is on YunoHost server just to avoid the file from disappearing
# Original source is https://releases.wekan.team/wekan-5.93.zip
# YunoHost source is https://build.yunohost.org/apps/wekan-5.93.zip
SOURCE_URL=https://build.yunohost.org/apps/wekan-5.93.zip
SOURCE_SUM=de973b8be8e7dd938bccf6670455fac3260ce4aa59bd4ee890d6a3ce073c5275
SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=zip
SOURCE_IN_SUBDIR=true
SOURCE_FILENAME=wekan-5.93.zip

View file

@ -1,9 +1,9 @@
# This is on YunoHost server just to avoid the file from disappearing # This is on YunoHost server just to avoid the file from disappearing
# Original source is https://releases.wekan.team/raspi3/wekan-5.35-arm64.zip # Original source is https://releases.wekan.team/raspi3/wekan-5.93-arm64.zip
# YunoHost source is https://build.yunohost.org/apps/wekan-5.35-arm64.zip # YunoHost source is https://build.yunohost.org/apps/wekan-5.93-arm64.zip
SOURCE_URL=https://build.yunohost.org/apps/wekan-5.35-arm64.zip SOURCE_URL=https://build.yunohost.org/apps/wekan-5.93-arm64.zip
SOURCE_SUM=afd00947c25965ec5c8dbacaf97d666ef03a5350802587951c0a866e77c4ebae SOURCE_SUM=d015d2d128d1c9d1f71ba773f9e3914c97fb82e9b2c5d2a5bd5fdf23377a9980
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=zip SOURCE_FORMAT=zip
SOURCE_IN_SUBDIR=true SOURCE_IN_SUBDIR=true
SOURCE_FILENAME=wekan-5.35-arm64.zip SOURCE_FILENAME=wekan-5.93-arm64.zip

View file

@ -1,10 +1,5 @@
#sub_path_only rewrite ^__PATH__$ __PATH__/ permanent; #sub_path_only rewrite ^__PATH__$ __PATH__/ permanent;
location __PATH__/ { location __PATH__/ {
# Force usage of https
if ($scheme = http) {
rewrite ^ https://$server_name$request_uri? permanent;
}
client_max_body_size 100M; client_max_body_size 100M;
proxy_pass http://127.0.0.1:__PORT__; proxy_pass http://127.0.0.1:__PORT__;

View file

@ -1,9 +0,0 @@
# This is on YunoHost server just to avoid the file from disappearing
# Original source is https://releases.wekan.team/wekan-5.35.zip
# YunoHost source is https://build.yunohost.org/apps/wekan-5.35.zip
SOURCE_URL=https://build.yunohost.org/apps/wekan-5.35.zip
SOURCE_SUM=77746ab4788ee43f1187d8f6603d1a8cf229250831b85971a335b32db1499d8f
SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=zip
SOURCE_IN_SUBDIR=true
SOURCE_FILENAME=wekan-5.35.zip

1
doc/DESCRIPTION.md Normal file
View file

@ -0,0 +1 @@
WeKan ® is an completely Open Source and Free software collaborative kanban board application with MIT license.

View file

@ -1,7 +1,6 @@
* Any known limitations, constrains or stuff not working, such as (but not limited to): * There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan.
* There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan. * This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500).
* This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500). * YunoHost users with more than one email address can't login to wekan using ldap. For example first YunoHost user has severals email addresses: root@domain; admin@domain; webmaster@domain; postmaster@domain, etc... Workaround: remove all mail aliases of the user you want to connect, connect one time on wekan, recreate the aliases of the YunoHost user.
* YunoHost users with more than one email address can't login to wekan using ldap. For example first YunoHost user has severals email addresses: root@domain; admin@domain; webmaster@domain; postmaster@domain, etc... Workaround: remove all mail aliases of the user you want to connect, connect one time on wekan, recreate the aliases of the YunoHost user.
## Configuration: ## Configuration:
As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group. As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group.

View file

@ -6,12 +6,11 @@
"en": "Trello-like kanban", "en": "Trello-like kanban",
"fr": "Un kanban similaire à Trello" "fr": "Un kanban similaire à Trello"
}, },
"version": "5.35~ynh1", "version": "5.93~ynh1",
"url": "https://wekan.github.io", "url": "https://wekan.github.io",
"upstream": { "upstream": {
"license": "MIT", "license": "MIT",
"website": "https://wekan.github.io", "website": "https://wekan.github.io",
"userdoc": "https://yunohost.org/#/app_wekan",
"code": "https://github.com/wekan/wekan" "code": "https://github.com/wekan/wekan"
}, },
"license": "MIT", "license": "MIT",
@ -29,18 +28,17 @@
} }
], ],
"requirements": { "requirements": {
"yunohost": ">= 4.2.0" "yunohost": ">= 4.3.0"
}, },
"multi_instance": true, "multi_instance": true,
"services": [ "services": [
"nginx" "nginx"
], ],
"arguments": { "arguments": {
"install" : [ "install": [
{ {
"name": "domain", "name": "domain",
"type": "domain", "type": "domain"
"example": "example.com"
}, },
{ {
"name": "path", "name": "path",
@ -50,8 +48,7 @@
}, },
{ {
"name": "admin", "name": "admin",
"type": "user", "type": "user"
"example": "johndoe"
}, },
{ {
"name": "is_public", "name": "is_public",

View file

@ -7,7 +7,7 @@
# dependencies used by the app # dependencies used by the app
pkg_dependencies="" pkg_dependencies=""
NODEJS_VERSION=12.22.1 NODEJS_VERSION=12.22.9
#================================================= #=================================================
# PERSONAL HELPERS # PERSONAL HELPERS

View file

@ -7,7 +7,6 @@
#================================================= #=================================================
source _common.sh source _common.sh
source ynh_detect_arch__2
source ynh_mongo_db source ynh_mongo_db
source /usr/share/yunohost/helpers source /usr/share/yunohost/helpers
@ -37,9 +36,8 @@ app=$YNH_APP_INSTANCE_NAME
#================================================= #=================================================
ynh_script_progression --message="Validating installation parameters..." ynh_script_progression --message="Validating installation parameters..."
architecture=$(ynh_detect_arch)
# Check machine architecture (in particular, we don't support ARM and 32bit machines) # Check machine architecture (in particular, we don't support ARM and 32bit machines)
if [ $architecture == "i386" ] || [ $architecture == "arm" ] if [ $YNH_ARCH == "i386" ] || [ $YNH_ARCH == "armel" ]
then then
ynh_die --message="Sorry, but this app can only be installed on a x86, 64 bits machine :(" ynh_die --message="Sorry, but this app can only be installed on a x86, 64 bits machine :("
fi fi
@ -85,7 +83,7 @@ ynh_install_mongo
ynh_script_progression --message="Configuring system user..." ynh_script_progression --message="Configuring system user..."
# Create a system user # Create a system user
ynh_system_user_create --username=$app --home_dir="$final_path" ynh_system_user_create --username=$app --home_dir=$final_path
#================================================= #=================================================
# CREATE A MONGODB DATABASE # CREATE A MONGODB DATABASE
@ -104,7 +102,7 @@ ynh_script_progression --message="Setting up source files..."
ynh_app_setting_set --app=$app --key=final_path --value=$final_path ynh_app_setting_set --app=$app --key=final_path --value=$final_path
# Download, check integrity, uncompress and patch the source from app.src # Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$final_path" --source_id="$architecture" ynh_setup_source --dest_dir="$final_path" --source_id="$YNH_ARCH"
chmod 750 "$final_path" chmod 750 "$final_path"
chmod -R o-rwx "$final_path" chmod -R o-rwx "$final_path"
@ -125,6 +123,8 @@ ynh_add_nginx_config
#================================================= #=================================================
ynh_script_progression --message="Adding a config file..." ynh_script_progression --message="Adding a config file..."
main_domain=$(cat /etc/yunohost/current_host)
ynh_add_config --template=".env" --destination="$final_path/.env" ynh_add_config --template=".env" --destination="$final_path/.env"
chmod 400 "$final_path/.env" chmod 400 "$final_path/.env"

View file

@ -52,16 +52,6 @@ ynh_script_progression --message="Removing the MongoDB database..."
# Remove a database if it exists, along with the associated user # Remove a database if it exists, along with the associated user
ynh_mongo_remove_db --db_user=$db_user --db_name=$db_name ynh_mongo_remove_db --db_user=$db_user --db_name=$db_name
#=================================================
# REMOVE DEPENDENCIES
#=================================================
ynh_script_progression --message="Removing dependencies..."
# Remove metapackage and its dependencies
ynh_remove_app_dependencies
ynh_remove_nodejs
ynh_remove_mongo
#================================================= #=================================================
# REMOVE APP MAIN DIR # REMOVE APP MAIN DIR
#================================================= #=================================================
@ -78,6 +68,16 @@ ynh_script_progression --message="Removing NGINX web server configuration..."
# Remove the dedicated NGINX config # Remove the dedicated NGINX config
ynh_remove_nginx_config ynh_remove_nginx_config
#=================================================
# REMOVE DEPENDENCIES
#=================================================
ynh_script_progression --message="Removing dependencies..."
# Remove metapackage and its dependencies
ynh_remove_app_dependencies
ynh_remove_nodejs
ynh_remove_mongo
#================================================= #=================================================
# GENERIC FINALIZATION # GENERIC FINALIZATION
#================================================= #=================================================

View file

@ -39,8 +39,6 @@ db_user=$db_name
#================================================= #=================================================
ynh_script_progression --message="Validating restoration parameters..." ynh_script_progression --message="Validating restoration parameters..."
ynh_webpath_available --domain=$domain --path_url=$path_url \
|| ynh_die --message="Path not available: ${domain}${path_url}"
test ! -d $final_path \ test ! -d $final_path \
|| ynh_die --message="There is already a directory: $final_path " || ynh_die --message="There is already a directory: $final_path "

View file

@ -8,7 +8,6 @@
source _common.sh source _common.sh
source ynh_package_version source ynh_package_version
source ynh_detect_arch__2
source ynh_mongo_db source ynh_mongo_db
source /usr/share/yunohost/helpers source /usr/share/yunohost/helpers
@ -120,7 +119,7 @@ fi
ynh_script_progression --message="Making sure dedicated system user exists..." ynh_script_progression --message="Making sure dedicated system user exists..."
# Create a dedicated user (if not existing) # Create a dedicated user (if not existing)
ynh_system_user_create --username=$app --home_dir="$final_path" ynh_system_user_create --username=$app --home_dir=$final_path
#================================================= #=================================================
# DOWNLOAD, CHECK AND UNPACK SOURCE # DOWNLOAD, CHECK AND UNPACK SOURCE
@ -139,9 +138,8 @@ then
# Remove the app directory securely # Remove the app directory securely
ynh_secure_remove --file="$final_path" ynh_secure_remove --file="$final_path"
architecture=$(ynh_detect_arch)
# Download, check integrity, uncompress and patch the source from app.src # Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$final_path" --source_id="$architecture" ynh_setup_source --dest_dir="$final_path" --source_id="$YNH_ARCH"
#Copy the admin saved settings from tmp directory to final path #Copy the admin saved settings from tmp directory to final path
cp -af "$tmpdir/.env" "$final_path/.env" cp -af "$tmpdir/.env" "$final_path/.env"
@ -178,7 +176,9 @@ ynh_install_mongo
#================================================= #=================================================
# UPDATE A CONFIG FILE # UPDATE A CONFIG FILE
#================================================= #=================================================
ynh_script_progression --message="Updating a config file..." ynh_script_progression --message="Updating a configuration file..."
main_domain=$(cat /etc/yunohost/current_host)
ynh_add_config --template=".env" --destination="$final_path/.env" ynh_add_config --template=".env" --destination="$final_path/.env"

View file

@ -1,25 +0,0 @@
#!/bin/bash
# Check the architecture
#
# example: architecture=$(ynh_detect_arch)
#
# usage: ynh_detect_arch
#
# Requires YunoHost version 2.2.4 or higher.
ynh_detect_arch(){
local architecture
if [ -n "$(uname -m | grep arm64)" ] || [ -n "$(uname -m | grep aarch64)" ]; then
architecture="arm64"
elif [ -n "$(uname -m | grep 64)" ]; then
architecture="x86-64"
elif [ -n "$(uname -m | grep 86)" ]; then
architecture="i386"
elif [ -n "$(uname -m | grep arm)" ]; then
architecture="arm"
else
architecture="unknown"
fi
echo $architecture
}