forked from jshiffer/matterbridge
Add an option to skip the Mattermost server version check (#849)
Adds SkipVersionCheck bool option for mattermost
This commit is contained in:
parent
76c7b69e4e
commit
80b4cec87a
@ -127,6 +127,7 @@ type Protocol struct {
|
|||||||
ShowUserTyping bool // slack
|
ShowUserTyping bool // slack
|
||||||
ShowEmbeds bool // discord
|
ShowEmbeds bool // discord
|
||||||
SkipTLSVerify bool // IRC, mattermost
|
SkipTLSVerify bool // IRC, mattermost
|
||||||
|
SkipVersionCheck bool // mattermost
|
||||||
StripNick bool // all protocols
|
StripNick bool // all protocols
|
||||||
SyncTopic bool // slack
|
SyncTopic bool // slack
|
||||||
TengoModifyMessage string // general
|
TengoModifyMessage string // general
|
||||||
|
@ -70,6 +70,7 @@ func (b *Bmattermost) apiLogin() error {
|
|||||||
b.mc.SetLogLevel("debug")
|
b.mc.SetLogLevel("debug")
|
||||||
}
|
}
|
||||||
b.mc.SkipTLSVerify = b.GetBool("SkipTLSVerify")
|
b.mc.SkipTLSVerify = b.GetBool("SkipTLSVerify")
|
||||||
|
b.mc.SkipVersionCheck = b.GetBool("SkipVersionCheck")
|
||||||
b.mc.NoTLS = b.GetBool("NoTLS")
|
b.mc.NoTLS = b.GetBool("NoTLS")
|
||||||
b.Log.Infof("Connecting %s (team: %s) on %s", b.GetString("Login"), b.GetString("Team"), b.GetString("Server"))
|
b.Log.Infof("Connecting %s (team: %s) on %s", b.GetString("Login"), b.GetString("Team"), b.GetString("Server"))
|
||||||
err := b.mc.Login()
|
err := b.mc.Login()
|
||||||
|
@ -186,15 +186,19 @@ func (m *MMClient) serverAlive(firstConnection bool, b *backoff.Backoff) error {
|
|||||||
if resp.Error != nil {
|
if resp.Error != nil {
|
||||||
return fmt.Errorf("%#v", resp.Error.Error())
|
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)
|
return fmt.Errorf("unsupported mattermost version: %s", resp.ServerVersion)
|
||||||
}
|
}
|
||||||
m.ServerVersion = resp.ServerVersion
|
if !m.SkipVersionCheck {
|
||||||
if m.ServerVersion == "" {
|
m.ServerVersion = resp.ServerVersion
|
||||||
m.logger.Debugf("Server not up yet, reconnecting in %s", d)
|
if m.ServerVersion == "" {
|
||||||
time.Sleep(d)
|
m.logger.Debugf("Server not up yet, reconnecting in %s", d)
|
||||||
|
time.Sleep(d)
|
||||||
|
} else {
|
||||||
|
m.logger.Infof("Found version %s", m.ServerVersion)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
m.logger.Infof("Found version %s", m.ServerVersion)
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,14 +16,15 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type Credentials struct {
|
type Credentials struct {
|
||||||
Login string
|
Login string
|
||||||
Team string
|
Team string
|
||||||
Pass string
|
Pass string
|
||||||
Token string
|
Token string
|
||||||
CookieToken bool
|
CookieToken bool
|
||||||
Server string
|
Server string
|
||||||
NoTLS bool
|
NoTLS bool
|
||||||
SkipTLSVerify bool
|
SkipTLSVerify bool
|
||||||
|
SkipVersionCheck bool
|
||||||
}
|
}
|
||||||
|
|
||||||
type Message struct {
|
type Message struct {
|
||||||
|
Loading…
Reference in New Issue
Block a user