Add an option to skip the Mattermost server version check (#849)

Adds SkipVersionCheck bool option for mattermost
This commit is contained in:
Joona Hoikkala 2019-06-16 17:23:50 +03:00 committed by Wim
parent 76c7b69e4e
commit 80b4cec87a
4 changed files with 21 additions and 14 deletions

View File

@ -127,6 +127,7 @@ type Protocol struct {
ShowUserTyping bool // slack
ShowEmbeds bool // discord
SkipTLSVerify bool // IRC, mattermost
SkipVersionCheck bool // mattermost
StripNick bool // all protocols
SyncTopic bool // slack
TengoModifyMessage string // general

View File

@ -70,6 +70,7 @@ func (b *Bmattermost) apiLogin() error {
b.mc.SetLogLevel("debug")
}
b.mc.SkipTLSVerify = b.GetBool("SkipTLSVerify")
b.mc.SkipVersionCheck = b.GetBool("SkipVersionCheck")
b.mc.NoTLS = b.GetBool("NoTLS")
b.Log.Infof("Connecting %s (team: %s) on %s", b.GetString("Login"), b.GetString("Team"), b.GetString("Server"))
err := b.mc.Login()

View File

@ -186,9 +186,10 @@ func (m *MMClient) serverAlive(firstConnection bool, b *backoff.Backoff) error {
if resp.Error != nil {
return fmt.Errorf("%#v", resp.Error.Error())
}
if firstConnection && !supportedVersion(resp.ServerVersion) {
if firstConnection && !m.SkipVersionCheck && !supportedVersion(resp.ServerVersion) {
return fmt.Errorf("unsupported mattermost version: %s", resp.ServerVersion)
}
if !m.SkipVersionCheck {
m.ServerVersion = resp.ServerVersion
if m.ServerVersion == "" {
m.logger.Debugf("Server not up yet, reconnecting in %s", d)
@ -197,6 +198,9 @@ func (m *MMClient) serverAlive(firstConnection bool, b *backoff.Backoff) error {
m.logger.Infof("Found version %s", m.ServerVersion)
return nil
}
} else {
return nil
}
}
}

View File

@ -24,6 +24,7 @@ type Credentials struct {
Server string
NoTLS bool
SkipTLSVerify bool
SkipVersionCheck bool
}
type Message struct {