mirror of https://github.com/qwc/backive.git
little restructuring
This commit is contained in:
parent
8af0f45ab0
commit
b5f3eec03a
|
@ -15,4 +15,6 @@
|
|||
# vendor/
|
||||
example
|
||||
|
||||
*.vim
|
||||
|
||||
dist/
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
package core
|
|
@ -1 +0,0 @@
|
|||
package core
|
25
db/db.go
25
db/db.go
|
@ -1,10 +1,29 @@
|
|||
package db
|
||||
|
||||
import "encoding/json"
|
||||
import (
|
||||
"encoding/json"
|
||||
"os"
|
||||
)
|
||||
|
||||
var database map[string]string
|
||||
var Database map[string]string
|
||||
var path string = "/var/lib/backive/data.json"
|
||||
|
||||
func Save() {
|
||||
jsonstr := json.Marshal(database)
|
||||
jsonstr, merr := json.Marshal(Database)
|
||||
if merr != nil {
|
||||
panic(merr)
|
||||
}
|
||||
|
||||
err := os.WriteFile(path, []byte(jsonstr), 0644)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
func Load() {
|
||||
data, err := os.ReadFile(path)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
json.Unmarshal(data, Database)
|
||||
}
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
package events
|
|
@ -0,0 +1,40 @@
|
|||
package scheduler
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"time"
|
||||
|
||||
"github.com/qwc/backive/config"
|
||||
"github.com/qwc/backive/db"
|
||||
)
|
||||
|
||||
type Runs map[string][]time.Time
|
||||
|
||||
var runs Runs
|
||||
|
||||
func Load() {
|
||||
runerr := json.Unmarshal([]byte(db.Database["runs"]), &runs)
|
||||
if runerr != nil {
|
||||
panic(runerr)
|
||||
}
|
||||
}
|
||||
|
||||
func Save() {
|
||||
str, err := json.Marshal(runs)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
db.Database["runs"] = string(str)
|
||||
}
|
||||
|
||||
func ShouldRun(backup string) bool {
|
||||
freq := config.Get().Backups[backup].Frequency
|
||||
|
||||
// calculate time difference from last run, return true if no run has taken place
|
||||
if freq > 0 {
|
||||
return true
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
Loading…
Reference in New Issue