feat: add auto update

This commit is contained in:
2026-05-19 15:53:30 +02:00
parent bd3121d688
commit ba4de62a34
22 changed files with 3323 additions and 110 deletions

View File

@ -0,0 +1,39 @@
package scheduler
import (
"time"
"github.com/containarr/server/internal/store"
)
// StoreAdapter wraps *store.Store so it satisfies StoreInterface.
type StoreAdapter struct {
s *store.Store
}
// NewStoreAdapter creates a StoreAdapter wrapping the given *store.Store.
func NewStoreAdapter(s *store.Store) *StoreAdapter {
return &StoreAdapter{s: s}
}
// ListDueAutoUpdatePolicies implements StoreInterface by converting
// *store.AutoUpdatePolicy to DuePolicy.
func (a *StoreAdapter) ListDueAutoUpdatePolicies(now time.Time) ([]DuePolicy, error) {
policies, err := a.s.ListDueAutoUpdatePolicies(now)
if err != nil {
return nil, err
}
out := make([]DuePolicy, 0, len(policies))
for _, p := range policies {
out = append(out, DuePolicy{
AgentID: p.AgentID,
ContainerID: p.ContainerID,
})
}
return out, nil
}
// UpdateAutoUpdateChecked implements StoreInterface.
func (a *StoreAdapter) UpdateAutoUpdateChecked(agentID, containerID string, at time.Time) error {
return a.s.UpdateAutoUpdateChecked(agentID, containerID, at)
}