acorn-io / runtime

A simple application deployment framework built on Kubernetes
https://docs.acorn.io/
Apache License 2.0
1.14k stars 102 forks source link

enhancement: add ComputeClasses and VolumeClasses field to BaseResources #2454

Closed tylerslaton closed 5 months ago

tylerslaton commented 5 months ago

This commit enhances the BaseResources struct by adding ComputeClasses and VolumeClasses fields. These new fields allow for a more detailed specification of compute and storage resources, categorized by class instead of just by resource type.

This enhancement is crucial for accurately tracking the usage of memory, CPU, and storage for each specific compute or volume class. Consequently, the QuotaRequest logic has been updated to account for these new fields.

These new fields are maps and they introduce a unique approach to handle unlimited resources. They include special keys, AllComputeClasses and AllVolumeClasses. If a value is assigned to these keys in ComputeClassResources or VolumeClassResources, all compute or volume classes will be evaluated against the value.

Checklist