Skip to content

levb/mattermost-plugin-apps

 
 

Repository files navigation

mattermost-plugin-apps

CircleCI branch Code Coverage Go Report Card

Mattermost Apps

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.

Getting Started

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

Deploying and Installing Apps

See documentation

Contacts

  • Dev: Lev Brouk (@lev.brouk)
  • PM: Aaron Rothschild (@aaron.rothschild)

About

Cloud Apps support in Mattermost

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 97.8%
  • Makefile 1.7%
  • TypeScript 0.5%