internal/infra/pg/artifactpolicy.go
internal/infra/pg · 52 lines · 4 declarations · source
Declarations
type ArtifactLimits
type ArtifactLimits struct {
MaxObjectBytes int64 `json:"max_object_bytes"`
MaxBytes int64 `json:"max_bytes"`
MaxObjects int64 `json:"max_objects"`
MaxAgeHours int `json:"max_age_hours"`
UsedBytes int64 `json:"used_bytes"`
UsedObjects int64 `json:"used_objects"`
}
method ArtifactLimits.Validate
func (v ArtifactLimits) Validate() error
method ArtifactStore.Limits
func (s *ArtifactStore) Limits(ctx context.Context, scope string) (ArtifactLimits, error)
method ArtifactStore.ConfigureLimits
func (s *ArtifactStore) ConfigureLimits(ctx context.Context, scope, principal string, v ArtifactLimits) error
ConfigureLimits requires an operator connection. Lowering limits preserves existing objects; shrinking/deleting remains possible while above a new allowance. TTL changes affect new roots.