Backend for ClusterCockpit Monitoring Framework. GitHub Mirror
Go to file
2021-12-08 11:50:47 +01:00
.github/workflows Add frontend as submodule; Update README.md 2021-10-26 10:26:39 +02:00
auth authentication via database and/or ldap 2021-12-08 10:03:00 +01:00
config individual configurations per user 2021-12-08 10:12:19 +01:00
frontend@b487af3496 Add frontend as submodule; Update README.md 2021-10-26 10:26:39 +02:00
graph individual configurations per user 2021-12-08 10:12:19 +01:00
metricdata Fix bug in archiving 2021-12-08 11:50:47 +01:00
schema Add rest-api for starting/stoping jobs 2021-11-26 10:34:29 +01:00
templates templates for the login page 2021-12-08 10:09:47 +01:00
utils Introduce new golang job-archive backend 2021-03-31 07:23:48 +02:00
.env Add InfluxDBv2 as metric data repo 2021-12-08 10:14:45 +01:00
.gitignore Add frontend as submodule; Update README.md 2021-10-26 10:26:39 +02:00
.gitmodules Add frontend as submodule; Update README.md 2021-10-26 10:26:39 +02:00
go.mod update main; make REST API compatible to ClusterCockpit 2021-12-08 10:15:25 +01:00
go.sum update main; make REST API compatible to ClusterCockpit 2021-12-08 10:15:25 +01:00
gqlgen.yml New GraphQL schema 2021-10-26 10:22:02 +02:00
init-db.go support the new job archive directory structure 2021-12-08 10:08:41 +01:00
LICENSE Initial checkin. 2019-04-29 10:21:48 +02:00
README.md Fixes; Get Clusters from config.go 2021-11-26 10:35:07 +01:00
rest-api.go Fix bug in archiving 2021-12-08 11:50:47 +01:00
server.go update main; make REST API compatible to ClusterCockpit 2021-12-08 10:15:25 +01:00

ClusterCockpit with a Golang backend (Only supports archived jobs)

Build

Run server

# The frontend is a submodule, so use `--recursive`
git clone --recursive git@github.com:ClusterCockpit/cc-jobarchive.git

# Prepare frontend
cd ./cc-jobarchive/frontend
yarn install
yarn build

cd ..
go get
go build

# The job-archive directory must be organised the same way as
# as for the regular ClusterCockpit.
ln -s <your-existing-job-archive> ./var/job-archive

# Create empty job.db (Will be initialized as SQLite3 database)
touch ./var/job.db

# This will first initialize the job.db database by traversing all
# `meta.json` files in the job-archive. After that, a HTTP server on
# the port 8080 will be running. The `--init-db` is only needed the first time.
./cc-jobarchive --init-db

# Show other options:
./cc-jobarchive --help

Update GraphQL schema

This project uses gqlgen for the GraphQL API. The schema can be found in ./graph/schema.graphqls. After changing it, you need to run go run github.com/99designs/gqlgen which will update graph/model. In case new resolvers are needed, they will be inserted into graph/schema.resolvers.go, where you will need to implement them.