mirror of
https://github.com/ClusterCockpit/cc-backend
synced 2024-12-26 05:19:05 +01:00
Backup commit
This commit is contained in:
parent
52d424b332
commit
c6c217adb0
1
.gitignore
vendored
1
.gitignore
vendored
@ -10,4 +10,3 @@
|
|||||||
/web/frontend/public/build
|
/web/frontend/public/build
|
||||||
/web/frontend/node_modules
|
/web/frontend/node_modules
|
||||||
.vscode/settings.json
|
.vscode/settings.json
|
||||||
sanitize-archive
|
|
||||||
|
@ -49,10 +49,6 @@ type MetricConfig struct {
|
|||||||
Scope MetricScope `json:"scope"`
|
Scope MetricScope `json:"scope"`
|
||||||
Aggregation *string `json:"aggregation"`
|
Aggregation *string `json:"aggregation"`
|
||||||
Timestep int `json:"timestep"`
|
Timestep int `json:"timestep"`
|
||||||
Peak *float64 `json:"peak"`
|
|
||||||
Normal *float64 `json:"normal"`
|
|
||||||
Caution *float64 `json:"caution"`
|
|
||||||
Alert *float64 `json:"alert"`
|
|
||||||
SubClusters []*SubClusterConfig `json:"subClusters"`
|
SubClusters []*SubClusterConfig `json:"subClusters"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -20,7 +20,13 @@ else
|
|||||||
cp ./configs/env-template.txt .env
|
cp ./configs/env-template.txt .env
|
||||||
cp ./docs/config.json config.json
|
cp ./docs/config.json config.json
|
||||||
go build ./cmd/cc-backend
|
go build ./cmd/cc-backend
|
||||||
|
<<<<<<< Updated upstream
|
||||||
|
|
||||||
./cc-backend --server --dev --init-db --add-user demo:admin:AdminDev
|
./cc-backend --server --dev --init-db --add-user demo:admin:AdminDev
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
=======
|
||||||
|
|
||||||
|
./cc-backend --server --dev --init-db --add-user demo:admin:AdminDev
|
||||||
|
fi
|
||||||
|
>>>>>>> Stashed changes
|
||||||
|
@ -10,10 +10,8 @@ import (
|
|||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"path"
|
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"strconv"
|
"strconv"
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/ClusterCockpit/cc-backend/pkg/log"
|
"github.com/ClusterCockpit/cc-backend/pkg/log"
|
||||||
)
|
)
|
||||||
@ -28,7 +26,7 @@ type FsArchive struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func getPath(
|
func getPath(
|
||||||
job *Job,
|
job *JobMeta,
|
||||||
rootPath string,
|
rootPath string,
|
||||||
file string) string {
|
file string) string {
|
||||||
|
|
||||||
@ -37,7 +35,7 @@ func getPath(
|
|||||||
rootPath,
|
rootPath,
|
||||||
job.Cluster,
|
job.Cluster,
|
||||||
lvl1, lvl2,
|
lvl1, lvl2,
|
||||||
strconv.FormatInt(job.StartTime.Unix(), 10), file)
|
strconv.FormatInt(job.StartTime, 10), file)
|
||||||
}
|
}
|
||||||
|
|
||||||
func loadJobMeta(filename string) (*JobMeta, error) {
|
func loadJobMeta(filename string) (*JobMeta, error) {
|
||||||
@ -79,25 +77,6 @@ func (fsa *FsArchive) Init(rawConfig json.RawMessage) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (fsa *FsArchive) LoadJobData(job *Job) (JobData, error) {
|
|
||||||
|
|
||||||
filename := getPath(job, fsa.path, "data.json")
|
|
||||||
f, err := os.Open(filename)
|
|
||||||
if err != nil {
|
|
||||||
log.Errorf("fsBackend LoadJobData()- %v", err)
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
defer f.Close()
|
|
||||||
|
|
||||||
return DecodeJobData(bufio.NewReader(f), filename)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (fsa *FsArchive) LoadJobMeta(job *Job) (*JobMeta, error) {
|
|
||||||
|
|
||||||
filename := getPath(job, fsa.path, "meta.json")
|
|
||||||
return loadJobMeta(filename)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (fsa *FsArchive) LoadClusterCfg(name string) (*Cluster, error) {
|
func (fsa *FsArchive) LoadClusterCfg(name string) (*Cluster, error) {
|
||||||
|
|
||||||
b, err := os.ReadFile(filepath.Join(fsa.path, name, "cluster.json"))
|
b, err := os.ReadFile(filepath.Join(fsa.path, name, "cluster.json"))
|
||||||
@ -159,63 +138,7 @@ func (fsa *FsArchive) Iter() <-chan *JobMeta {
|
|||||||
return ch
|
return ch
|
||||||
}
|
}
|
||||||
|
|
||||||
func (fsa *FsArchive) StoreJobMeta(jobMeta *JobMeta) error {
|
|
||||||
|
|
||||||
job := Job{
|
|
||||||
BaseJob: jobMeta.BaseJob,
|
|
||||||
StartTime: time.Unix(jobMeta.StartTime, 0),
|
|
||||||
StartTimeUnix: jobMeta.StartTime,
|
|
||||||
}
|
|
||||||
f, err := os.Create(getPath(&job, fsa.path, "meta.json"))
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
if err := EncodeJobMeta(f, jobMeta); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
if err := f.Close(); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (fsa *FsArchive) GetClusters() []string {
|
func (fsa *FsArchive) GetClusters() []string {
|
||||||
|
|
||||||
return fsa.clusters
|
return fsa.clusters
|
||||||
}
|
}
|
||||||
|
|
||||||
func (fsa *FsArchive) ImportJob(
|
|
||||||
jobMeta *JobMeta,
|
|
||||||
jobData *JobData) error {
|
|
||||||
|
|
||||||
job := Job{
|
|
||||||
BaseJob: jobMeta.BaseJob,
|
|
||||||
StartTime: time.Unix(jobMeta.StartTime, 0),
|
|
||||||
StartTimeUnix: jobMeta.StartTime,
|
|
||||||
}
|
|
||||||
dir := getPath(&job, fsa.path, "")
|
|
||||||
if err := os.MkdirAll(dir, 0777); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
f, err := os.Create(path.Join(dir, "meta.json"))
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
if err := EncodeJobMeta(f, jobMeta); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
if err := f.Close(); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
f, err = os.Create(path.Join(dir, "data.json"))
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
if err := EncodeJobData(f, jobData); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
return f.Close()
|
|
||||||
}
|
|
||||||
|
@ -17,6 +17,14 @@ import (
|
|||||||
|
|
||||||
var ar FsArchive
|
var ar FsArchive
|
||||||
|
|
||||||
|
func deepCopyJobMeta(j *JobMeta) schema.JobMeta {
|
||||||
|
var jn schema.JobMeta
|
||||||
|
|
||||||
|
jn.StartTime = j
|
||||||
|
jn.BaseJob = j.BaseJob
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
func deepCopyClusterConfig(co *Cluster) schema.Cluster {
|
func deepCopyClusterConfig(co *Cluster) schema.Cluster {
|
||||||
var cn schema.Cluster
|
var cn schema.Cluster
|
||||||
|
|
||||||
@ -84,7 +92,15 @@ func main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// for job := range ar.Iter() {
|
for job := range ar.Iter() {
|
||||||
// fmt.Printf("Job %d\n", job.JobID)
|
fmt.Printf("Job %d\n", job.JobID)
|
||||||
// }
|
|
||||||
|
root := fmt.Sprintf("%s/%s/", dstPath, job.Cluster)
|
||||||
|
f, err := os.Create(getPath(job, root, "meta.json"))
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
jmn := deepCopyJobMeta(job)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user