* Adds data migrations and the unique IDs migration
* Adds GetSystemSetting tests
* Add log statements to data migrations
* Move migrations to the store and ensure they follow an order mixing database and data migrations
* Fix system settings
* Add tests for unique id migration
* Small comment change
* Make a couple of methods private and wrap the migration in a transaction
* Update public methods
* Add database mutex to data migrations
* Create server params and pass a mutex factory to the store
* Fix plugin linter
* Make isPlugin private
* Fix comment typo
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
* Add a plugin adapter to reuse MM websocket in plugin mode
* Remove development replace
* Switch all go.mod files to use 1.16
* Fix linter issues
* Fix linter
* Update server version to contain the new hooks
* Update focalboard to be compatible with mattermost v6
* Point to the new plugin API version
* Fix collectors linter issues
* Move all CI jobs to 1.16
* fix nil stringer error
* include API path with all API ERROR logs
* enable "caller" field
* disable colour output and min msg length for plugin
* bump Logr version to v2.0.4
* Added getWorkspaceUsers API
* Integrated workspace user API in UI
* Integrated workspace user API in UI
* Added toto for implementation slot
* Implemenmted getWorkspaceUSers to get data from Focalboard DB
* Updated store mocks
* Made select styles a shared constant
* Removed unwanted diffs
* Removed unwanted diffs
* Updated snapshots for new property type
* Added user store test
* Added missing copyright notice
* Returning error if no users found to retain original behavior
* Minor fixes and added tests
* Minor fixes
* Used React context for workspace users
* Used useContext hook, and added additional user ID -> user context to avoid that computation by all componnets
* Mergerd both workspace user contextx
* Minor review fix
- structured, asynchronous logging
- supports discreet log levels, including custom levels
- supports output to console, files, and all common log aggregators.
- supports JSON, plain text and GELF formats
- lazy formatting and writing
* Adds plugin actions to the project's CI
* Remove the version number from the generated artifact
* Change job name to something more descriptive
* Switch back to workflow_dispatch
* Improving mattermost auth implementation
* Making mattermost-auth based on shared database access
* Reverting unneeded changes in the config.json file
* Fixing tiny problems
* Removing the need of using the mattermost session token
* Fixing some bugs and allowing to not-bind the server to any port
* Small fix to correctly get the templates
* Adding the mattermost-plugin code inside focalboard repo
* Adding a not working code part of the cluster websocket communication
* Updating the mattermost version
* Adding the cluster messages for the websockets
* Updating to the new node version
* Making it compatible with S3
* Addressing some tiny problems
* Fixing server tests
* Adds support for MySQL migrations and initialization
Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
As an SRE team we would like to expose standard metrics and grouped by version
of the application. Right now will expose only metrics related to Go but instrumentor
should be used in other parts of the codebase so we can track other metrics, eg.
number of tasks, boards, users etc. Similar as we do in MM.
It will run in port `localhost:9092` and it is a new config `prometheus_address`.
Also in the commit we introduced, `group.Add` which helps us to handle gracefully
errors for goroutines. It's a good practice and there are couple of articles by
Golang for this.