Skip to main content

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"`
}

source

method ArtifactLimits.Validate

func (v ArtifactLimits) Validate() error

source

method ArtifactStore.Limits

func (s *ArtifactStore) Limits(ctx context.Context, scope string) (ArtifactLimits, error)

source

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.

source