From fe02d1624fc81e630a7ac79f46945577a3b41dcf Mon Sep 17 00:00:00 2001 From: bel Date: Sat, 17 May 2025 21:24:32 -0600 Subject: [PATCH] fix now() InLocation(local), deadline per-one --- src/asses/db.go | 2 +- src/asses/deadline.go | 8 ++++++-- src/cmd/asses/main.go | 6 +++--- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/asses/db.go b/src/asses/db.go index 331539b..51ca59e 100644 --- a/src/asses/db.go +++ b/src/asses/db.go @@ -14,7 +14,7 @@ func Next(ctx context.Context) (time.Time, error) { } if deadline := Deadline(); time.Since(deadline) > time.Minute { - return time.Parse("2006-01-02", time.Now().Add(24*time.Hour).Format("2006-01-02")) + return midnightLastNight().Add(24 * time.Hour), nil } type Did struct { diff --git a/src/asses/deadline.go b/src/asses/deadline.go index 3ac94cf..e408c9f 100644 --- a/src/asses/deadline.go +++ b/src/asses/deadline.go @@ -3,9 +3,13 @@ package asses import "time" func Deadline() time.Time { - midnightLastNight, err := time.Parse("2006-01-02", time.Now().Format("2006-01-02")) + return midnightLastNight().Add(8 * time.Hour) // midnight-8AM +} + +func midnightLastNight() time.Time { + t, err := time.ParseInLocation("2006-01-02", time.Now().Format("2006-01-02"), time.Local) if err != nil { panic(err) } - return midnightLastNight.Add(8 * time.Hour) // midnight-8AM + return t } diff --git a/src/cmd/asses/main.go b/src/cmd/asses/main.go index a43f37f..e9cd1be 100644 --- a/src/cmd/asses/main.go +++ b/src/cmd/asses/main.go @@ -17,13 +17,13 @@ var rootDs = []string{ type CB func(context.Context, string) error func Main(ctx context.Context) error { - ctx, can := context.WithDeadline(ctx, asses.Deadline()) - defer can() - return cron.Cron(ctx, asses.Next, One) } func One(ctx context.Context) error { + ctx, can := context.WithDeadline(ctx, asses.Deadline()) + defer can() + return OneWith(ctx, rootDs, asses.One) }