MM-30801: pre-package channel export plugin (#16406)
* MM-30801: pre-package channel export plugin The [channel export plugin](https://github.com/mattermost/mattermost-plugin-channel-export) complements [incident management](https://github.com/mattermost/mattermost-plugin-incident-management). * only enable IM/CE by default on enterprise ready builds
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
3f5041fa43
Коммит
cd9185fa23
@@ -2676,11 +2676,16 @@ func (s *PluginSettings) SetDefaults(ls LogSettings) {
|
||||
s.PluginStates["com.mattermost.nps"] = &PluginState{Enable: ls.EnableDiagnostics == nil || *ls.EnableDiagnostics}
|
||||
}
|
||||
|
||||
if s.PluginStates["com.mattermost.plugin-incident-management"] == nil {
|
||||
if s.PluginStates["com.mattermost.plugin-incident-management"] == nil && BuildEnterpriseReady == "true" {
|
||||
// Enable the incident management plugin by default
|
||||
s.PluginStates["com.mattermost.plugin-incident-management"] = &PluginState{Enable: true}
|
||||
}
|
||||
|
||||
if s.PluginStates["com.mattermost.plugin-channel-export"] == nil && BuildEnterpriseReady == "true" {
|
||||
// Enable the channel export plugin by default
|
||||
s.PluginStates["com.mattermost.plugin-channel-export"] = &PluginState{Enable: true}
|
||||
}
|
||||
|
||||
if s.EnableMarketplace == nil {
|
||||
s.EnableMarketplace = NewBool(PLUGIN_SETTINGS_DEFAULT_ENABLE_MARKETPLACE)
|
||||
}
|
||||
|
||||
@@ -309,14 +309,24 @@ func TestConfigDefaultNPSPluginState(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestConfigDefaultIncidentManagementPluginState(t *testing.T) {
|
||||
t.Run("should enable IncidentManagement plugin by default", func(t *testing.T) {
|
||||
t.Run("should enable IncidentManagement plugin by default on enterprise-ready builds", func(t *testing.T) {
|
||||
BuildEnterpriseReady = "true"
|
||||
c1 := Config{}
|
||||
c1.SetDefaults()
|
||||
|
||||
assert.True(t, c1.PluginSettings.PluginStates["com.mattermost.plugin-incident-management"].Enable)
|
||||
})
|
||||
|
||||
t.Run("should not enable IncidentManagement plugin by default on non-enterprise-ready builds", func(t *testing.T) {
|
||||
BuildEnterpriseReady = ""
|
||||
c1 := Config{}
|
||||
c1.SetDefaults()
|
||||
|
||||
assert.Nil(t, c1.PluginSettings.PluginStates["com.mattermost.plugin-incident-management"])
|
||||
})
|
||||
|
||||
t.Run("should not re-enable IncidentManagement plugin after it has been disabled", func(t *testing.T) {
|
||||
BuildEnterpriseReady = ""
|
||||
c1 := Config{
|
||||
PluginSettings: PluginSettings{
|
||||
PluginStates: map[string]*PluginState{
|
||||
@@ -333,6 +343,41 @@ func TestConfigDefaultIncidentManagementPluginState(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
func TestConfigDefaultChannelExportPluginState(t *testing.T) {
|
||||
t.Run("should enable ChannelExport plugin by default on enterprise-ready builds", func(t *testing.T) {
|
||||
BuildEnterpriseReady = "true"
|
||||
c1 := Config{}
|
||||
c1.SetDefaults()
|
||||
|
||||
assert.True(t, c1.PluginSettings.PluginStates["com.mattermost.plugin-channel-export"].Enable)
|
||||
})
|
||||
|
||||
t.Run("should not enable ChannelExport plugin by default on non-enterprise-ready builds", func(t *testing.T) {
|
||||
BuildEnterpriseReady = ""
|
||||
c1 := Config{}
|
||||
c1.SetDefaults()
|
||||
|
||||
assert.Nil(t, c1.PluginSettings.PluginStates["com.mattermost.plugin-channel-export"])
|
||||
})
|
||||
|
||||
t.Run("should not re-enable ChannelExport plugin after it has been disabled", func(t *testing.T) {
|
||||
BuildEnterpriseReady = ""
|
||||
c1 := Config{
|
||||
PluginSettings: PluginSettings{
|
||||
PluginStates: map[string]*PluginState{
|
||||
"com.mattermost.plugin-channel-export": {
|
||||
Enable: false,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
c1.SetDefaults()
|
||||
|
||||
assert.False(t, c1.PluginSettings.PluginStates["com.mattermost.plugin-channel-export"].Enable)
|
||||
})
|
||||
}
|
||||
|
||||
func TestTeamSettingsIsValidSiteNameEmpty(t *testing.T) {
|
||||
c1 := Config{}
|
||||
c1.SetDefaults()
|
||||
|
||||
Ссылка в новой задаче
Block a user