Skip to content

Commit 17d6371

Browse files
committed
Correctly cast nerc-rates
Closes #77
1 parent d31b698 commit 17d6371

File tree

2 files changed

+13
-19
lines changed

2 files changed

+13
-19
lines changed

bin/run_invoicing.sh

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,8 @@
11
#!/usr/bin/env sh
22

33
python -m openstack_billing_db.main \
4-
--include-stopped-runtime True \
54
--upload-to-s3 True \
65
--download-coldfront-data True \
76
--download-sql-dump-from-s3 True \
87
--convert-sql-dump-file-to-sqlite True \
9-
--rate-cpu-su 0.013 \
10-
--rate-gpu-a100sxm4-su 2.078 \
11-
--rate-gpu-a100-su 1.803 \
12-
--rate-gpu-v100-su 1.214 \
13-
--rate-gpu-k80-su 0.463 \
14-
--rate-gpu-a2-su 0.463
8+
--use-nerc-rates

src/openstack_billing_db/main.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -200,20 +200,18 @@ def main():
200200
logger.info(f"Using ColdFront data file at {coldfront_data_file}.")
201201

202202
if args.use_nerc_rates:
203+
204+
def get_decimal_rate(rate_name):
205+
return Decimal(nerc_repo_rates.get_value_at(rate_name, args.invoice_month))
206+
203207
nerc_repo_rates = load_from_url()
204208
rates = billing.Rates(
205-
cpu=nerc_repo_rates.get_value_at("CPU SU Rate", args.invoice_month),
206-
gpu_a100sxm4=nerc_repo_rates.get_value_at(
207-
"GPUA100SXM4 SU Rate", args.invoice_month
208-
),
209-
gpu_a100=nerc_repo_rates.get_value_at(
210-
"GPUA100 SU Rate", args.invoice_month
211-
),
212-
gpu_v100=nerc_repo_rates.get_value_at(
213-
"GPUV100 SU Rate", args.invoice_month
214-
),
215-
gpu_k80=nerc_repo_rates.get_value_at("GPUK80 SU Rate", args.invoice_month),
216-
gpu_a2=nerc_repo_rates.get_value_at("GPUA2 SU Rate", args.invoice_month),
209+
cpu=get_decimal_rate("CPU SU Rate"),
210+
gpu_a100sxm4=get_decimal_rate("GPUA100SXM4 SU Rate"),
211+
gpu_a100=get_decimal_rate("GPUA100 SU Rate"),
212+
gpu_v100=get_decimal_rate("GPUV100 SU Rate"),
213+
gpu_k80=get_decimal_rate("GPUK80 SU Rate"),
214+
gpu_a2=get_decimal_rate("GPUA2 SU Rate"),
217215
include_stopped_runtime=(
218216
nerc_repo_rates.get_value_at(
219217
"Charge for Stopped Instances", args.invoice_month
@@ -232,6 +230,8 @@ def main():
232230
include_stopped_runtime=args.include_stopped_runtime,
233231
)
234232

233+
logger.info(f"Using rates: {rates}.")
234+
235235
billing.generate_billing(
236236
args.start,
237237
args.end,

0 commit comments

Comments
 (0)