Assigned
Status Update
Comments
wb...@google.com <wb...@google.com>
wb...@google.com <wb...@google.com> #2
I have forwarded this request to the engineering team. We will update this issue with any progress updates and a resolution.
Best Regards,
Josh Moyer
Google Cloud Platform Support
Best Regards,
Josh Moyer
Google Cloud Platform Support
Description
Our application creates projects on behalf of users via deployment manager. These projects are used for data management and compute, and potentially each project could have sensitive data that is related to specific datasets, so it is important for our users to manage this data via separate projects. Unfortunately, there is no way to track project and billing account quota messaging in order to report to our users before they have hit their quota, which can lead to surprising errors in ways that seem obscure to our users. We would like to be able to monitor these quotas via an API, and potentially request a quota increase via API as well, as opposed to routing our users to a google form outside of the site they are visiting. There are two separate quotas our users can hit:
{
"name": "operations/cp.4863150709141193892",
"metadata": {
"@type": "
"createTime": "2021-07-07T16:02:49.236Z",
"ready": true
},
"done": true,
"error": {
"code": 8,
"message": "The project cannot be created because you have exceeded your allotted project quota.",
"details": [
{
"@type": "
"violations": [
{
"description": "The project cannot be created because you have exceeded your allotted project quota."
}
]
}
]
}
}
and
{
"error": {
"code": 400,
"message": "Precondition check failed.",
"status": "FAILED_PRECONDITION",
"details": [
{
"@type": "
"violations": [
{
"subject": "billingAccounts/019FCD-F46C5F-9BCFD9",
"description": "Cloud billing quota exceeded:
}
]
}
]
}
}
For the bottom quota, I have been informed by support that there is also no way to verify the status of the billing account quota, which means we cannot give our users a place to check their account quota if it fails, and cannot provide much pre-emptive guidance to our users.
What you expected to happen:
I would have expected to see a quota limit displayed on the billing account project list page, similar to the project creation quota warning message. I would also expect to see more numeric information on the error messages above. (How many projects is the account attached to? What is the limit?) And then, finally, I would expect to have an API endpoint to hit to query these quotas, and see where a user is at (X/Y projects), probably with the JSON response of something like:
{
projectsInUse: 4,
allowedProjectsInQuota: 5
}
Steps to reproduce:
To reproduce, try to link a fresh billing account created by a fresh gmail account, and attempt to link 6 projects to it (for the second error). Or attempt to create 26 projects in the gmail account (for the first error)
Other information (workarounds you have tried, documentation consulted, etc):
I have looked at this document:
as well as got some of this information from this support case (which is probably private):
As far as I am aware, there is no workaround for querying the quota ahead of time. We are also doing a migration which will require 400 or so billing accounts to have their quota increased, so as a workaround to filling out the form 400 times, we are going to probably try submitting a CSV to support, although we have not tried that yet.