Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to access Boards & Playbooks in Mattermost Desktop #23536

Closed
craph opened this issue May 30, 2023 · 14 comments
Closed

Unable to access Boards & Playbooks in Mattermost Desktop #23536

craph opened this issue May 30, 2023 · 14 comments
Labels
Bug Report/Open Bug report/issue

Comments

@craph
Copy link

craph commented May 30, 2023

Summary

I'm unable to access Boards & Playbooks in Mattermost Desktop

Steps to reproduce

After deploying Mattermost-server in docker with the version 7.10.2 I'm unable to access Boards & Playbooks in Mattermost desktop

Expected behavior

Boards & Playbooks should be accessible

Observed behavior (that appears unintentional)

At the top of Mattermost desktop, when I clicked on the tab Boards or Playbooks nothing happen.

in the docker-compose logs -f when I start the server I can see :

mattermost    | {"timestamp":"2023-05-30 12:08:53.424 Z","level":"error","msg":"Failed to install prepackaged plugin","caller":"app/plugin.go:964","path":"/mattermost/prepackaged_plugins/focalboard-v7.10.0-linux-amd64.tar.gz","error":"Failed to install extracted prepackaged plugin /mattermost/prepackaged_plugins/focalboard-v7.10.0-linux-amd64.tar.gz: installExtractedPlugin: Unable to move plugin from temporary directory to final destination. Another plugin may be using the same directory name., destination already exists"}
mattermost    | {"timestamp":"2023-05-30 12:08:53.175 Z","level":"error","msg":"Failed to install prepackaged plugin","caller":"app/plugin.go:964","path":"/mattermost/prepackaged_plugins/mattermost-plugin-playbooks-v1.36.1-linux-amd64.tar.gz","error":"Failed to install extracted prepackaged plugin /mattermost/prepackaged_plugins/mattermost-plugin-playbooks-v1.36.1-linux-amd64.tar.gz: installExtractedPlugin: Unable to move plugin from temporary directory to final destination. Another plugin may be using the same directory name., destination already exists"}
@amyblais
Copy link
Member

Hi @craph,

  1. What Mattermost desktop app version are you using?
  2. What OS and version are you using?
  3. Does this only happen on desktop app, or does this also happen on webapp?

@craph
Copy link
Author

craph commented May 30, 2023

  • What Mattermost desktop app version are you using?
  • What OS and version are you using?
  • Does this only happen on desktop app, or does this also happen on webapp?

Hi,

I'm using Mattermost desktop version 5.3.1.
Mattermost desktop is deployed with docker on CentOS 7.9
The problem occured in desktop app and webapp too.

Regarding the error in the log, I'll try to have a look inside the existing folder and may be remove it to see if the plugin is correctly installed at the next start of the docker container

@amyblais amyblais changed the title Unable to access Boards in Mattermost Desktop Unable to access Boards & Playbooks in Mattermost Desktop May 30, 2023
@amyblais
Copy link
Member

Thank you, I also combined the two reports into one since these likely have the same root cause.

@amyblais amyblais added the Awaiting Submitter Action Blocked on the author label May 30, 2023
@craph
Copy link
Author

craph commented May 31, 2023

After checking the "plugins" directory I saw that all the folders were empty. After removing all the folders and restarting the docker container all the plugins were installed correctly.

May be there are an issue if folder already exists ?

@amyblais amyblais removed the Awaiting Submitter Action Blocked on the author label May 31, 2023
@amyblais
Copy link
Member

After checking the "plugins" directory I saw that all the folders were empty. After removing all the folders and restarting the docker container all the plugins were installed correctly. May be there are an issue if folder already exists ?

@mickmister @hanzei Have you seen a similar issue in the past? Do you know if this could be a bug?

@hanzei
Copy link
Contributor

hanzei commented May 31, 2023

@amyblais I've not seen that issue in the past. Maybe it's best to create a JIRA for further investigation?

@mickmister
Copy link
Member

@amyblais @hanzei I think this may be related to mattermost/mattermost-plugin-playbooks#1848

@amyblais
Copy link
Member

@amyblais amyblais added the Bug Report/Open Bug report/issue label Jun 20, 2023
@mgdelacroix
Copy link
Member

Hi @craph

May be there are an issue if folder already exists ?

This is definitely the case. If the folder is present when the plugin is getting installed, the installation will fail and the plugin will be skipped. The question is how come the folders where present but empty.

Do you have the full logs for the server start available in which you found the errors listed in the description of the issue?

@craph
Copy link
Author

craph commented Jun 28, 2023

Hi @mgdelacroix ,

Sorry I don't have the full log of the server start.
May be it can be reproduced ? 🤔

@mgdelacroix
Copy link
Member

I've been trying with no success. Could you post your docker-compose.yml file (anonymized if necessary) so I can try and reproduce using an environment as similar as possible?

@mgdelacroix
Copy link
Member

Could you please check what are the permissions set on the volume that stores the plugin data and in one of the plugin directories? (for example, /mattermost/plugins and /mattermost/plugins/focalboard). Are you setting custom UID and GID values for the container?

@craph
Copy link
Author

craph commented Jul 6, 2023

Hello @mgdelacroix,

Sorry to answer you so late.
Here are the permissions set on plugins data and plugins directories :

[root@myserver mattermost]# ll -n
total 20
drwxr-xr-x  3 2000 1680 4096 Nov  8  2021 client
drwxr-xr-x  2 2000 1680 4096 May 30 10:56 config
drwxr-xr-x 16 2000 1680 4096 Jul  6 07:26 data
drwxr-xr-x  2 2000 1680 4096 Nov 13  2019 logs
drwxr-xr-x  6 2000 1680 4096 Jul  6 07:26 plugins
[root@myserver mattermost]# ll -n plugins/
total 16
drwxr--r-- 4 2000 2000 4096 Jul  6 07:26 com.mattermost.apps
drwxr--r-- 6 2000 2000 4096 Jul  6 07:26 com.mattermost.calls
drwxr--r-- 7 2000 2000 4096 Jul  6 07:26 focalboard
drwxr--r-- 6 2000 2000 4096 Jul  6 07:26 playbooks
[root@myserver mattermost]# ll -n plugins/focalboard
total 24
drwxr--r-- 2 2000 2000 4096 Jul  6 07:26 assets
drwxr--r-- 3 2000 2000 4096 Jul  6 07:26 pack
-rw-r--r-- 1 2000 2000 1270 Jul  6 07:26 plugin.json
drwxr--r-- 2 2000 2000 4096 Jul  6 07:26 public
drwxr--r-- 3 2000 2000 4096 Jul  6 07:26 server
drwxr--r-- 3 2000 2000 4096 Jul  6 07:26 webapp

I haven't define specific UID and GID. I have the default .env file (I'm only changing the tag for mattermost version in it)

Here is the docker-compose.yml file :

# https://docs.docker.com/compose/environment-variables/

version: "2.4"

services:
  postgres:
    container_name: postgres_mattermost
    image: postgres:${POSTGRES_IMAGE_TAG}
    restart: ${RESTART_POLICY}
    security_opt:
      - no-new-privileges:true
    pids_limit: 100
    read_only: true
    tmpfs:
      - /tmp
      - /run/postgresql
    volumes:
      - ${POSTGRES_DATA_PATH}:/var/lib/postgresql/data
    environment:
      # timezone inside container
      - TZ

      # necessary Postgres options/variables
      - POSTGRES_USER
      - POSTGRES_PASSWORD
      - POSTGRES_DB

  mattermost:
    depends_on:
      - postgres
    container_name: mattermost
    image: mattermost/${MATTERMOST_IMAGE}:${MATTERMOST_IMAGE_TAG}
    restart: ${RESTART_POLICY}
    security_opt:
      - no-new-privileges:true
    pids_limit: 200
    read_only: ${MATTERMOST_CONTAINER_READONLY}
    tmpfs:
      - /tmp
    volumes:
      - ${MATTERMOST_CONFIG_PATH}:/mattermost/config:rw
      - ${MATTERMOST_DATA_PATH}:/mattermost/data:rw
      - ${MATTERMOST_LOGS_PATH}:/mattermost/logs:rw
      - ${MATTERMOST_PLUGINS_PATH}:/mattermost/plugins:rw
      - ${MATTERMOST_CLIENT_PLUGINS_PATH}:/mattermost/client/plugins:rw
      # When you want to use SSO with GitLab, you have to add the cert pki chain of GitLab inside Alpine
      # # to avoid Token request failed: certificate signed by unknown authority
      # # (link: https://github.com/mattermost/mattermost-server/issues/13059 and https://github.com/mattermost/docker/issues/34)
      - ${GITLAB_PKI_CHAIN_PATH}:/etc/ssl/certs/my_pki_chain.pem:ro
    environment:
      # timezone inside container
      - TZ

      # necessary Mattermost options/variables (see env.example)
      - MM_SQLSETTINGS_DRIVERNAME
      - MM_SQLSETTINGS_DATASOURCE

      # additional settings
      - MM_SERVICESETTINGS_SITEURL

@amyblais
Copy link
Member

amyblais commented Apr 5, 2024

Closing for now - the ticket was marked as won't fix as our team doesn't have capacity to investigate this further for now.

@amyblais amyblais closed this as not planned Won't fix, can't repro, duplicate, stale Apr 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Report/Open Bug report/issue
Projects
None yet
Development

No branches or pull requests

5 participants