Commit Graph

182 Commits

Author SHA1 Message Date
George Goldberg
50fc6e1e9e PLT-???? Prepare file upload infrastructure for Data Retention. (#7266)
* Prepare file upload infrastructure for Data Retention.

This commit prepares the file upload infrastructure for the data
retention feature that is under construction. Changes are:

* Move file management code to utils to allow access to it from jobs.

* From now on, store all file uploads in a top level folder which is the
  date of the day on which they were uploaded.

This commit is based on Harrison Healey's branch, but updated to work
with the latest master.

* Use NewAppError
2017-08-25 10:38:13 -04:00
Chris
b122381e87 PLT-1649: add response_url support for custom slash commands (#6739)
* add response_url support for custom slash commands

* pr suggestions

* pr update / suggestion

* test fix
2017-08-16 08:17:57 -04:00
Saturnino Abril
88f398ffdd Revert " #4755 Combining consecutive user join/leave system messages to single message and few other changes." (#7072)
* Revert "PLT-6603: Don't return all posts on invalid query. (#7061)"

This reverts commit 25a2013890.

* Revert " #4755 Combining consecutive user join/leave system messages to single message and few other changes. (#5945)"

This reverts commit 8a91235fb3.
2017-08-01 08:16:45 -04:00
Debanshu Kundu
8a91235fb3 #4755 Combining consecutive user join/leave system messages to single message and few other changes. (#5945)
fix 7 and 8

remove @ at "{username} joined the channel"

refactor and update test
2017-08-01 02:17:21 +08:00
Joram Wilander
59992ae4a4 PLT-6763 Implement user access tokens and new roles (server-side) (#6972)
* Implement user access tokens and new roles

* Update config.json

* Add public post permission to apiv3

* Remove old comment

* Fix model unit test

* Updates to store per feedback

* Updates per feedback from CS
2017-07-31 12:59:32 -04:00
Chris
72f61ab96a make cli team / channel delete operations also delete webhooks and slash commands (#7028) 2017-07-31 11:52:45 -04:00
Christopher Speller
09b49c26dd PLT-5308 Caching layer part 2 (#6973)
* Adding Reaction store cache layer example

* Implementing reaction store in new caching system.

* Redis for reaction store

* Adding redis library

* Adding invalidation for DeleteAllWithEmojiName and other minor enhancements
2017-07-31 08:15:23 -07:00
George Goldberg
6c6f2a1138 PLT-6595-Server: Job Management APIs. (#6931)
* PLT-6595-Server: Job Management APIs.

* MANAGE_JOBS Permission

* Fix test.
2017-07-20 08:25:35 -07:00
George Goldberg
83d53ea98c PLT-6475: Elasticsearch Indexing Worker. (#6879) 2017-07-11 09:09:15 +01:00
George Goldberg
0495a51949 PLT-6916: Redesign the jobs package and Jobserver. (#6733)
This commit redesigns the jobserver to be based around an architecture
of "workers", which carry out jobs of a particular type, and "jobs"
which are a unit of work carried by a particular worker. It also
introduces "schedulers" which are responsible for scheduling jobs of a
particular type automatically (jobs can also be scheduled manually when
apropriate).

Workers may be run many times, either in instances of the platform
binary, or the standalone jobserver binary. In any mattermost cluster,
only one instance of platform OR jobserver must run the schedulers. At
the moment this is controlled by a config variable, but in future will
be controlled through the cluster leader election process.
2017-07-07 15:21:02 +01:00
Joram Wilander
f54aee1ef5 Add paging to the GET /emojis endpoint (#6802) 2017-07-03 23:58:02 -07:00
Joram Wilander
5507154992 Add some basic sorting support for GET /users endpoint (#6801) 2017-06-30 12:07:23 -04:00
Corey Hulen
36f216cb7c PLT-6080 moving clustering to memberlist (#6499)
* PLT-6080 adding cluster discovery service

* Adding memberlist lib

* Adding memberlist lib

* WIP

* WIP

* WIP

* WIP

* Rolling back config changes

* Fixing make file

* Fixing config for cluster

* WIP

* Fixing system console for clustering

* Fixing default config

* Fixing config

* Fixing system console for clustering

* Tweaking hub setting

* Bumping up time

* merging vendor dir

* Updating vendor dir

* Fixing unit test

* Fixing bad merge

* Remove some testing code

* Moving comment

* PLT-6868 adding db ping retry

* Removing unused loc strings

* Adding defer to cancel
2017-06-19 08:44:04 -07:00
Harrison Healey
577ed27f1b PLT-6408 Framework for job server (#6404)
* Added initial job server

* Added job server to be ran as part of platform

* Added test job to the enterprise repo

* Fixed job server not loading license

* Renamed job package to jobs

* Fixed TE not being buildable

* Added JobStatus table to database

* Changed fields used by JobStatus

* Added APIs to query job status

* Added config change listener to server

* Added option to run job server from Makefile

* Added ability to enable/disable jobs from config

* Commented out placeholder for search indexing job

* Fixed govet

* Removed debug messages and fixed job api init message
2017-05-18 15:05:57 -04:00
George Goldberg
0db5e3922f PLT-6472: Basic Elastic Search implementation. (#6382)
* PLT-6472: Basic Elastic Search implementation.

This currently supports indexing of posts at create/update/delete time.
It does not support batch indexing or reindexing, and does not support
any entities other than posts yet. The purpose is to more-or-less
replicate the existing full-text search feature but with some of the
immediate benefits of using elastic search.

* Alter settings for AWS compatability.

* Remove unneeded i18n strings.
2017-05-18 11:26:52 -04:00
Robin Naundorf
0a20e8d326 PLT-6019: Add APIv4 Endpoint for restoring Channels (#6263) 2017-05-15 16:12:30 -04:00
Robin Naundorf
5efcd2d9d3 Add API Endpoint for deleted Channels (#5889) 2017-05-09 07:52:46 -05:00
George Goldberg
597641545d PLT-6355: Use separate Read Replicas for Search. (#6216) 2017-05-01 00:19:58 -04:00
Christopher Speller
9a87bb3af6 Creating common token store and moving email invites and verification to it (#6213) 2017-04-27 10:55:03 -04:00
Joram Wilander
8b8aa2ca3c Refactor OAuth 2.0 code into app layer (#6037) 2017-04-12 16:29:42 -04:00
Harrison Healey
fb6f2a123c PLT-5860 Updated copyright date (#6058)
* PLT-5860 Updated copyright date in about modal

* PLT-5860 Updated copyright notice in JSX files

* PLT-5860 Updated copyright notice in go files

* Fixed misc copyright dates

* Fixed component snapshots
2017-04-12 08:27:57 -04:00
Saturnino Abril
d8b732a488 APIv4 GET /users/{user_id}/posts/flagged (#5984)
* APIv4 GET /users/{user_id}/posts/flagged

* change permission check
2017-04-05 16:18:23 -04:00
Saturnino Abril
43e795448f APIv4 post /teams/search (#5931) 2017-04-03 10:34:14 -07:00
Joram Wilander
6b61834ab1 Add store unit tests and add make target for testing store with postgres (#5925)
* Add store unit tests and add make target for testing store with postgres

* Remove postgres target form test-server target

* Fix audit test
2017-04-03 10:32:58 -07:00
George Goldberg
232a99f0c7 PLT-6162: Search for users not in a given team. (#5943) 2017-04-03 13:11:12 -04:00
Joram Wilander
aba07e5cb9 PLT-5483 Fix bug where flagged posts endpoint returned posts on other teams (#5765)
* Fix bug where flagged posts endpoint returned posts on other teams

* Include flagged posts from DMs/GMs
2017-03-31 12:25:39 -04:00
Harrison Healey
6ac87d82e3 PLT-2713 Added ability for admins to list users not in any team (#5844)
* PLT-2713 Added ability for admins to list users not in any team

* Updated style of unit test
2017-03-29 21:11:40 -04:00
George Goldberg
a4764a5c10 PLT-6083: API to get users not in a specific team. (#5888) 2017-03-29 21:10:51 -04:00
Saturnino Abril
01aaccb340 APIv4 post /channels/ids (#5845)
* APIv4 post /channels/ids

* updated enpoint as /teams/{team_id}/channels/ids
2017-03-27 08:41:40 -03:00
Joram Wilander
2a753949f1 Implement POST /users/search endpoint for APIv4 (#5822)
* Implement POST /users/search endpoint for APIv4

* PLT-2713 Added store functions for searching users that don't have a team

* PLT-2713 Added 'without_team' option when searching users

* PLT-2713 Added 'without_team' option when searching users (v4)
2017-03-23 10:34:22 +00:00
Joram Wilander
d757645c24 Implement some channel endpoints for APIv4 (#5767) 2017-03-16 11:58:33 -07:00
Joram Wilander
19c67d7fe3 Implement GET and POST /hooks/outgoing endpoints for APIv4 (#5645) 2017-03-13 10:40:43 -04:00
Joram Wilander
3ebfb36953 Implement compliance endpoints for APIv4 (#5683)
* Implement compliance endpoints for APIv4

* Add paging to get reports endpoint
2017-03-13 10:14:16 -04:00
Joram Wilander
a284cd8c18 Implement some team endpoints for APIv4 (#5745)
* Implement PUT /teams/{team_id} endpoint for APIv4

* Implement GET /users/{user_id}/teams/{team_id}/unread endpoint for APIv4

* Implement POST /teams/{team_id}/members/ids endpoint for APIv4

* Remove debug statement
2017-03-13 09:46:28 -04:00
Saturnino Abril
8731465957 Endpoint for APIv4: GET /team/{team_id}/channels (#5681) 2017-03-13 12:26:51 +00:00
Gabin Aureche
fe38d6d5bb Add pinned posts (#4217) 2017-03-13 12:25:08 +00:00
Joram Wilander
83291e4c8f Merge 3.7 changes into master (#5679)
* Save schema version for 3.7 (#5675)

* Adding index and cache to reactinos store (#5654)

* Fix badge count for push notifications (#5672)
2017-03-07 16:05:01 -05:00
George Goldberg
f7682ad11a PLT-5367: Basic post bulk importing. (#5562) 2017-02-28 20:55:21 -03:00
Andrei Stanciu
45edfbe719 Get all teams api4 (#5542) 2017-02-28 08:41:38 +00:00
Christopher Speller
83c113595a Revert "Adding caching to get channel member (#5518)"
This reverts commit ba028ed74b.
2017-02-27 17:43:23 -05:00
Poornima
19b753467d Adding edit of incoming webhook (#5272)
Adding edit of outgoing webhook
Fixing spelling of error
Fixing style
Changing from PUT to POST for updates
Fixing test failures due to merge
2017-02-26 13:48:20 -05:00
George Goldberg
f182d196ff PLT-5070: Server side component of Telemetry. (#5514) 2017-02-24 17:33:59 +00:00
Christopher Speller
ba028ed74b Adding caching to get channel member (#5518) 2017-02-24 09:15:36 -05:00
enahum
748a416961 PLT-3193 Add channel notification preferences for push and email noti… (#5500)
* PLT-3193 Add channel notification preferences for push and email notifications

* unit tests, model validation and localization

* Feedback review

* Adding back allowFromCache check

* Setting push and email to use default settings

* Move props as constants

* address feedback
2017-02-23 11:08:48 -03:00
Joram Wilander
69cac604e0 Implement create and get incoming webhook endpoints for APIv4 (#5407)
* Implement POST /hooks/incoming endpoint for APIv4

* Implement GET /hooks/incoming endpoint for APIv4

* Updates per feedback
2017-02-21 19:42:34 -05:00
Saturnino Abril
5c19d9be7f Implement endpoint for APIv4: GET /users/{user_id}/audits (#5472) 2017-02-21 12:07:57 +00:00
Corey Hulen
274b9b6032 Fixing file info caching issue with Aurora for master (#5477) 2017-02-20 13:40:32 -05:00
Corey Hulen
01a8114aa3 Adding emoji caching (#5433) 2017-02-15 19:25:33 -05:00
Joram Wilander
5462f0119e Implement a few channel member endpoints for APIv4 (#5304)
* Implement GET /channels/{channel_id}/members

* Implement GET /channels/{channel_id}/members/{user_id} endpoint for APIv4

* Implement /users/{user_id}/teams/{team_id}/channels/members endpoint for APIv4

* Fix unit test
2017-02-07 14:58:27 -08:00
Joram Wilander
487bb56a9b Add caching for file infos (#5330) 2017-02-07 12:36:37 -08:00