Skip to content

Commit 493e24f

Browse files
fix issue with publishing
1 parent dca94a8 commit 493e24f

File tree

4 files changed

+28
-18
lines changed

4 files changed

+28
-18
lines changed

services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/services/credit_transactions.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,10 @@ async def create_credit_transaction(
6161

6262
wallet_total_credits = await sum_credit_transactions_and_publish_to_rabbitmq(
6363
db_engine,
64-
rabbitmq_client,
65-
credit_transaction_create_body.product_name,
66-
credit_transaction_create_body.wallet_id,
64+
connection=conn,
65+
rabbitmq_client=rabbitmq_client,
66+
product_name=credit_transaction_create_body.product_name,
67+
wallet_id=credit_transaction_create_body.wallet_id,
6768
)
6869
if wallet_total_credits.available_osparc_credits >= 0:
6970
# Change status from `IN_DEBT` to `BILLED`
@@ -196,19 +197,19 @@ async def pay_project_debt(
196197
fire_and_forget_task(
197198
sum_credit_transactions_and_publish_to_rabbitmq(
198199
db_engine,
199-
rabbitmq_client,
200-
new_wallet_transaction_create.product_name,
201-
new_wallet_transaction_create.wallet_id, # <-- New wallet
200+
rabbitmq_client=rabbitmq_client,
201+
product_name=new_wallet_transaction_create.product_name,
202+
wallet_id=new_wallet_transaction_create.wallet_id, # <-- New wallet
202203
),
203204
task_suffix_name=f"sum_and_publish_credits_wallet_id{new_wallet_transaction_create.wallet_id}",
204205
fire_and_forget_tasks_collection=rut_fire_and_forget_tasks,
205206
)
206207
fire_and_forget_task(
207208
sum_credit_transactions_and_publish_to_rabbitmq(
208209
db_engine,
209-
rabbitmq_client,
210-
current_wallet_transaction_create.product_name,
211-
current_wallet_transaction_create.wallet_id, # <-- Current wallet
210+
rabbitmq_client=rabbitmq_client,
211+
product_name=current_wallet_transaction_create.product_name,
212+
wallet_id=current_wallet_transaction_create.wallet_id, # <-- Current wallet
212213
),
213214
task_suffix_name=f"sum_and_publish_credits_wallet_id{current_wallet_transaction_create.wallet_id}",
214215
fire_and_forget_tasks_collection=rut_fire_and_forget_tasks,

services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/services/licensed_items_purchases.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,10 @@ async def create_licensed_item_purchase(
157157

158158
# Publish wallet total credits to RabbitMQ
159159
await sum_credit_transactions_and_publish_to_rabbitmq(
160-
db_engine, rabbitmq_client, data.product_name, data.wallet_id
160+
db_engine,
161+
rabbitmq_client=rabbitmq_client,
162+
product_name=data.product_name,
163+
wallet_id=data.wallet_id,
161164
)
162165

163166
return LicensedItemPurchaseGet(

services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/services/process_message_running_service.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,10 @@ async def _process_start_event(
158158

159159
# Publish wallet total credits to RabbitMQ
160160
await sum_credit_transactions_and_publish_to_rabbitmq(
161-
db_engine, rabbitmq_client, msg.product_name, msg.wallet_id
161+
db_engine,
162+
rabbitmq_client=rabbitmq_client,
163+
product_name=msg.product_name,
164+
wallet_id=msg.wallet_id,
162165
)
163166

164167

@@ -216,9 +219,9 @@ async def _process_heartbeat_event(
216219
# Publish wallet total credits to RabbitMQ
217220
wallet_total_credits = await sum_credit_transactions_and_publish_to_rabbitmq(
218221
db_engine,
219-
rabbitmq_client,
220-
running_service.product_name,
221-
running_service.wallet_id,
222+
rabbitmq_client=rabbitmq_client,
223+
product_name=running_service.product_name,
224+
wallet_id=running_service.wallet_id,
222225
)
223226
if wallet_total_credits.available_osparc_credits < CreditsLimit.OUT_OF_CREDITS:
224227
await publish_to_rabbitmq_wallet_credits_limit_reached(
@@ -319,9 +322,9 @@ async def _process_stop_event(
319322
# Publish wallet total credits to RabbitMQ
320323
await sum_credit_transactions_and_publish_to_rabbitmq(
321324
db_engine,
322-
rabbitmq_client,
323-
running_service.product_name,
324-
running_service.wallet_id,
325+
rabbitmq_client=rabbitmq_client,
326+
product_name=running_service.product_name,
327+
wallet_id=running_service.wallet_id,
325328
)
326329

327330

services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/services/utils.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
from models_library.wallets import WalletID
2121
from pydantic import PositiveInt
2222
from servicelib.rabbitmq import RabbitMQClient
23-
from sqlalchemy.ext.asyncio import AsyncEngine
23+
from sqlalchemy.ext.asyncio import AsyncConnection, AsyncEngine
2424

2525
from .modules.db import credit_transactions_db, service_runs_db
2626

@@ -33,12 +33,15 @@ def make_negative(n):
3333

3434
async def sum_credit_transactions_and_publish_to_rabbitmq(
3535
db_engine: AsyncEngine,
36+
connection: AsyncConnection | None = None,
37+
*,
3638
rabbitmq_client: RabbitMQClient,
3739
product_name: ProductName,
3840
wallet_id: WalletID,
3941
) -> WalletTotalCredits:
4042
wallet_total_credits = await credit_transactions_db.sum_wallet_credits(
4143
db_engine,
44+
connection=connection,
4245
product_name=product_name,
4346
wallet_id=wallet_id,
4447
)

0 commit comments

Comments
 (0)