Versions in this module Expand all Collapse all v0 v0.1.0 Sep 7, 2026 Changes in this version + const ChainTransitive + const ChainValues + const HashInputBlobVersion + func EntryExpiry(createdAt time.Time, ttl time.Duration, ttlNever bool) *time.Time + func EquivalentPriorHash(newHash string, newOutput map[string]string, priors []PriorEntry) string + func StartPruner(ctx context.Context, store *Store, interval time.Duration) + type Config struct + DigestTTL time.Duration + Enabled bool + MaxEntries int + PinDigests bool + PruneInterval time.Duration + TTL time.Duration + func ConfigFromEnv() Config + type Entry struct + BranchSelections []string + CreatedAt time.Time + ExpiresAt *time.Time + Hash string + HashInputBlob []byte + JobID uuid.UUID + Output map[string]string + Partitions []pkgtask.Partition + ResolvedImageDigest string + Result string + RunID uuid.UUID + TaskName string + TaskRunID uuid.UUID + type HashInput struct + CacheVersion int + Chain string + Command []string + Env map[string]string + Image string + JobAlias string + Kubernetes *container.KubernetesSpec + Mounts []container.Mount + Partition string + PartitionAttributes map[string]string + PartitionFingerprint string + PredecessorHashes []string + PredecessorOutputs map[string]map[string]string + ResolvedImageDigest string + ResolvedVolumeMounts []container.VolumeMount + RunParams map[string]string + TaskName string + WorkDir string + func (h HashInput) CanonicalJSON(precomputed string) ([]byte, error) + func (h HashInput) Compute() string + type HashInputBlob struct + BlobVersion int + CacheVersion int + Chain string + Command []string + Env map[string]envBlobValue + Hash string + Image string + JobAlias string + Kubernetes *container.KubernetesSpec + Mounts []container.Mount + Oversized *oversizedBlob + Partition string + PartitionAttributes map[string]string + PartitionFingerprint string + PredecessorHashes []string + PredecessorOutputs map[string]map[string]string + ResolvedImageDigest string + ResolvedVolumeMounts []container.VolumeMount + RunParams map[string]string + TaskName string + WorkDir string + type PriorEntry struct + CreatedAt int64 + Hash string + Output map[string]string + type Store struct + func NewStore(db *gorm.DB) *Store + func (s *Store) Get(hash string) (*Entry, bool, error) + func (s *Store) Invalidate(jobID uuid.UUID, taskName string) error + func (s *Store) InvalidateJob(jobID uuid.UUID) error + func (s *Store) ListByJob(jobID uuid.UUID) ([]Entry, error) + func (s *Store) PriorEntriesByTask(jobID uuid.UUID, taskName, excludeHash string) ([]PriorEntry, error) + func (s *Store) Prune() (int, error) + func (s *Store) Put(entry *Entry) error