[WIP] [MM-55031] OAuth Outgoing Connection App integration (#25379)
* OAuthOutgoingConnection model * added store * make generated * add missing license headers * fix receiver name * i18n * i18n sorting * update migrations from master * make migrations-extract * update retrylayer tests * replaced sql query with id pagination * fixed flaky tests * missing columns * missing columns on save/update * typo * improved tests * remove enum from mysql colum * add password credentials to store * license changes * OAuthOutgoingConnectionInterface * Oauth -> OAuth * make generated * merge migrations * renamed migrations * model change suggestions * refactor test functionsn * migration typo * refactor store table names * updated sanitize test * cleanup merge * refactor symbol * list endpoint * oauthoutgoingconnection -> outgoingoauthconnection * signature change * i18n update * granttype typo * naming * api list * uppercase typo * i18n * missing license header * fixed path in comments * updated openapi definitions * sanitize connections * make generated * test license and no feature flag * removed t.fatal * updated testhelper calls * yaml schema fixes * switched interface name * suggested translation * missing i18n translation * address comments * updated i18n
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
287cbad2d5
Коммит
81a1d725a0
@@ -471,6 +471,14 @@ func (c *Client4) oAuthAppRoute(appId string) string {
|
||||
return fmt.Sprintf("/oauth/apps/%v", appId)
|
||||
}
|
||||
|
||||
func (c *Client4) outgoingOAuthConnectionsRoute() string {
|
||||
return "/oauth/outgoing_connections"
|
||||
}
|
||||
|
||||
func (c *Client4) outgoingOAuthConnectionRoute(id string) string {
|
||||
return fmt.Sprintf("/oauth/outgoing_connections/%s", id)
|
||||
}
|
||||
|
||||
func (c *Client4) jobsRoute() string {
|
||||
return "/jobs"
|
||||
}
|
||||
@@ -6003,6 +6011,36 @@ func (c *Client4) GetOAuthAccessToken(ctx context.Context, data url.Values) (*Ac
|
||||
return ar, BuildResponse(rp), nil
|
||||
}
|
||||
|
||||
// OutgoingOAuthConnection section
|
||||
|
||||
// GetOutgoingOAuthConnections retrieves the outgoing OAuth connections.
|
||||
func (c *Client4) GetOutgoingOAuthConnections(ctx context.Context, fromID string, limit int) ([]*OutgoingOAuthConnection, *Response, error) {
|
||||
r, err := c.DoAPIGet(ctx, c.outgoingOAuthConnectionsRoute(), "")
|
||||
if err != nil {
|
||||
return nil, BuildResponse(r), err
|
||||
}
|
||||
defer closeBody(r)
|
||||
var connections []*OutgoingOAuthConnection
|
||||
if err := json.NewDecoder(r.Body).Decode(&connections); err != nil {
|
||||
return nil, nil, NewAppError("GetOutgoingOAuthConnections", "api.unmarshal_error", nil, "", http.StatusInternalServerError).Wrap(err)
|
||||
}
|
||||
return connections, BuildResponse(r), nil
|
||||
}
|
||||
|
||||
// GetOutgoingOAuthConnection retrieves the outgoing OAuth connection with the given ID.
|
||||
func (c *Client4) GetOutgoingOAuthConnection(ctx context.Context, id string) (*OutgoingOAuthConnection, *Response, error) {
|
||||
r, err := c.DoAPIGet(ctx, c.outgoingOAuthConnectionRoute(id), "")
|
||||
if err != nil {
|
||||
return nil, BuildResponse(r), err
|
||||
}
|
||||
defer closeBody(r)
|
||||
var connection *OutgoingOAuthConnection
|
||||
if err := json.NewDecoder(r.Body).Decode(&connection); err != nil {
|
||||
return nil, nil, NewAppError("GetOutgoingOAuthConnection", "api.unmarshal_error", nil, "", http.StatusInternalServerError).Wrap(err)
|
||||
}
|
||||
return connection, BuildResponse(r), nil
|
||||
}
|
||||
|
||||
// Elasticsearch Section
|
||||
|
||||
// TestElasticsearch will attempt to connect to the configured Elasticsearch server and return OK if configured.
|
||||
|
||||
Ссылка в новой задаче
Block a user