From 7b5f02b4c8fdaa66a01d528ea338a76fe1b9f974 Mon Sep 17 00:00:00 2001 From: Gavin Lilly Date: Sat, 9 Feb 2019 23:22:22 +0000 Subject: [PATCH 01/16] Added Kadira packages and env settings in Docker Compose --- .meteor/packages | 1 + docker-compose.yml | 73 ++++++++++++++++++++++++++++++++++------------ server/kadira.js | 5 ++++ 3 files changed, 61 insertions(+), 18 deletions(-) create mode 100644 server/kadira.js diff --git a/.meteor/packages b/.meteor/packages index 88a0cae68..228427e4a 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -90,3 +90,4 @@ wekan:wekan-ldap wekan:accounts-cas wekan-scrollbar mquandalle:perfect-scrollbar +meteorhacks:kadira diff --git a/docker-compose.yml b/docker-compose.yml index abcaa48bd..951c705e8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -98,7 +98,7 @@ services: #------------------------------------------------------------------------------------- container_name: wekan-db restart: always - command: mongod --smallfiles --oplogSize 128 + command: mongod --smallfiles --replSet kadira --oplogSize 128 networks: - wekan-tier expose: @@ -129,26 +129,26 @@ services: #------------------------------------------------------------------------------------- # ==== BUILD wekan-app DOCKER CONTAINER FROM SOURCE, if you uncomment these ==== # ==== and use commands: docker-compose up -d --build - #build: - # context: . - # dockerfile: Dockerfile - # args: - # - NODE_VERSION=${NODE_VERSION} - # - METEOR_RELEASE=${METEOR_RELEASE} - # - NPM_VERSION=${NPM_VERSION} - # - ARCHITECTURE=${ARCHITECTURE} - # - SRC_PATH=${SRC_PATH} - # - METEOR_EDGE=${METEOR_EDGE} - # - USE_EDGE=${USE_EDGE} + build: + context: . + dockerfile: Dockerfile + args: + - NODE_VERSION=${NODE_VERSION} + - METEOR_RELEASE=${METEOR_RELEASE} + - NPM_VERSION=${NPM_VERSION} + - ARCHITECTURE=${ARCHITECTURE} + - SRC_PATH=${SRC_PATH} + - METEOR_EDGE=${METEOR_EDGE} + - USE_EDGE=${USE_EDGE} #------------------------------------------------------------------------------------- ports: # Docker outsideport:insideport. Do not add anything extra here. # For example, if you want to have wekan on port 3001, # use 3001:8080 . Do not add any extra address etc here, that way it does not work. # remove port mapping if you use nginx reverse proxy, port 8080 is already exposed to wekan-tier network - - 80:8080 + - 3000:8080 environment: - - MONGO_URL=mongodb://wekandb:27017/wekan + - MONGO_URL=mongodb://wekandb:27017/wekan?replicaSet=kadira #--------------------------------------------------------------- # ==== ROOT_URL SETTING ==== # Change ROOT_URL to your real Wekan URL, for example: @@ -161,7 +161,7 @@ services: # - http://example.com # - http://boards.example.com # - http://192.168.1.100 <=== using at local LAN - - ROOT_URL=http://localhost # <=== using only at same laptop/desktop where Wekan is installed + - ROOT_URL=http://frigg:3000 # <=== using only at same laptop/desktop where Wekan is installed #--------------------------------------------------------------- # ==== EMAIL SETTINGS ==== # Email settings are required in both MAIL_URL and Admin Panel, @@ -169,8 +169,8 @@ services: # For SSL in email, change smtp:// to smtps:// # NOTE: Special characters need to be url-encoded in MAIL_URL. # You can encode those characters for example at: https://www.urlencoder.org - - MAIL_URL=smtp://user:pass@mailserver.example.com:25/ - - MAIL_FROM='Example Wekan Support ' + #- MAIL_URL=smtp://user:pass@mailserver.example.com:25/ + #- MAIL_FROM='Example Wekan Support ' #--------------------------------------------------------------- # ==== OPTIONAL: MONGO OPLOG SETTINGS ===== # https://github.com/wekan/wekan-mongodb/issues/2#issuecomment-378343587 @@ -193,7 +193,9 @@ services: # ==== OPTIONAL: KADIRA PERFORMANCE MONITORING FOR METEOR ==== # https://github.com/smeijer/kadira # https://blog.meteor.com/kadira-apm-is-now-open-source-490469ffc85f - # - export KADIRA_OPTIONS_ENDPOINT=http://127.0.0.1:11011 + - KADIRA_OPTIONS_ENDPOINT=http://kadira-engine:11011 + - KADIRA_APP_ID=iYpPgq6rXRrZJty4A + - KADIRA_APP_SECRET=9de2728b-320d-46c1-9352-0084435411f0 #--------------------------------------------------------------- # ==== OPTIONAL: LOGS AND STATS ==== # https://github.com/wekan/wekan/wiki/Logs @@ -510,6 +512,41 @@ services: # - ./nginx/nginx.conf:/etc/nginx/nginx.conf + kadira-engine: + ## This is the endpoint where Meteor app sends performance data + image: vladgolubev/kadira-engine + ports: + - "11011:11011" + environment: + - PORT=11011 + - MONGO_URL=mongodb://wekandb:27017/kadira?replicaSet=kadira + - MONGO_SHARD_URL_one=mongodb://wekandb:27017/kadira?replicaSet=kadira + networks: + - wekan-tier + restart: always + + kadira-rma: + ## This computes statistics databases every minute. + image: vladgolubev/kadira-rma + environment: + - MONGO_URL=mongodb://wekandb:27017/kadira + networks: + - wekan-tier + restart: always + + kadira-ui: + ## Meteor app that presents the Kadira user interface. + image: vladgolubev/kadira-ui + ports: + #- "80:4000" + - "4000:4000" + environment: + - MONGO_URL=mongodb://wekandb:27017/kadira + - MONGO_SHARD_URL_one=mongodb://wekandb:27017/kadira + networks: + - wekan-tier + restart: always + volumes: wekan-db: driver: local diff --git a/server/kadira.js b/server/kadira.js new file mode 100644 index 000000000..8b43102d3 --- /dev/null +++ b/server/kadira.js @@ -0,0 +1,5 @@ +Meteor.startup(() => { + const appId = process.env.KADIRA_APP_ID; + const appSecret = process.env.KADIRA_APP_SECRET; + Kadira.connect(appId, appSecret); +}); From 8996df5c0909e2090e749f45ee88e7d5bc977e7e Mon Sep 17 00:00:00 2001 From: Gavin Lilly Date: Sat, 9 Feb 2019 23:37:01 +0000 Subject: [PATCH 02/16] Added Kadira using meteor add method --- .meteor/versions | 1 + 1 file changed, 1 insertion(+) diff --git a/.meteor/versions b/.meteor/versions index b8b8e4fd7..320ba7a6f 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -90,6 +90,7 @@ meteor-base@1.2.0 meteor-platform@1.2.6 meteorhacks:aggregate@1.3.0 meteorhacks:collection-utils@1.2.0 +meteorhacks:kadira@2.30.4 meteorhacks:meteorx@1.4.1 meteorhacks:picker@1.0.3 meteorhacks:subs-manager@1.6.4 From 905c45f225809769268e1aaa64d30c1d44254f15 Mon Sep 17 00:00:00 2001 From: Gavin Lilly Date: Mon, 11 Feb 2019 16:43:52 +0000 Subject: [PATCH 03/16] Replaced Kadira by meteor-apm-agent --- .meteor/packages | 2 +- docker-compose.yml | 10 +++++----- server/kadira.js | 5 ----- 3 files changed, 6 insertions(+), 11 deletions(-) delete mode 100644 server/kadira.js diff --git a/.meteor/packages b/.meteor/packages index 228427e4a..274a8d0db 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -90,4 +90,4 @@ wekan:wekan-ldap wekan:accounts-cas wekan-scrollbar mquandalle:perfect-scrollbar -meteorhacks:kadira +mdg:meteor-apm-agent diff --git a/docker-compose.yml b/docker-compose.yml index 951c705e8..ddd293a44 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -123,7 +123,7 @@ services: # image: wekanteam/wekan:v1.95 #------------------------------------------------------------------------------------- container_name: wekan-app - restart: always + restart: "no" networks: - wekan-tier #------------------------------------------------------------------------------------- @@ -148,7 +148,7 @@ services: # remove port mapping if you use nginx reverse proxy, port 8080 is already exposed to wekan-tier network - 3000:8080 environment: - - MONGO_URL=mongodb://wekandb:27017/wekan?replicaSet=kadira + - MONGO_URL=mongodb://wekandb:27017/wekan #--------------------------------------------------------------- # ==== ROOT_URL SETTING ==== # Change ROOT_URL to your real Wekan URL, for example: @@ -193,9 +193,9 @@ services: # ==== OPTIONAL: KADIRA PERFORMANCE MONITORING FOR METEOR ==== # https://github.com/smeijer/kadira # https://blog.meteor.com/kadira-apm-is-now-open-source-490469ffc85f - - KADIRA_OPTIONS_ENDPOINT=http://kadira-engine:11011 - - KADIRA_APP_ID=iYpPgq6rXRrZJty4A - - KADIRA_APP_SECRET=9de2728b-320d-46c1-9352-0084435411f0 + - APM_OPTIONS_ENDPOINT=http://kadira-engine:11011 + - APM_APP_ID=iYpPgq6rXRrZJty4A + - APM_APP_SECRET=9de2728b-320d-46c1-9352-0084435411f0 #--------------------------------------------------------------- # ==== OPTIONAL: LOGS AND STATS ==== # https://github.com/wekan/wekan/wiki/Logs diff --git a/server/kadira.js b/server/kadira.js deleted file mode 100644 index 8b43102d3..000000000 --- a/server/kadira.js +++ /dev/null @@ -1,5 +0,0 @@ -Meteor.startup(() => { - const appId = process.env.KADIRA_APP_ID; - const appSecret = process.env.KADIRA_APP_SECRET; - Kadira.connect(appId, appSecret); -}); From d3abb0756ebe198f495d0fc6d4e1a737b8dc8f32 Mon Sep 17 00:00:00 2001 From: Gavin Lilly Date: Mon, 11 Feb 2019 20:12:53 +0000 Subject: [PATCH 04/16] Pulled Wekan-LDAP locally for debug --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index ff6243d5e..aed3ecdfb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -247,7 +247,7 @@ RUN \ gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/flow-router.git kadira-flow-router && \ gosu wekan:wekan git clone --depth 1 -b master git://github.com/meteor-useraccounts/core.git meteor-useraccounts-core && \ gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/meteor-accounts-cas.git && \ - gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/wekan-ldap.git && \ + #gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/wekan-ldap.git && \ gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/wekan-scrollbar.git && \ sed -i 's/api\.versionsFrom/\/\/api.versionsFrom/' /home/wekan/app/packages/meteor-useraccounts-core/package.js && \ cd /home/wekan/.meteor && \ From 5c083d99e2bd0041cc07a5ef86a0279900a3ce83 Mon Sep 17 00:00:00 2001 From: Gavin Lilly Date: Mon, 11 Feb 2019 23:16:37 +0000 Subject: [PATCH 05/16] Moved to meteor-apm-agent and removed Wekan LDAP to test if working --- .meteor/packages | 1 - .meteor/versions | 4 +--- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/.meteor/packages b/.meteor/packages index 274a8d0db..2553cf943 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -86,7 +86,6 @@ momentjs:moment@2.22.2 browser-policy-framing mquandalle:moment msavin:usercache -wekan:wekan-ldap wekan:accounts-cas wekan-scrollbar mquandalle:perfect-scrollbar diff --git a/.meteor/versions b/.meteor/versions index 5477519e7..2df52582d 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -84,13 +84,13 @@ localstorage@1.2.0 logging@1.1.19 matb33:collection-hooks@0.8.4 matteodem:easy-search@1.6.4 +mdg:meteor-apm-agent@3.1.2 mdg:validation-error@0.5.1 meteor@1.8.2 meteor-base@1.2.0 meteor-platform@1.2.6 meteorhacks:aggregate@1.3.0 meteorhacks:collection-utils@1.2.0 -meteorhacks:kadira@2.30.4 meteorhacks:meteorx@1.4.1 meteorhacks:picker@1.0.3 meteorhacks:subs-manager@1.6.4 @@ -182,6 +182,4 @@ webapp@1.4.0 webapp-hashing@1.0.9 wekan-scrollbar@3.1.3 wekan:accounts-cas@0.1.0 -wekan:wekan-ldap@0.0.2 -yasaricli:slugify@0.0.7 zimme:active-route@2.3.2 From 1417f091fe6d47869f651413c9bb758e447341be Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Tue, 12 Feb 2019 23:38:24 +0200 Subject: [PATCH 06/16] Update translations. --- i18n/pt-BR.i18n.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i18n/pt-BR.i18n.json b/i18n/pt-BR.i18n.json index 49c2eea3e..2fb9c4203 100644 --- a/i18n/pt-BR.i18n.json +++ b/i18n/pt-BR.i18n.json @@ -654,7 +654,7 @@ "authentication-method": "Método de autenticação", "authentication-type": "Tipo de autenticação", "custom-product-name": "Nome Customizado do Produto", - "layout": "Leiaute", + "layout": "Layout", "hide-logo": "Esconder Logo", "add-custom-html-after-body-start": "Adicionar HTML Customizado depois do início do ", "add-custom-html-before-body-end": "Adicionar HTML Customizado antes do fim do ", From c7721b048df63bba295acf9291dee5d9a32e779c Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Tue, 12 Feb 2019 23:46:25 +0200 Subject: [PATCH 07/16] - Fix indenting textline. --- start-wekan.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/start-wekan.sh b/start-wekan.sh index dd639aae2..1de75aa4c 100755 --- a/start-wekan.sh +++ b/start-wekan.sh @@ -72,7 +72,7 @@ function wekan_repo_check(){ # Example: export WEBHOOKS_ATTRIBUTES=cardId,listId,oldListId,boardId,comment,user,card,commentId export WEBHOOKS_ATTRIBUTES='' #--------------------------------------------- - # ==== OAUTH2 AZURE ==== + # ==== OAUTH2 AZURE ==== # https://github.com/wekan/wekan/wiki/Azure # 1) Register the application with Azure. Make sure you capture # the application ID as well as generate a secret key. From 677bfc3f6b2efa7a0a37e9d7e92559881d5d68d3 Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Wed, 13 Feb 2019 00:01:38 +0200 Subject: [PATCH 08/16] - Fix: Remove overlap of side bar button with card/list menu button on mobile browser Thanks to xet7 ! Closes #2183 --- client/components/sidebar/sidebar.styl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/components/sidebar/sidebar.styl b/client/components/sidebar/sidebar.styl index 740186b59..1b034bce9 100644 --- a/client/components/sidebar/sidebar.styl +++ b/client/components/sidebar/sidebar.styl @@ -201,7 +201,7 @@ width: 40px height: @width left: -@width - 7px - top: 5px + top: 70px display: block border-radius: 50% border: 1px solid darken(white, 30%) From 2ca98e477d0b282e7fbc7fc95130bea3e1e5444e Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Wed, 13 Feb 2019 01:04:30 +0200 Subject: [PATCH 09/16] - Fix2: Remove overlap of side bar button with card/list menu button on mobile browser Thanks to xet7 ! Closes #2183 --- client/components/lists/list.styl | 4 ++++ client/components/sidebar/sidebar.styl | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/client/components/lists/list.styl b/client/components/lists/list.styl index 705020836..7e4550a4c 100644 --- a/client/components/lists/list.styl +++ b/client/components/lists/list.styl @@ -84,6 +84,7 @@ padding-left: 10px color: #a6a6a6 + .list-header-menu position: absolute padding: 27px 19px @@ -155,6 +156,9 @@ float: left @media screen and (max-width: 800px) + .list-header-menu + margin-right: 30px + .mini-list flex: 0 0 60px height: 60px diff --git a/client/components/sidebar/sidebar.styl b/client/components/sidebar/sidebar.styl index 1b034bce9..740186b59 100644 --- a/client/components/sidebar/sidebar.styl +++ b/client/components/sidebar/sidebar.styl @@ -201,7 +201,7 @@ width: 40px height: @width left: -@width - 7px - top: 70px + top: 5px display: block border-radius: 50% border: 1px solid darken(white, 30%) From 227772bc332228a779c8e85dd690474d6ea92bfa Mon Sep 17 00:00:00 2001 From: Gavin Lilly Date: Tue, 12 Feb 2019 23:50:22 +0000 Subject: [PATCH 10/16] Added back wekan-ldap after it's fixed in a separate change --- .meteor/packages | 1 + .meteor/versions | 2 ++ 2 files changed, 3 insertions(+) diff --git a/.meteor/packages b/.meteor/packages index 2553cf943..274a8d0db 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -86,6 +86,7 @@ momentjs:moment@2.22.2 browser-policy-framing mquandalle:moment msavin:usercache +wekan:wekan-ldap wekan:accounts-cas wekan-scrollbar mquandalle:perfect-scrollbar diff --git a/.meteor/versions b/.meteor/versions index 2df52582d..6734f378b 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -182,4 +182,6 @@ webapp@1.4.0 webapp-hashing@1.0.9 wekan-scrollbar@3.1.3 wekan:accounts-cas@0.1.0 +wekan:wekan-ldap@0.0.2 +yasaricli:slugify@0.0.7 zimme:active-route@2.3.2 From 595a2d2baa0bb99154d19a5dc324029481f864b0 Mon Sep 17 00:00:00 2001 From: Gavin Lilly Date: Wed, 13 Feb 2019 00:00:34 +0000 Subject: [PATCH 11/16] Cleaning up docker-compose for merge --- docker-compose.yml | 78 +++++++++++++--------------------------------- 1 file changed, 22 insertions(+), 56 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 5d39cb07c..03b578b76 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -98,7 +98,7 @@ services: #------------------------------------------------------------------------------------- container_name: wekan-db restart: always - command: mongod --smallfiles --replSet kadira --oplogSize 128 + command: mongod --smallfiles --oplogSize 128 networks: - wekan-tier expose: @@ -123,30 +123,30 @@ services: # image: wekanteam/wekan:v1.95 #------------------------------------------------------------------------------------- container_name: wekan-app - restart: "no" + restart: always networks: - wekan-tier #------------------------------------------------------------------------------------- # ==== BUILD wekan-app DOCKER CONTAINER FROM SOURCE, if you uncomment these ==== # ==== and use commands: docker-compose up -d --build - build: - context: . - dockerfile: Dockerfile - args: - - NODE_VERSION=${NODE_VERSION} - - METEOR_RELEASE=${METEOR_RELEASE} - - NPM_VERSION=${NPM_VERSION} - - ARCHITECTURE=${ARCHITECTURE} - - SRC_PATH=${SRC_PATH} - - METEOR_EDGE=${METEOR_EDGE} - - USE_EDGE=${USE_EDGE} + #build: + # context: . + # dockerfile: Dockerfile + # args: + # - NODE_VERSION=${NODE_VERSION} + # - METEOR_RELEASE=${METEOR_RELEASE} + # - NPM_VERSION=${NPM_VERSION} + # - ARCHITECTURE=${ARCHITECTURE} + # - SRC_PATH=${SRC_PATH} + # - METEOR_EDGE=${METEOR_EDGE} + # - USE_EDGE=${USE_EDGE} #------------------------------------------------------------------------------------- ports: # Docker outsideport:insideport. Do not add anything extra here. # For example, if you want to have wekan on port 3001, # use 3001:8080 . Do not add any extra address etc here, that way it does not work. # remove port mapping if you use nginx reverse proxy, port 8080 is already exposed to wekan-tier network - - 3000:8080 + - 80:8080 environment: - MONGO_URL=mongodb://wekandb:27017/wekan #--------------------------------------------------------------- @@ -161,7 +161,7 @@ services: # - http://example.com # - http://boards.example.com # - http://192.168.1.100 <=== using at local LAN - - ROOT_URL=http://frigg:3000 # <=== using only at same laptop/desktop where Wekan is installed + - ROOT_URL=http://localhost # <=== using only at same laptop/desktop where Wekan is installed #--------------------------------------------------------------- # ==== EMAIL SETTINGS ==== # Email settings are required in both MAIL_URL and Admin Panel, @@ -169,8 +169,8 @@ services: # For SSL in email, change smtp:// to smtps:// # NOTE: Special characters need to be url-encoded in MAIL_URL. # You can encode those characters for example at: https://www.urlencoder.org - #- MAIL_URL=smtp://user:pass@mailserver.example.com:25/ - #- MAIL_FROM='Example Wekan Support ' + - MAIL_URL=smtp://user:pass@mailserver.example.com:25/ + - MAIL_FROM='Example Wekan Support ' #--------------------------------------------------------------- # ==== OPTIONAL: MONGO OPLOG SETTINGS ===== # https://github.com/wekan/wekan-mongodb/issues/2#issuecomment-378343587 @@ -191,11 +191,12 @@ services: # - MONGO_OPLOG_URL=mongodb://:@/local?authSource=admin&replicaSet=rsWekan #--------------------------------------------------------------- # ==== OPTIONAL: KADIRA PERFORMANCE MONITORING FOR METEOR ==== - # https://github.com/smeijer/kadira + # https://github.com/edemaine/kadira-compose + # https://github.com/meteor/meteor-apm-agent # https://blog.meteor.com/kadira-apm-is-now-open-source-490469ffc85f - - APM_OPTIONS_ENDPOINT=http://kadira-engine:11011 - - APM_APP_ID=iYpPgq6rXRrZJty4A - - APM_APP_SECRET=9de2728b-320d-46c1-9352-0084435411f0 + #- APM_OPTIONS_ENDPOINT=http://:11011 + #- APM_APP_ID= + #- APM_APP_SECRET= #--------------------------------------------------------------- # ==== OPTIONAL: LOGS AND STATS ==== # https://github.com/wekan/wekan/wiki/Logs @@ -515,41 +516,6 @@ services: # - ./nginx/nginx.conf:/etc/nginx/nginx.conf - kadira-engine: - ## This is the endpoint where Meteor app sends performance data - image: vladgolubev/kadira-engine - ports: - - "11011:11011" - environment: - - PORT=11011 - - MONGO_URL=mongodb://wekandb:27017/kadira?replicaSet=kadira - - MONGO_SHARD_URL_one=mongodb://wekandb:27017/kadira?replicaSet=kadira - networks: - - wekan-tier - restart: always - - kadira-rma: - ## This computes statistics databases every minute. - image: vladgolubev/kadira-rma - environment: - - MONGO_URL=mongodb://wekandb:27017/kadira - networks: - - wekan-tier - restart: always - - kadira-ui: - ## Meteor app that presents the Kadira user interface. - image: vladgolubev/kadira-ui - ports: - #- "80:4000" - - "4000:4000" - environment: - - MONGO_URL=mongodb://wekandb:27017/kadira - - MONGO_SHARD_URL_one=mongodb://wekandb:27017/kadira - networks: - - wekan-tier - restart: always - volumes: wekan-db: driver: local From 8e95871534d654e006982938fabd98a7357392e3 Mon Sep 17 00:00:00 2001 From: Gavin Lilly Date: Wed, 13 Feb 2019 00:01:47 +0000 Subject: [PATCH 12/16] Adding wekan-ldap back in to build in the Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index aed3ecdfb..ff6243d5e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -247,7 +247,7 @@ RUN \ gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/flow-router.git kadira-flow-router && \ gosu wekan:wekan git clone --depth 1 -b master git://github.com/meteor-useraccounts/core.git meteor-useraccounts-core && \ gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/meteor-accounts-cas.git && \ - #gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/wekan-ldap.git && \ + gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/wekan-ldap.git && \ gosu wekan:wekan git clone --depth 1 -b master git://github.com/wekan/wekan-scrollbar.git && \ sed -i 's/api\.versionsFrom/\/\/api.versionsFrom/' /home/wekan/app/packages/meteor-useraccounts-core/package.js && \ cd /home/wekan/.meteor && \ From 202b8a92af25946539d2009f3a54fbac4bcf2c7e Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Wed, 13 Feb 2019 02:24:21 +0200 Subject: [PATCH 13/16] - Add Kadira integration. Thanks to GavinLilly. Closes #2152 --- CHANGELOG.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ed2af4de1..031c8bff0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +# Upcoming Wekan release + +This release adds the following new features: + +- [Kadira integration](https://github.com/wekan/wekan/issues/2152). Thanks to GavinLilly. + +and fixes the following bugs: + +- [Fix: Remove overlap of side bar button with card/list menu button on + mobile browser](https://github.com/wekan/wekan/issues/2183). Thanks to xet7. + +Thanks to above GitHub users for their contributions, and translators for their translations. + # v2.21 2019-02-12 Wekan release This release adds the following new features: From b66f471e530d41a3f12e4bfc29548313e9a73c35 Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Wed, 13 Feb 2019 03:01:10 +0200 Subject: [PATCH 14/16] - Add configurable settings OAUTH2_ID_TOKEN_WHITELIST_FIELDS and OAUTH2_REQUEST_PERMISSIONS. Thanks to xet7. Related #1874 --- Dockerfile | 4 ++++ docker-compose.yml | 4 ++++ releases/virtualbox/start-wekan.sh | 4 ++++ server/authentication.js | 4 ++-- snap-src/bin/config | 10 +++++++++- snap-src/bin/wekan-help | 28 ++++++++++++++++++++-------- start-wekan.bat | 5 +++++ start-wekan.sh | 6 +++++- 8 files changed, 53 insertions(+), 12 deletions(-) diff --git a/Dockerfile b/Dockerfile index 283cc8532..7957c72c6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -30,6 +30,8 @@ ARG OAUTH2_ID_MAP ARG OAUTH2_USERNAME_MAP ARG OAUTH2_FULLNAME_MAP ARG OAUTH2_EMAIL_MAP +ARG OAUTH2_ID_TOKEN_WHITELIST_FIELDS +ARG OAUTH2_REQUEST_PERMISSIONS ARG LDAP_ENABLE ARG LDAP_PORT ARG LDAP_HOST @@ -109,6 +111,8 @@ ENV BUILD_DEPS="apt-utils bsdtar gnupg gosu wget curl bzip2 build-essential pyth OAUTH2_USERNAME_MAP="" \ OAUTH2_FULLNAME_MAP="" \ OAUTH2_EMAIL_MAP="" \ + OAUTH2_ID_TOKEN_WHITELIST_FIELDS=[] \ + OAUTH2_REQUEST_PERMISSIONS=[openid] \ LDAP_ENABLE=false \ LDAP_PORT=389 \ LDAP_HOST="" \ diff --git a/docker-compose.yml b/docker-compose.yml index 7a1f7b877..a9f115690 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -311,6 +311,10 @@ services: #- OAUTH2_FULLNAME_MAP= # OAuth2 Email Mapping #- OAUTH2_EMAIL_MAP= + # OAUTH2 ID Token Whitelist Fields. + #- OAUTH2_ID_TOKEN_WHITELIST_FIELDS=[] + # OAUTH2 Request Permissions. + #- OAUTH2_REQUEST_PERMISSIONS=[openid email profile] #----------------------------------------------------------------- # ==== LDAP ==== # https://github.com/wekan/wekan/wiki/LDAP diff --git a/releases/virtualbox/start-wekan.sh b/releases/virtualbox/start-wekan.sh index 31d4df589..d8ac716ec 100755 --- a/releases/virtualbox/start-wekan.sh +++ b/releases/virtualbox/start-wekan.sh @@ -114,6 +114,10 @@ #export OAUTH2_FULLNAME_MAP= # OAuth2 Email Mapping #export OAUTH2_EMAIL_MAP= + # OAUTH2 ID Token Whitelist Fields. + #export OAUTH2_ID_TOKEN_WHITELIST_FIELDS=[] + # OAUTH2 Request Permissions. + #export OAUTH2_REQUEST_PERMISSIONS=[openid profile email] #--------------------------------------------- # LDAP_ENABLE : Enable or not the connection by the LDAP # example : export LDAP_ENABLE=true diff --git a/server/authentication.js b/server/authentication.js index 4d3cc53e7..76ab6cf13 100644 --- a/server/authentication.js +++ b/server/authentication.js @@ -76,8 +76,8 @@ Meteor.startup(() => { authorizationEndpoint: process.env.OAUTH2_AUTH_ENDPOINT, userinfoEndpoint: process.env.OAUTH2_USERINFO_ENDPOINT, tokenEndpoint: process.env.OAUTH2_TOKEN_ENDPOINT, - idTokenWhitelistFields: [], - requestPermissions: ['openid'], + idTokenWhitelistFields: process.env.OAUTH2_ID_TOKEN_WHITELIST_FIELDS || [], + requestPermissions: process.OAUTH2_REQUEST_PERMISSIONS || ['openid'], }, } ); diff --git a/snap-src/bin/config b/snap-src/bin/config index 31605b2f6..e674afa06 100755 --- a/snap-src/bin/config +++ b/snap-src/bin/config @@ -3,7 +3,7 @@ # All supported keys are defined here together with descriptions and default values # list of supported keys -keys="DEBUG MONGODB_BIND_UNIX_SOCKET MONGODB_BIND_IP MONGODB_PORT MAIL_URL MAIL_FROM ROOT_URL PORT DISABLE_MONGODB CADDY_ENABLED CADDY_BIND_PORT WITH_API CORS MATOMO_ADDRESS MATOMO_SITE_ID MATOMO_DO_NOT_TRACK MATOMO_WITH_USERNAME BROWSER_POLICY_ENABLED TRUSTED_URL WEBHOOKS_ATTRIBUTES OAUTH2_ENABLED OAUTH2_CLIENT_ID OAUTH2_SECRET OAUTH2_SERVER_URL OAUTH2_AUTH_ENDPOINT OAUTH2_USERINFO_ENDPOINT OAUTH2_TOKEN_ENDPOINT OAUTH2_ID_MAP OAUTH2_USERNAME_MAP OAUTH2_FULLNAME_MAP OAUTH2_EMAIL_MAP LDAP_ENABLE LDAP_PORT LDAP_HOST LDAP_BASEDN LDAP_LOGIN_FALLBACK LDAP_RECONNECT LDAP_TIMEOUT LDAP_IDLE_TIMEOUT LDAP_CONNECT_TIMEOUT LDAP_AUTHENTIFICATION LDAP_AUTHENTIFICATION_USERDN LDAP_AUTHENTIFICATION_PASSWORD LDAP_LOG_ENABLED LDAP_BACKGROUND_SYNC LDAP_BACKGROUND_SYNC_INTERVAL LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS LDAP_ENCRYPTION LDAP_CA_CERT LDAP_REJECT_UNAUTHORIZED LDAP_USER_SEARCH_FILTER LDAP_USER_SEARCH_SCOPE LDAP_USER_SEARCH_FIELD LDAP_SEARCH_PAGE_SIZE LDAP_SEARCH_SIZE_LIMIT LDAP_GROUP_FILTER_ENABLE LDAP_GROUP_FILTER_OBJECTCLASS LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT LDAP_GROUP_FILTER_GROUP_NAME LDAP_UNIQUE_IDENTIFIER_FIELD LDAP_UTF8_NAMES_SLUGIFY LDAP_USERNAME_FIELD LDAP_FULLNAME_FIELD LDAP_MERGE_EXISTING_USERS LDAP_SYNC_USER_DATA LDAP_SYNC_USER_DATA_FIELDMAP LDAP_SYNC_GROUP_ROLES LDAP_DEFAULT_DOMAIN LOGOUT_WITH_TIMER LOGOUT_IN LOGOUT_ON_HOURS LOGOUT_ON_MINUTES DEFAULT_AUTHENTICATION_METHOD" +keys="DEBUG MONGODB_BIND_UNIX_SOCKET MONGODB_BIND_IP MONGODB_PORT MAIL_URL MAIL_FROM ROOT_URL PORT DISABLE_MONGODB CADDY_ENABLED CADDY_BIND_PORT WITH_API CORS MATOMO_ADDRESS MATOMO_SITE_ID MATOMO_DO_NOT_TRACK MATOMO_WITH_USERNAME BROWSER_POLICY_ENABLED TRUSTED_URL WEBHOOKS_ATTRIBUTES OAUTH2_ENABLED OAUTH2_CLIENT_ID OAUTH2_SECRET OAUTH2_SERVER_URL OAUTH2_AUTH_ENDPOINT OAUTH2_USERINFO_ENDPOINT OAUTH2_TOKEN_ENDPOINT OAUTH2_ID_MAP OAUTH2_USERNAME_MAP OAUTH2_FULLNAME_MAP OAUTH2_EMAIL_MAP OAUTH2_ID_TOKEN_WHITELIST_FIELDS OAUTH2_REQUEST_PERMISSIONS LDAP_ENABLE LDAP_PORT LDAP_HOST LDAP_BASEDN LDAP_LOGIN_FALLBACK LDAP_RECONNECT LDAP_TIMEOUT LDAP_IDLE_TIMEOUT LDAP_CONNECT_TIMEOUT LDAP_AUTHENTIFICATION LDAP_AUTHENTIFICATION_USERDN LDAP_AUTHENTIFICATION_PASSWORD LDAP_LOG_ENABLED LDAP_BACKGROUND_SYNC LDAP_BACKGROUND_SYNC_INTERVAL LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS LDAP_ENCRYPTION LDAP_CA_CERT LDAP_REJECT_UNAUTHORIZED LDAP_USER_SEARCH_FILTER LDAP_USER_SEARCH_SCOPE LDAP_USER_SEARCH_FIELD LDAP_SEARCH_PAGE_SIZE LDAP_SEARCH_SIZE_LIMIT LDAP_GROUP_FILTER_ENABLE LDAP_GROUP_FILTER_OBJECTCLASS LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT LDAP_GROUP_FILTER_GROUP_NAME LDAP_UNIQUE_IDENTIFIER_FIELD LDAP_UTF8_NAMES_SLUGIFY LDAP_USERNAME_FIELD LDAP_FULLNAME_FIELD LDAP_MERGE_EXISTING_USERS LDAP_SYNC_USER_DATA LDAP_SYNC_USER_DATA_FIELDMAP LDAP_SYNC_GROUP_ROLES LDAP_DEFAULT_DOMAIN LOGOUT_WITH_TIMER LOGOUT_IN LOGOUT_ON_HOURS LOGOUT_ON_MINUTES DEFAULT_AUTHENTICATION_METHOD" # default values DESCRIPTION_DEBUG="Debug OIDC OAuth2 etc. Example: sudo snap set wekan debug='true'" @@ -138,6 +138,14 @@ DESCRIPTION_OAUTH2_EMAIL_MAP="OAuth2 Email Mapping. Example: email" DEFAULT_OAUTH2_EMAIL_MAP="" KEY_OAUTH2_EMAIL_MAP="oauth2-email-map" +DESCRIPTION_OAUTH2_ID_TOKEN_WHITELIST_FIELDS="OAuth2 ID Token Whitelist Fields. Example: []" +DEFAULT_OAUTH2_ID_TOKEN_WHITELIST_FIELDS="" +KEY_OAUTH2_ID_TOKEN_WHITELIST_FIELDS="oauth2-id-token-whitelist-fields" + +DESCRIPTION_OAUTH2_REQUEST_PERMISSIONS="OAuth2 Request Permissions. Example: [openid profile email]" +DEFAULT_OAUTH2_REQUEST_PERMISSIONS="" +KEY_OAUTH2_REQUEST_PERMISSIONS="oauth2-request-permissions" + DESCRIPTION_LDAP_ENABLE="Enable or not the connection by the LDAP" DEFAULT_LDAP_ENABLE="false" KEY_LDAP_ENABLE="ldap-enable" diff --git a/snap-src/bin/wekan-help b/snap-src/bin/wekan-help index 431be0290..80cbc7ad6 100755 --- a/snap-src/bin/wekan-help +++ b/snap-src/bin/wekan-help @@ -102,29 +102,41 @@ echo -e "\t-Disable the OAuth2 Token Endpoint of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-token-endpoint=''" echo -e "\n" echo -e "OAuth2 ID Mapping." -echo -e "To enable the ID Mapping of Wekan:" +echo -e "To enable the OAuth2 ID Mapping of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-id-map='username.uid'" -echo -e "\t-Disable the ID Mapping of Wekan:" +echo -e "\t-Disable the OAuth2 ID Mapping of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-id-map=''" echo -e "\n" echo -e "OAuth2 Username Mapping." -echo -e "To enable the Username Mapping of Wekan:" +echo -e "To enable the OAuth2 Username Mapping of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-username-map='username'" -echo -e "\t-Disable the Username Mapping of Wekan:" +echo -e "\t-Disable the OAuth2 Username Mapping of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-username-map=''" echo -e "\n" echo -e "OAuth2 Fullname Mapping." -echo -e "To enable the Fullname Mapping of Wekan:" +echo -e "To enable the OAuth2 Fullname Mapping of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-fullname-map='fullname'" -echo -e "\t-Disable the Fullname Mapping of Wekan:" +echo -e "\t-Disable the OAuth2 Fullname Mapping of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-fullname-map=''" echo -e "\n" echo -e "OAuth2 Email Mapping." -echo -e "To enable the Email Mapping of Wekan:" +echo -e "To enable the OAuth2 Email Mapping of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-email-map='email'" -echo -e "\t-Disable the Email Mapping of Wekan:" +echo -e "\t-Disable the OAuth2 Email Mapping of Wekan:" echo -e "\t$ snap set $SNAP_NAME oauth2-email-map=''" echo -e "\n" +echo -e "OAuth2 ID Token Whitelist Fields." +echo -e "To enable the OAuth2 ID Token Whitelist Fields of Wekan:" +echo -e "\t$ snap set $SNAP_NAME oauth2-id-token-whitelist-fields='[]'" +echo -e "\t-Disable the OAuth2 ID Token Whitelist Fields of Wekan:" +echo -e "\t$ snap set $SNAP_NAME oauth2-id-token-whitelist-fields=''" +echo -e "\n" +echo -e "OAuth2 Request Permissions." +echo -e "To enable the OAuth2 Request Permissions of Wekan:" +echo -e "\t$ snap set $SNAP_NAME oauth2-request-permissions='[openid profile email]'" +echo -e "\t-Disable the OAuth2 Request Permissions of Wekan:" +echo -e "\t$ snap set $SNAP_NAME oauth2-request-permissions=''" +echo -e "\n" echo -e "Ldap Enable." echo -e "To enable the ldap of Wekan:" echo -e "\t$ snap set $SNAP_NAME ldap-enable='true'" diff --git a/start-wekan.bat b/start-wekan.bat index 02e9258e1..9d6305b67 100644 --- a/start-wekan.bat +++ b/start-wekan.bat @@ -74,6 +74,11 @@ REM # OAuth2 Token Endpoint. Example: /oauth/token REM # example: OAUTH2_TOKEN_ENDPOINT=/oauth/token REM SET OAUTH2_TOKEN_ENDPOINT= +REM # OAUTH2 ID Token Whitelist Fields. +REM SET OAUTH2_ID_TOKEN_WHITELIST_FIELDS=[] +REM # OAUTH2 Request Permissions. +REM SET OAUTH2_REQUEST_PERMISSIONS=[openid email profile] + REM ------------------------------------------------------------ REM # LDAP_ENABLE : Enable or not the connection by the LDAP diff --git a/start-wekan.sh b/start-wekan.sh index 1de75aa4c..bbfbff2b8 100755 --- a/start-wekan.sh +++ b/start-wekan.sh @@ -93,8 +93,12 @@ function wekan_repo_check(){ #export OAUTH2_USERNAME_MAP=email # The claim name you want to map to the full name field: #export OAUTH2_FULLNAME_MAP=name - # Tthe claim name you want to map to the email field: + # The claim name you want to map to the email field: #export OAUTH2_EMAIL_MAP=email + # OAUTH2 ID Token Whitelist Fields. + #export OAUTH2_ID_TOKEN_WHITELIST_FIELDS=[] + # OAUTH2 Request Permissions. + #export OAUTH2_REQUEST_PERMISSIONS=[openid profile email] #----------------------------------------------------------------- # ==== OAUTH2 KEYCLOAK ==== # https://github.com/wekan/wekan/wiki/Keycloak <== MAPPING INFO, REQUIRED From 81744e65234e9f1400c47a7e3871da587600af34 Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Wed, 13 Feb 2019 03:07:31 +0200 Subject: [PATCH 15/16] - Add [configurable](https://github.com/wekan/wekan/issues/1874#issuecomment-462759627) settings [OAUTH2_ID_TOKEN_WHITELIST_FIELDS and OAUTH2_REQUEST_PERMISSIONS](https://github.com/wekan/wekan/commit/b66f471e530d41a3f12e4bfc29548313e9a73c35). Thanks to xet7. --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 031c8bff0..a2bc3e5a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,10 @@ This release adds the following new features: - [Kadira integration](https://github.com/wekan/wekan/issues/2152). Thanks to GavinLilly. +- Add [configurable](https://github.com/wekan/wekan/issues/1874#issuecomment-462759627) + settings [OAUTH2_ID_TOKEN_WHITELIST_FIELDS and + OAUTH2_REQUEST_PERMISSIONS](https://github.com/wekan/wekan/commit/b66f471e530d41a3f12e4bfc29548313e9a73c35). + Thanks to xet7. and fixes the following bugs: From dc7bbd848c9a194dac4d5511618265dec1012897 Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Wed, 13 Feb 2019 03:14:18 +0200 Subject: [PATCH 16/16] v2.22 --- CHANGELOG.md | 2 +- Stackerfile.yml | 2 +- package.json | 2 +- sandstorm-pkgdef.capnp | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a2bc3e5a5..d77f13ee2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -# Upcoming Wekan release +# v2.22 2019-02-13 Wekan release This release adds the following new features: diff --git a/Stackerfile.yml b/Stackerfile.yml index 536a26900..7a6c5396f 100644 --- a/Stackerfile.yml +++ b/Stackerfile.yml @@ -1,5 +1,5 @@ appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928 -appVersion: "v2.21.0" +appVersion: "v2.22.0" files: userUploads: - README.md diff --git a/package.json b/package.json index 182feb883..02e5ae016 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wekan", - "version": "v2.21.0", + "version": "v2.22.0", "description": "Open-Source kanban", "private": true, "scripts": { diff --git a/sandstorm-pkgdef.capnp b/sandstorm-pkgdef.capnp index c224f649d..5b0d993d3 100644 --- a/sandstorm-pkgdef.capnp +++ b/sandstorm-pkgdef.capnp @@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = ( appTitle = (defaultText = "Wekan"), # The name of the app as it is displayed to the user. - appVersion = 223, + appVersion = 224, # Increment this for every release. - appMarketingVersion = (defaultText = "2.21.0~2019-02-12"), + appMarketingVersion = (defaultText = "2.22.0~2019-02-13"), # Human-readable presentation of the app version. minUpgradableAppVersion = 0,