From c913a56a1e916d31a0928d787b975ffdea8799ce Mon Sep 17 00:00:00 2001 From: Cyril Galibern Date: Thu, 6 Mar 2025 16:29:59 +0100 Subject: [PATCH] Add example om3 release job payload provider and extend GitHub release context --- extra_lib_examples/job_payload/om3_release.py | 23 +++++++++++++++++++ src/context/github_release.py | 5 ++++ 2 files changed, 28 insertions(+) create mode 100644 extra_lib_examples/job_payload/om3_release.py diff --git a/extra_lib_examples/job_payload/om3_release.py b/extra_lib_examples/job_payload/om3_release.py new file mode 100644 index 0000000..780fc81 --- /dev/null +++ b/extra_lib_examples/job_payload/om3_release.py @@ -0,0 +1,23 @@ +import yaml + +from context.github_pull_request import Context +from job_payload.payload_abstract import PayloadProviderAbstract + + +class JobPayloadProvider(PayloadProviderAbstract): + @staticmethod + def __call__(context: Context): + job_origin = { + 'release': context.description, + } + + return { + "options": { + "job-origin": yaml.safe_dump(job_origin, sort_keys=False), + "action": context.action, + "release-tag": context.tag_name, + "release-name": context.release_name, + "pre-release": context.prerelease, + "draft": context.draft, + } + } diff --git a/src/context/github_release.py b/src/context/github_release.py index a76f22b..b02b1d8 100644 --- a/src/context/github_release.py +++ b/src/context/github_release.py @@ -38,6 +38,10 @@ def draft(self): def prerelease(self): return self.release['prerelease'] + @property + def login(self): + return self.release['author']['login'] + @property def target_commitish(self): return self.release['target_commitish'] @@ -61,4 +65,5 @@ def description(self): 'prerelease': self.prerelease, 'target_commitish': self.target_commitish, 'html_url': self.html_url, + 'login': self.login, }