Add database backend (SQLite) (#26)

Add database with background information for each pkgbase, for possible future use.
A static status page is generated from the db.

Currently includes:

* sub-packages
* build-time
* build-duration
* status (failed, latest, skipped, queued, building, build)
* version (both from PKGBUILD and repo)
* last checked

Database is currently only used for informational purposes. Goal is to refactor many (expensive) methods to use the db instead of searching/parsing files.

Reviewed-on: https://git.harting.dev/anonfunc/ALHP.GO/pulls/26
Co-authored-by: Giovanni Harting <539@idlegandalf.com>
Co-committed-by: Giovanni Harting <539@idlegandalf.com>
This commit is contained in:
2021-07-13 18:07:29 +02:00
parent 9c8366372f
commit b0cfe7b205
27 changed files with 6949 additions and 47 deletions

2
go.mod
View File

@@ -3,9 +3,11 @@ module ALHP.go
go 1.16
require (
entgo.io/ent v0.8.0
github.com/Jguer/go-alpm/v2 v2.0.5
github.com/Morganamilo/go-srcinfo v1.0.0
github.com/coreos/go-systemd v0.0.0-20191104093116-d3cd4ed1dbcf // indirect
github.com/mattn/go-sqlite3 v1.14.6
github.com/sirupsen/logrus v1.8.1
github.com/wercker/journalhook v0.0.0-20180428041537-5d0a5ae867b3
github.com/yargevad/filepathx v1.0.0