refactor: improve credential handling in subscription rebuild requests
- Updated `SubscriptionRebuildRequest` to allow `credentials` to be optional, enhancing flexibility in request payloads. - Modified `TriggerSubscriptionRebuildApi` to ensure credentials default to an empty dictionary if not provided, improving robustness in subscription rebuild logic. - Adjusted `TriggerProviderService` to use existing subscription credentials when rebuilding, streamlining the credential management process.
This commit is contained in:
@@ -45,7 +45,7 @@ class TriggerSubscriptionUpdateRequest(BaseModel):
|
||||
class SubscriptionRebuildRequest(BaseModel):
|
||||
"""Request payload for rebuilding an existing subscription."""
|
||||
|
||||
credentials: Mapping[str, Any] = Field(default_factory=dict, description="The credentials for the subscription")
|
||||
credentials: Mapping[str, Any] | None = Field(default=None, description="The credentials for the subscription")
|
||||
parameters: Mapping[str, Any] = Field(default_factory=dict, description="The parameters for the subscription")
|
||||
|
||||
|
||||
@@ -423,7 +423,7 @@ class TriggerSubscriptionRebuildApi(Resource):
|
||||
tenant_id=user.current_tenant_id,
|
||||
provider_id=TriggerProviderID(provider),
|
||||
subscription_id=subscription_id,
|
||||
credentials=rebuild_request.credentials,
|
||||
credentials=rebuild_request.credentials or {},
|
||||
parameters=rebuild_request.parameters,
|
||||
)
|
||||
|
||||
|
||||
@@ -857,7 +857,7 @@ class TriggerProviderService:
|
||||
provider_id=provider_id,
|
||||
endpoint=generate_plugin_trigger_endpoint_url(subscription.endpoint_id),
|
||||
parameters=parameters,
|
||||
credentials=credentials,
|
||||
credentials=credentials or subscription.credentials,
|
||||
credential_type=credential_type,
|
||||
)
|
||||
TriggerProviderService.update_trigger_subscription(
|
||||
|
||||
Reference in New Issue
Block a user