diff --git a/CHANGES.md b/CHANGES.md index 48d2f08..fa03559 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,8 @@ # Change Log +# 3.3.0 +- Added new ``search_users`` action. Addresses [#90](https://github.com/StackStorm-Exchange/stackstorm-jira/issues/90) + ## 3.2.3 - Addresses [#87](https://github.com/StackStorm-Exchange/stackstorm-jira/issues/87) JIRA sensor failure due to [deprecation of /v2/search endpoint](https://developer.atlassian.com/changelog/#CHANGE-2046) diff --git a/actions/search_users.py b/actions/search_users.py new file mode 100644 index 0000000..c2e6bdf --- /dev/null +++ b/actions/search_users.py @@ -0,0 +1,29 @@ +from __future__ import annotations + +from lib.base import BaseJiraAction + +__all__ = ["SearchJiraUsersAction"] + + +class SearchJiraUsersAction(BaseJiraAction): + def run( + self, + query, + start_at: int = 0, + max_results: int = 50, + include_active: bool = True, + include_inactive: bool = False, + ) -> dict[str, str]: + users = self._client.search_users( + query=query, + startAt=start_at, + maxResults=max_results, + includeActive=include_active, + includeInactive=include_inactive, + ) + results = [] + + for user in users: + results.append(user.raw) + + return results diff --git a/actions/search_users.yaml b/actions/search_users.yaml new file mode 100644 index 0000000..19e522f --- /dev/null +++ b/actions/search_users.yaml @@ -0,0 +1,31 @@ +--- +name: search_users +runner_type: python-script +description: Search JIRA users with a query +enabled: true +entry_point: search_users.py +parameters: + query: + type: string + description: Query string. Can be something like an email. + required: true + start_at: + type: integer + description: Offset for pagination + required: false + default: 0 + max_results: + type: integer + description: Maximum number of returned results + default: 50 + required: false + include_active: + type: boolean + description: True to include active users. + required: false + default: true + include_inactive: + type: boolean + description: True to include inactive users. + required: false + default: false diff --git a/pack.yaml b/pack.yaml index 110255d..b27e9db 100644 --- a/pack.yaml +++ b/pack.yaml @@ -6,7 +6,7 @@ keywords: - issues - ticket management - project management -version: 3.2.3 +version: 3.3.0 python_versions: - "3" author: StackStorm, Inc.