Your run’s team comes from its project
Not from you. A run’s team is taken from its project and stamped on the job at submission. Both halves matter. A person can belong to several teams, so charging a run to all of them would count it several times. And a project moving between departments must not rewrite last quarter’s usage, which is why the team is frozen on the row rather than joined at read time. So changing which team a run counts against means moving the project:Two quotas, and they read differently
Your own quota and your team’s quota are both checked. Two of the team semantics invert against the per-user ones, and it is worth knowing which:
Over a team quota, a job waits in
QUEUED with a teamQuota reason, exactly like a personal
quota. The message names the team.
Borrowing, and what can be taken back
With preemption enabled and a licence, a team quota stops being a ceiling and becomes a guarantee. Your team can run above it when the cluster is idle, and the overflow is reclaimable. Five conditions all have to hold before a running job of yours is reclaimed:- The taker’s team is under its own guarantee. Otherwise this is one team outbidding another.
- Your team is over its guarantee. Otherwise reclaim would break the only promise a quota makes.
- It is a different team.
- Your job has been running past a minimum runtime. Otherwise a busy queue reclaims, admits and reclaims all day, and the cluster spends its time writing checkpoints.
- Your job holds the card series that is short.
QUEUED. See
job states.
Get one run past a budget
When your team has spent its monthly budget, a queued job says so. Ask for an exception for that one run:Ask for more quota
subject_type is user or team. Fields you leave out are left alone.
There is one level of approval and no chains. Counter-signing belongs to whatever approval system
your organisation already runs; what this owes it is a record and a webhook.
Track a request
status is pending, approved, rejected or expired. Every request carries an expiry, so a
request nobody answered does not sit open forever.
Check it worked
QUEUED
on the next scheduler pass without you resubmitting.
The decision moves the request to its terminal state before anything is applied, so two
approvers clicking at once produce one effect.