Skip to content

Commit

Permalink
feat: adds RESULT_BACKEND_KWARGS to settings (#96)
Browse files Browse the repository at this point in the history
* feat: adds RESULT_BACKEND_KWARGS to settings

* chore: trivial commit to boot CI
mikeshultz authored Jul 19, 2024
1 parent 34a12e0 commit cc63cac
Showing 1 changed file with 12 additions and 5 deletions.
17 changes: 12 additions & 5 deletions silverback/settings.py
Original file line number Diff line number Diff line change
@@ -28,13 +28,14 @@ class Settings(BaseSettings, ManagerAccessMixin):
APP_NAME: str = "bot"

BROKER_CLASS: str = "taskiq:InMemoryBroker"
BROKER_URI: str = "" # to be deprecated in 0.6
BROKER_URI: str = "" # To be deprecated in 0.6
BROKER_KWARGS: dict[str, Any] = dict()

ENABLE_METRICS: bool = False

RESULT_BACKEND_CLASS: str = ""
RESULT_BACKEND_URI: str = ""
RESULT_BACKEND_URI: str = "" # To be deprecated in 0.6
RESULT_BACKEND_KWARGS: str = ""

NETWORK_CHOICE: str = ""
SIGNER_ALIAS: str = ""
@@ -60,11 +61,17 @@ def get_middlewares(self) -> list[TaskiqMiddleware]:
return middlewares

def get_result_backend(self) -> AsyncResultBackend | None:
if not (backend_cls_str := self.RESULT_BACKEND_CLASS):
if not self.RESULT_BACKEND_CLASS:
return None

result_backend_cls = import_from_string(backend_cls_str)
return result_backend_cls(self.RESULT_BACKEND_URI)
result_backend_cls = import_from_string(self.RESULT_BACKEND_CLASS)

if self.RESULT_BACKEND_URI:
# TODO: Maybe add a deprecation warning here for v0.6
return result_backend_cls(self.RESULT_BACKEND_URI)

backend_kwargs = self.RESULT_BACKEND_KWARGS
return result_backend_cls(**backend_kwargs)

def get_broker(self) -> AsyncBroker:
broker_class = import_from_string(self.BROKER_CLASS)

0 comments on commit cc63cac

Please sign in to comment.