Commit Graph

12534 Commits

Author SHA1 Message Date
Ben Thorner
715a3c137f Rename ambiguous "sms_chargeable" Jinja variable
Now that we have the term "charge*able*_units" we should clarify
this variable is the number we will actually charge for.
2022-04-27 17:06:16 +01:00
Ben Thorner
e0aa51c306 Use new "cost" field in usage APIs
The previous, manual calculation could be incorrect depending on
which SMS rates the free allowance was attributed to.

The new field also supersedes the old "letter_total" bolt-on so we
can get cost information consistently for both types.
2022-04-27 17:06:12 +01:00
Ben Thorner
82c3e8093d Remove redundant SMS test data for annual usage 2022-04-27 16:58:18 +01:00
Ben Thorner
4925264fb7 Remove duplicate test for usage page
This is covered by the main test for the page.
2022-04-27 16:57:11 +01:00
Ben Thorner
c6f5467009 Extend main test for service usage page
This adds missing assertions for email and SMS usage, as well as
letters with the help of some additional test data.

Previously we were only checking monthly usage (in other tests).
2022-04-27 16:57:06 +01:00
Ben Thorner
2aa3e78db2 Tidy up monthly usage test assertions
The "with_letters" was mostly a duplicate of the one before - no
change in test setup - bar the three assertions at the end.

Having the assertions in a separate test will help keep the one
above manageable as we add more assertions for the annual usage.
2022-04-27 16:37:17 +01:00
Ben Thorner
55ea5d90c7 Migrate away from ambiguous "billing_units"
This uses two new fields in the annual usage API instead of the
old one, which was actually a mix of two kinds of data [^1].

[^1]: fc378fed96
2022-04-27 16:32:52 +01:00
Ben Thorner
0648f80b9d Refactor "calculate_usage" function
This will make the following changes clearer.

In the next commits we'll go into more detail about "billing_units"
and how it differs for SMS vs. emails and letters.
2022-04-27 16:30:26 +01:00
Ben Thorner
afd3f5461a Merge pull request #4221 from alphagov/usage-tidyup
Show monthly usage rate correctly if the sms rate has changed during the financial year
2022-04-27 15:37:45 +01:00
Ben Thorner
e671df1d2c Merge pull request #4226 from alphagov/update-accessibility-statement-april-2022
Review accessibility statement
2022-04-27 15:37:39 +01:00
karlchillmaid
ef9332fce5 Update review and completion dates 2022-04-27 10:53:12 +01:00
Katie Smith
417e7370bb Merge pull request #4223 from alphagov/roadmap-april-2022
Update public roadmap, April 2022
2022-04-27 08:55:38 +01:00
karlchillmaid
fdc121d529 Bump date 2022-04-27 08:38:51 +01:00
karlchillmaid
ae2644b81c Update roadmap content 2022-04-26 16:20:29 +01:00
Ben Thorner
a02e1adbc5 Tweak usage dashboard test to cover rate changes 2022-04-26 14:02:54 +01:00
karlchillmaid
fa40c70267 Update dates 2022-04-26 12:21:40 +01:00
David McDonald
2706ec4c73 Take sms_rate from monthly usage data
At the moment, we put the sms rate on the usage page for each
months billing data by taking the single sms rate for the year.

The assumption that there will be a single sms rate for the year is
no longer going to be true. Therefore, instead we take the sms
rate from the monthly data itself which tells us the rate for
a months worth of sent SMS.
2022-04-26 10:38:10 +01:00
David McDonald
d18c787a02 Give better names to usage page variables
`free` becomes `sms_free_count`
`paid` becomes `sms_paid_count`

This small change is just to help with readability for this
complex area of code
2022-04-25 11:27:03 +01:00
David McDonald
c5d729b5f2 Remove unused letter_cumulative field
I have searched for this in the code and can't see it being used
anywhere so have removed it!
2022-04-25 11:11:45 +01:00
karlchillmaid
c63660d56d Merge pull request #4217 from alphagov/may-2022-price-changes
Announce May 2022 text message price increase
2022-04-22 15:20:56 +01:00
karlchillmaid
e1ff1bc4b2 Update date 2022-04-22 14:57:37 +01:00
Leo Hemsted
19d501e2aa Merge pull request #4214 from alphagov/0-free-allowance
Hide remaining free allowance if it starts at 0
2022-04-22 13:32:16 +01:00
Leo Hemsted
46658de009 Merge pull request #4219 from alphagov/enable-redis
remove redis_enabled flag
2022-04-22 13:04:43 +01:00
Leo Hemsted
3bda2aa36c remove redis_enabled flag
there's no reason we need to configure this per environment. You can
still use it as before for local development
2022-04-22 12:21:27 +01:00
Sakis
77a96b3e5f Merge pull request #4218 from alphagov/custom-prometheus-preparation
Use our own fork of gds_metrics_python and add shared auth token
2022-04-21 13:57:24 +01:00
sakisv
76b9e28d4d Use our own fork of gds_metrics_python and add shared auth token
This will allow both prometheis (the shared one and our own) to scrape
the /metrics endpoint, each with their own authentication

See alphagov/gds_metrics_python#1 for more details
2022-04-21 15:32:57 +03:00
Leo Hemsted
cc5af6fabb Merge pull request #4213 from alphagov/enable-redis
bind to notify-redis automatically
2022-04-20 11:52:51 +01:00
Ben Thorner
4a3ba97115 Remove redundant conditional for CF Redis
This is now used in all environments and we've removed support for
non-CF Redis [1].

[1]: https://github.com/alphagov/notifications-admin/pull/4213
2022-04-20 11:32:57 +01:00
Leo Hemsted
d4a58c706b bind to notify-redis automatically
this ensures that if we create a new version of the app, it'll connect
to redis properly (for example a UR prototype)
2022-04-20 11:32:28 +01:00
karlchillmaid
518ef0b272 Add announcement of text message price change 2022-04-20 11:30:22 +01:00
Chris Hill-Scott
d11beee5b6 Hide remaining free allowance if it starts at 0
If your free allowance starts a 0 (which we have done for some services
this year) it’s redundant to say ‘0 of 0 remaining’.
2022-04-20 10:53:05 +01:00
Ben Thorner
d636bd9ae0 Merge pull request #4211 from alphagov/remove-redundant-cf-code
Remove redundant CloudFoundry config code
2022-04-20 09:56:15 +01:00
Ben Thorner
be1fc9de79 Remove redundant CloudFoundry config code
These env vars can be set directly in the manifest, like we do for
Template Preview [^1].

[^1]: c08036189b/manifest.yml.j2 (L23-L26)
2022-04-13 14:45:29 +01:00
Ben Thorner
5f84ea938c Merge pull request #4210 from alphagov/paas-redis-migration-181796569
Prepare to switch to Redis on PaaS
2022-04-13 11:53:30 +01:00
Sakis
4b6b7efc6a Merge pull request #4208 from alphagov/add-internal-routes
Add internal routes
2022-04-13 08:54:15 +01:00
Ben Thorner
43a2f2f271 Fix rediss ssl eventlet sslerror bug
This is the same as [^1].

I did a test deploy to double check that Redis on PaaS doesn't work
without this.

[^1]: a2cbe20325
2022-04-12 17:46:51 +01:00
Ben Thorner
339ca93d9b Add support for migrating to Redis on PaaS
Similarly to https://github.com/alphagov/notifications-api/pull/3508
2022-04-12 17:46:45 +01:00
Leo Hemsted
1bed87b67d Merge pull request #4206 from alphagov/daily-sms-vols-reports
add new daily sms provider volumes report
2022-04-12 15:48:36 +01:00
Ben Thorner
ffd8bdac6c Merge pull request #4209 from alphagov/bump-utils-55-1-4
Bump utils to 55.1.4
2022-04-12 15:42:58 +01:00
Ben Thorner
9be800c263 Bump utils to 55.1.4
This required bumping the minimum version of boto3 with:

    pip-compile -P awscli requirements.in

I haven't looked into the awscli/boto3/botocore changes due to the
high churn on those libraries. Given they're minor changes we can
assume they are benign. s3transfer changes are also benign [^1]

[^1]: https://github.com/boto/s3transfer/blob/develop/CHANGELOG.rst
2022-04-12 14:14:42 +01:00
Sakis
4b33e1e090 Add internal routes
These will be used by prometheus to scrape the `/metrics` endpoint.
2022-04-12 13:12:36 +03:00
Leo Hemsted
971101d07c clean up test_platform_admin string concatenation
make it consistent - always use a + to concatenate strings, always have
that + at the end of the line.

(also remove a rogue "when" from some test names)
2022-04-11 14:55:58 +01:00
Ben Thorner
ce6329c191 Merge pull request #4205 from alphagov/admin-3-providers-181681739
Fix provider UI to cope with 1 or 3+ SMS providers
2022-04-11 14:53:36 +01:00
Leo Hemsted
c2472e55aa clean up info tables to not over-use safe markdown filter
the safe filter is quite dangerous - it allows HTML to be rendered as
passed through (the default action is to escape all html), so should
only be used with trusted input. Move it so we only apply it to fields
we specifically expect to have HTML in - in this case, some tables
contain links to other pages.

Also, clean up the variable names for some of these info tables, as they
didn't really make sense.
2022-04-11 14:40:32 +01:00
Leo Hemsted
ebc005005b refactor: DRY up billing api client test
at the same time add the new daily_sms_provider_volumes_report func to
the tests.
2022-04-11 14:40:32 +01:00
Leo Hemsted
b3f5bb6435 add new daily sms provider volumes report
nearly identical to the daily-volumes-report but sms only, and split up
by provider
2022-04-11 14:40:31 +01:00
Ben Thorner
355a74d202 Make SMS provider inputs easier to interpret
In response to: [^1].

[^1]: https://github.com/alphagov/notifications-admin/pull/4205#discussion_r847204574
2022-04-11 14:02:04 +01:00
Ben Thorner
9132004ea3 DRY-up creating provider fixtures 2022-04-07 14:05:10 +01:00
Ben Thorner
05c396434d Use fixtures for SMS provider test data
This avoids the need to manually copy psuedo fixture data to avoid
breaking other tests.
2022-04-07 14:05:09 +01:00
Ben Thorner
6d77ff54b1 Standardise provider psuedo fixture data
Previously it was hard to distinguish ids from identifiers from
display names (in the case of the email fixtures).

Using predictable attributes will also make it easier to convert
this dictionaries to proper fixtures.
2022-04-07 14:05:08 +01:00