Update to new goprogram version

This commit is contained in:
Tom Wiesing 2023-11-01 22:01:24 +01:00
parent 7bd9570bc0
commit 873fdcd5c2
No known key found for this signature in database
106 changed files with 478 additions and 825 deletions

View file

@ -5,6 +5,7 @@ import (
"fmt"
"io"
"path/filepath"
"strings"
"time"
"github.com/FAU-CDI/wisski-distillery/internal/dis/component"
@ -75,7 +76,7 @@ func (backup *Backup) run(ctx context.Context, progress io.Writer, exporter *Exp
defer done()
// create a new status display
backups := exporter.Dependencies.Backupable
backups := exporter.dependencies.Backupable
backup.ComponentErrors = make(map[string]error, len(backups))
// Component backup tasks
@ -124,7 +125,7 @@ func (backup *Backup) run(ctx context.Context, progress io.Writer, exporter *Exp
}
// list all instances
wissKIs, err := exporter.Dependencies.Instances.All(ctx)
wissKIs, err := exporter.dependencies.Instances.All(ctx)
if err != nil {
backup.InstanceListErr = err
return nil
@ -159,8 +160,8 @@ func (backup *Backup) run(ctx context.Context, progress io.Writer, exporter *Exp
}.Use(st, wissKIs)
// sort the instances
slices.SortFunc(backup.InstanceSnapshots, func(a, b Snapshot) bool {
return a.Instance.Slug < b.Instance.Slug
slices.SortFunc(backup.InstanceSnapshots, func(a, b Snapshot) int {
return strings.Compare(a.Instance.Slug, b.Instance.Slug)
})
return nil

View file

@ -21,7 +21,7 @@ import (
// Exporter manages snapshots and backups
type Exporter struct {
component.Base
Dependencies struct {
dependencies struct {
SQL *sql.SQL
Instances *instances.Instances
ExporterLogger *logger.Logger

View file

@ -11,7 +11,7 @@ import (
type Pathbuilders struct {
component.Base
Dependencies struct {
dependencies struct {
Instances *instances.Instances
}
}
@ -26,7 +26,7 @@ func (Pathbuilders) SnapshotName() string { return "pathbuilders" }
func (pbs *Pathbuilders) Snapshot(wisski models.Instance, scontext *component.StagingContext) error {
return scontext.AddDirectory(".", func(ctx context.Context) error {
builders, err := pbs.Dependencies.Instances.Instance(ctx, wisski).Pathbuilder().GetAll(ctx, nil)
builders, err := pbs.dependencies.Instances.Instance(ctx, wisski).Pathbuilder().GetAll(ctx, nil)
if err != nil {
return err
}

View file

@ -56,7 +56,7 @@ type export interface {
// Parts lists all available snapshot parts
func (exporter *Exporter) Parts() []string {
return collection.MapSlice(exporter.Dependencies.Snapshotable, func(c component.Snapshotable) string { return c.SnapshotName() })
return collection.MapSlice(exporter.dependencies.Snapshotable, func(c component.Snapshotable) string { return c.SnapshotName() })
}
const (
@ -172,7 +172,7 @@ func (exporter *Exporter) MakeExport(ctx context.Context, progress io.Writer, ta
// write out the log entry
entry.Path = stagingDir
entry.Packed = false
exporter.Dependencies.ExporterLogger.Add(ctx, entry)
exporter.dependencies.ExporterLogger.Add(ctx, entry)
fmt.Fprintf(progress, "Wrote %s\n", stagingDir)
return nil
@ -200,7 +200,7 @@ func (exporter *Exporter) MakeExport(ctx context.Context, progress io.Writer, ta
logging.LogMessage(progress, "Writing Log Entry")
entry.Path = archivePath
entry.Packed = true
exporter.Dependencies.ExporterLogger.Add(ctx, entry)
exporter.dependencies.ExporterLogger.Add(ctx, entry)
// and we're done!
return nil

View file

@ -17,7 +17,7 @@ import (
// Logger is responsible for logging backups and snapshots
type Logger struct {
component.Base
Dependencies struct {
dependencies struct {
SQL *sql.SQL
}
}
@ -28,7 +28,7 @@ var (
func (*Logger) TableInfo() component.TableInfo {
return component.TableInfo{
Model: reflectx.MakeType[models.Export](),
Model: reflectx.TypeFor[models.Export](),
Name: models.ExportTable,
}
}
@ -50,7 +50,7 @@ func (log *Logger) For(ctx context.Context, slug string) (exports []models.Expor
// Log retrieves (and prunes) all entries in the snapshot log.
func (log *Logger) Log(ctx context.Context) ([]models.Export, error) {
// query the table!
table, err := log.Dependencies.SQL.QueryTable(ctx, log)
table, err := log.dependencies.SQL.QueryTable(ctx, log)
if err != nil {
return nil, err
}
@ -82,7 +82,7 @@ func (log *Logger) Log(ctx context.Context) ([]models.Export, error) {
// AddToExportLog adds the provided export to the log.
func (log *Logger) Add(ctx context.Context, export models.Export) error {
// find the table
table, err := log.Dependencies.SQL.QueryTable(ctx, log)
table, err := log.dependencies.SQL.QueryTable(ctx, log)
if err != nil {
return err
}

View file

@ -52,6 +52,6 @@ func (exporter *Exporter) PruneExports(ctx context.Context, progress io.Writer)
}
// prune the snapshot log!
_, err = exporter.Dependencies.ExporterLogger.Log(ctx)
_, err = exporter.dependencies.ExporterLogger.Log(ctx)
return err
}

View file

@ -113,8 +113,8 @@ func (exporter *Exporter) NewSnapshot(ctx context.Context, instance *wisski.Wiss
// Also sets up snapshot.partsRunning and snapshot.partsStopped.
// sends a warning about unknown parts into the logger in context.
func (snapshots *Exporter) resolveParts(ctx context.Context, parts []string, snapshot *Snapshot) {
partMap := make(map[string]component.Snapshotable, len(snapshots.Dependencies.Snapshotable))
for _, part := range snapshots.Dependencies.Snapshotable {
partMap := make(map[string]component.Snapshotable, len(snapshots.dependencies.Snapshotable))
for _, part := range snapshots.dependencies.Snapshotable {
partMap[part.SnapshotName()] = part
}