AdGuardHome/internal/configmigrate/v20.go
Ainar Garipov dedbadafc4 Pull request 2321: upd-go-deps
Merge in DNS/adguard-home from upd-go-deps to master

Squashed commit of the following:

commit 2c0b63da2ec8bbf19bc7dbb03c0166f6f9a5d822
Author: Ainar Garipov <A.Garipov@AdGuard.COM>
Date:   Thu Dec 12 14:42:31 2024 +0300

    all: upd go deps, tools
2024-12-12 16:20:13 +03:00

44 lines
720 B
Go

package configmigrate
import (
"time"
"github.com/AdguardTeam/golibs/timeutil"
)
// migrateTo20 performs the following changes:
//
// # BEFORE:
// 'schema_version': 19
// 'statistics':
// 'interval': 1
// # …
// # …
//
// # AFTER:
// 'schema_version': 20
// 'statistics':
// 'interval': 24h
// # …
// # …
func migrateTo20(diskConf yobj) (err error) {
diskConf["schema_version"] = 20
stats, ok, err := fieldVal[yobj](diskConf, "statistics")
if !ok {
return err
}
const field = "interval"
ivl, ok, err := fieldVal[int](stats, field)
if err != nil {
return err
} else if !ok || ivl == 0 {
ivl = 1
}
stats[field] = timeutil.Duration(time.Duration(ivl) * timeutil.Day)
return nil
}