-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
9 changed files
with
227 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
from pydantic import Field | ||
|
||
from ya_tracker_client.domain.entities.base import AbstractEntity | ||
from ya_tracker_client.domain.entities.issue_status import IssueStatus, IssueStatusKey | ||
|
||
|
||
class Action(AbstractEntity): | ||
type: str = Field(examples=["Transition", "Update", "Event.comment-create", "Webhook", "CalculateFormula"]) | ||
id: int | str | None = None | ||
status: IssueStatus | IssueStatusKey | None = None |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
from ya_tracker_client.domain.entities.base import AbstractEntity | ||
|
||
|
||
class Calendar(AbstractEntity): | ||
id: int |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,3 +6,7 @@ class IssueStatus(AbstractEntity): | |
id: str | ||
key: str | ||
display: str | ||
|
||
|
||
class IssueStatusKey(AbstractEntity): | ||
key: str |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
from datetime import datetime | ||
|
||
from pydantic import model_validator | ||
|
||
from ya_tracker_client.domain.entities.action import Action | ||
from ya_tracker_client.domain.entities.base import AbstractEntity | ||
from ya_tracker_client.domain.entities.calendar import Calendar | ||
from ya_tracker_client.domain.entities.queue import QueueShort | ||
|
||
|
||
class Autoaction(AbstractEntity): | ||
id: int | str | ||
url: str | ||
queue: str | QueueShort | ||
name: str | ||
version: int | ||
active: bool | ||
created: datetime | ||
updated: datetime | ||
filter: list[dict] | dict | None = None | ||
query: str | None = None | ||
actions: list[Action] | ||
enable_notifications: bool | ||
total_issues_processed: int | ||
interval_millis: int | ||
calendar: dict[str, int] | None = None | ||
|
||
|
||
class AutoactionCreate(AbstractEntity): | ||
name: str | ||
filter: list[dict] | dict | None = None | ||
query: str | None = None | ||
actions: list[Action] | ||
active: bool | None = None | ||
enable_notifications: bool | None = None | ||
interval_millis: int = 3_600_000 | ||
calendar: Calendar | None = None | ||
|
||
@model_validator(mode="after") | ||
def filter_or_query_is_exists(self) -> "AutoactionCreate": | ||
if self.filter is None and self.query is None: | ||
raise ValueError("Filter or query must be not None") | ||
return self |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
from pydantic import Field | ||
|
||
from ya_tracker_client.domain.entities.action import Action | ||
from ya_tracker_client.domain.entities.base import AbstractEntity | ||
from ya_tracker_client.domain.entities.queue import QueueShort | ||
|
||
|
||
class TriggerConditionType(AbstractEntity): | ||
type: str = Field( | ||
examples=[ | ||
"CommentNoneMatchCondition", | ||
"CommentStringNotMatchCondition", | ||
"CommentFullyMatchCondition", | ||
"CommentAnyMatchCondition", | ||
"CommentStringMatchCondition", | ||
"CommentAuthorNot", | ||
"CommentAuthor", | ||
"CommentMessageExternal", | ||
"CommentMessageInternal", | ||
], | ||
) # TODO: add validators for strings with examples (or replace it with Enum) | ||
|
||
|
||
class TriggerCondition(AbstractEntity): | ||
type: str = Field(examples=["or", "and"]) | ||
conditions: list[TriggerConditionType] | ||
|
||
|
||
class Trigger(AbstractEntity): | ||
id: str | int | ||
url: str | ||
queue: QueueShort | str | ||
name: str | ||
order: str | ||
actions: list[Action] | ||
conditions: list[TriggerCondition | TriggerConditionType] = Field(default_factory=list) | ||
version: int | ||
active: bool | ||
|
||
|
||
class TriggerCreate(AbstractEntity): | ||
name: str | ||
actions: list[Action] | ||
conditions: list[TriggerCondition] | None = Field(default_factory=list) | ||
active: bool | None = None |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters