Set all versions and print in version flag

This commit is contained in:
Jan Eitzinger 2023-04-12 10:43:46 +02:00
parent 9ea0d6c8d1
commit 10f4e09562
6 changed files with 13 additions and 11 deletions

View File

@ -2,7 +2,7 @@ TARGET = ./cc-backend
VAR = ./var VAR = ./var
DB = ./var/job.db DB = ./var/job.db
FRONTEND = ./web/frontend FRONTEND = ./web/frontend
VERSION = 0.1 VERSION = 1
GIT_HASH := $(shell git rev-parse --short HEAD || echo 'development') GIT_HASH := $(shell git rev-parse --short HEAD || echo 'development')
CURRENT_TIME = $(shell date +"%Y-%m-%d:T%H:%M:%S") CURRENT_TIME = $(shell date +"%Y-%m-%d:T%H:%M:%S")
LD_FLAGS = '-s -X main.buildTime=${CURRENT_TIME} -X main.version=${VERSION} -X main.hash=${GIT_HASH}' LD_FLAGS = '-s -X main.buildTime=${CURRENT_TIME} -X main.version=${VERSION} -X main.hash=${GIT_HASH}'

View File

@ -84,6 +84,8 @@ func main() {
fmt.Printf("Version:\t%s\n", version) fmt.Printf("Version:\t%s\n", version)
fmt.Printf("Git hash:\t%s\n", hash) fmt.Printf("Git hash:\t%s\n", hash)
fmt.Printf("Build time:\t%s\n", buildTime) fmt.Printf("Build time:\t%s\n", buildTime)
fmt.Printf("SQL db version:\t%d\n", repository.Version)
fmt.Printf("Job archive version:\t%d\n", archive.Version)
os.Exit(0) os.Exit(0)
} }

View File

@ -30,7 +30,7 @@ import (
) )
// @title ClusterCockpit REST API // @title ClusterCockpit REST API
// @version 0.2.0 // @version 1
// @description API for batch job control. // @description API for batch job control.
// @tag.name Job API // @tag.name Job API

View File

@ -17,7 +17,7 @@ import (
"github.com/golang-migrate/migrate/v4/source/iofs" "github.com/golang-migrate/migrate/v4/source/iofs"
) )
const supportedVersion uint = 3 const Version uint = 3
//go:embed migrations/* //go:embed migrations/*
var migrationFiles embed.FS var migrationFiles embed.FS
@ -65,13 +65,13 @@ func checkDBVersion(backend string, db *sql.DB) {
} }
} }
if v < supportedVersion { if v < Version {
log.Warnf("Unsupported database version %d, need %d.\nPlease backup your database file and run cc-backend --migrate-db", v, supportedVersion) log.Warnf("Unsupported database version %d, need %d.\nPlease backup your database file and run cc-backend --migrate-db", v, Version)
os.Exit(0) os.Exit(0)
} }
if v > supportedVersion { if v > Version {
log.Warnf("Unsupported database version %d, need %d.\nPlease refer to documentation how to downgrade db with external migrate tool!", v, supportedVersion) log.Warnf("Unsupported database version %d, need %d.\nPlease refer to documentation how to downgrade db with external migrate tool!", v, Version)
os.Exit(0) os.Exit(0)
} }
} }

View File

@ -13,10 +13,10 @@ import (
"github.com/ClusterCockpit/cc-backend/pkg/schema" "github.com/ClusterCockpit/cc-backend/pkg/schema"
) )
const Version = 1 const Version uint64 = 1
type ArchiveBackend interface { type ArchiveBackend interface {
Init(rawConfig json.RawMessage) (int, error) Init(rawConfig json.RawMessage) (uint64, error)
LoadJobMeta(job *schema.Job) (*schema.JobMeta, error) LoadJobMeta(job *schema.Job) (*schema.JobMeta, error)

View File

@ -101,7 +101,7 @@ func loadJobData(filename string, isCompressed bool) (schema.JobData, error) {
} }
} }
func (fsa *FsArchive) Init(rawConfig json.RawMessage) (int, error) { func (fsa *FsArchive) Init(rawConfig json.RawMessage) (uint64, error) {
var config FsArchiveConfig var config FsArchiveConfig
if err := json.Unmarshal(rawConfig, &config); err != nil { if err := json.Unmarshal(rawConfig, &config); err != nil {
@ -121,7 +121,7 @@ func (fsa *FsArchive) Init(rawConfig json.RawMessage) (int, error) {
return 0, err return 0, err
} }
version, err := strconv.Atoi(strings.TrimSuffix(string(b), "\n")) version, err := strconv.ParseUint(strings.TrimSuffix(string(b), "\n"), 10, 64)
if err != nil { if err != nil {
log.Errorf("fsBackend Init()- %v", err) log.Errorf("fsBackend Init()- %v", err)
return 0, err return 0, err