cd6be86a36
* Fix #1957. Boards dev guide. * Remove incomplete link * Clarify the config.json settings * Recommend forking and cloning the repo * Cleanup instructions * make webapp before plugin deploy
3.1 KiB
3.1 KiB
Mattermost Boards Developer's Guide
Mattermost Boards is the Focalboard (aka Boards) plugin running in Mattermost. It is pre-packaed, and runs out of the box with Mattermost 6.0 and later.
To build your own version of it:
- Build mattermost-plugin in the Focalboard repo
- Upload it as a custom plugin to your Mattermost server
Here are the steps in more detail:
Building the Boards plugin
Fork the Focalboard repo, clone it locally, and follow the steps in the readme to set up your dev environment.
Install dependencies:
# First-time setup dependencies
cd mattermost-plugin/webapp
npm install --no-optional
cd ../..
make prebuild
Build the plugin:
# Build webapp
make webapp
# Build plugin
cd mattermost-plugin
make dist
Refer to the dev-release.yml workflow for the up-to-date commands that are run as part of CI.
Uploading the plugin to your server
You can manually upload the plugin to your Mattermost Server:
- Enable custom plugins by setting
PluginSettings > EnableUploads
totrue
in the Mattermostconfig.json
file - Navigate to System Console > Plugins > Management and upload the generated
.tar.gz
package in yourmattermost-plugin/dist
directory - Enable it (if needed)
Alternatively, you can install Mattermost locally and use make deploy
to auto-deploy it for you:
First, build and run Mattermost locally:
- Follow the Mattermost Developers Guide to set up your environment
- In particuler, make sure Docker is set up and running
- Fork mattermost-webapp, clone it locally, and
make build
- Fork mattermost-server and clone it locally
- Run
make config-reset
to generate theconfig/config.json
file - Edit
config/config.json
:
- Set
ServiceSettings > SiteURL
tohttp://localhost:8065
(docs) - Set
ServiceSettings > EnableLocalMode
totrue
(docs) - Set
PluginSettings > EnableUploads
totrue
(docs)
- Add an ENV var
MM_SERVICESETTINGS_SITEURL
with the same site URL used in the config - Run
make run-server
in Mattermost
Now, to build and deploy the Boards plugin:
- Clone / fork mattermost/focalboard
- Install the dependencies (see above)
- Run:
make webapp
cd mattermost-plugin
make deploy