##// END OF EJS Templates
fix: fix missing else condition to populate user info for non-repo events
andverb -
Show More
@@ -82,8 +82,10 class RhodecodeEvent(object):
82 log.debug("Got integration actor: %s", auth_user)
82 log.debug("Got integration actor: %s", auth_user)
83 if isinstance(auth_user, AuthUser):
83 if isinstance(auth_user, AuthUser):
84 instance = auth_user.get_instance()
84 instance = auth_user.get_instance()
85 # we can't find this DB user...
85 if instance:
86 if not instance:
86 return instance
87 else:
88 # we can't find this DB user...
87 return AttributeDict(
89 return AttributeDict(
88 dict(
90 dict(
89 username=auth_user.username,
91 username=auth_user.username,
@@ -17,7 +17,7
17 # and proprietary license terms, please see https://rhodecode.com/licenses/
17 # and proprietary license terms, please see https://rhodecode.com/licenses/
18 import re
18 import re
19 import textwrap
19 import textwrap
20 import dataclasses
20 from dataclasses import dataclass, asdict
21 import logging
21 import logging
22
22
23 from mako.template import Template
23 from mako.template import Template
@@ -28,13 +28,16 from rhodecode.integrations.types.base import CommitParsingDataHandler, render_w
28 log = logging.getLogger(__name__)
28 log = logging.getLogger(__name__)
29
29
30
30
31 @dataclasses.dataclass
31 @dataclass
32 class SlackData:
32 class SlackData:
33 title: str
33 title: str
34 text: str
34 text: str
35 fields: list[dict] | None = None
35 fields: list[dict] | None = None
36 overrides: dict | None = None
36 overrides: dict | None = None
37
37
38 def asdict(self):
39 return asdict(self)
40
38
41
39 def html_to_slack_links(message):
42 def html_to_slack_links(message):
40 return re.compile(r'<a .*?href=["\'](.+?)".*?>(.+?)</a>').sub(r"<\1|\2>", message)
43 return re.compile(r'<a .*?href=["\'](.+?)".*?>(.+?)</a>').sub(r"<\1|\2>", message)
@@ -134,15 +134,10 class SlackIntegrationType(IntegrationTypeBase):
134
134
135 handler = SlackDataHandler()
135 handler = SlackDataHandler()
136 slack_data = handler(event, data)
136 slack_data = handler(event, data)
137 # convert to dict so
137 # Transform to dict so its serializable
138 slack_data_dict = {
138 slack_data = slack_data.asdict()
139 "title": slack_data.title,
140 "text": slack_data.text,
141 "fields": slack_data.fields,
142 "overrides": slack_data.overrides
143 }
144 # title, text, fields, overrides
139 # title, text, fields, overrides
145 run_task(post_text_to_slack, self.settings, slack_data_dict)
140 run_task(post_text_to_slack, self.settings, slack_data)
146
141
147
142
148 @async_task(ignore_result=True, base=RequestContextTask)
143 @async_task(ignore_result=True, base=RequestContextTask)
General Comments 0
You need to be logged in to leave comments. Login now