MM-18517: Plugin Marketplace (Phase 2) (#13086)

* MM-17549: use StatusNotFound when deleting plugin (#12983)

Trying to delete a plugin that does not exist should fail with a 404, not a 400.

Relates-to: https://mattermost.atlassian.net/browse/MM-17549

* MM-19630: marketplace: model ReleaseNotesURL (#13083)

Automatic Merge

* MM-20065: allow prepackaged plugin upgrade (#13076)

* MM-20065: allow prepackaged plugin upgrade

When locally installing prepackaged plugins, skip if a plugin exists with the same id and is the same or a newer version.

This is effectively a "poor man's" rework of prepackaged plugins to allow upgrade of prepackaged plugins via the marketplace. The larger plan to rework prepackaged plugins was deferred from v5.18.

Fixes: https://mattermost.atlassian.net/browse/MM-20065

* eliminate unnecessary installPlugin

* fix TestPluginSync defaults to match minio

* cleanExistingBundles

* close prepackaged filereader

* simplify
Этот коммит содержится в:
Jesse Hallam
2019-11-18 13:40:49 -04:00
коммит произвёл GitHub
родитель 4d1c6cd446
Коммит 2571d97723
7 изменённых файлов: 340 добавлений и 27 удалений

Просмотреть файл

@@ -12,10 +12,11 @@ import (
// BaseMarketplacePlugin is a Mattermost plugin received from the marketplace server.
type BaseMarketplacePlugin struct {
HomepageURL string `json:"homepage_url"`
DownloadURL string `json:"download_url"`
IconData string `json:"icon_data"`
Manifest *Manifest `json:"manifest"`
HomepageURL string `json:"homepage_url"`
DownloadURL string `json:"download_url"`
ReleaseNotesURL string `json:"release_notes_url"`
IconData string `json:"icon_data"`
Manifest *Manifest `json:"manifest"`
}
// MarketplacePlugin is a state aware marketplace plugin.