mattermost-plugin-apps
mattermost-plugin-apps copied to clipboard
Powers the Mattermost App Framework
Mattermost Apps Framework Plugin
Contents
- Overview
- Deploying and Installing Apps
- Develop an App
- Running the Tests
Overview
This plugin serves as the core of the Mattermost Apps Framework. It extends the Mattermost server's API to allow for the creation of feature-rich integrations, with functionality supported on the Mattermost web client and mobile client. Take a look at the app developer documentation for more information.
Join the Mattermost Apps channel on our community server to discuss technical details and use cases for the app you're creating.
Deploying and Installing Apps
See documentation
Develop an App
Refer to the Mattermost Apps Quick Start Guide for instructions on how to use the development environment and examples in the mattermost/mattermost-app-examples repository.
Running the Tests
mattermost-plugin-apps has two types of tests: unit tests and end to end tests.
Unit tests
To run the unit tests, you just need to execute:
make test
End to end tests
The Apps Framework e2e tests written in go require the same Docker containers used in the Mattermost development environment to be running. However these tests don't need a Mattermost server to be running. The tests instead mimic the behavior of a running server using shared code of the mattermost-server repository. You can think of it as a "fake server" running, completely separate from the running containers, but communicating with the containers.
To run the end to end test suite, you need to have the Mattermost server project downloaded and configured in your system. Check the Developer Setup guide on how to configure a local server instance. The tests will search for a mattermost-server folder in the same directory where the mattermost-plugin-apps is.
With the mattermost-server folder present, the only thing that needs to be done before running the tests themselves is to start the Mattermost development environment. The environment only needs to be started once, and then the tests can run as many times as needed. To start the Docker environment, change to the mattermost-server project directory and run:
make start-docker
Change your directory back to mattermost-plugin-apps and run the end to end test suite with:
make test-e2e