Update config json schema

Fixes #256
This commit is contained in:
Jan Eitzinger 2024-12-03 07:26:36 +01:00
parent 8a10b69716
commit 907e80a01c
Signed by: moebiusband
GPG Key ID: 2574BA29B90D6DD5
2 changed files with 471 additions and 424 deletions

View File

@ -91,7 +91,7 @@ type ResampleConfig struct {
type CronFrequency struct { type CronFrequency struct {
// Duration Update Worker [Defaults to '5m'] // Duration Update Worker [Defaults to '5m']
DurationWorker string `json:"duration-worker"` DurationWorker string `json:"duration-worker"`
// Metric- and Energy Footprint Update Worker [Defaults to '10m'] // Metric-Footprint Update Worker [Defaults to '10m']
FootprintWorker string `json:"footprint-worker"` FootprintWorker string `json:"footprint-worker"`
} }

View File

@ -8,6 +8,10 @@
"description": "Address where the http (or https) server will listen on (for example: 'localhost:80').", "description": "Address where the http (or https) server will listen on (for example: 'localhost:80').",
"type": "string" "type": "string"
}, },
"apiAllowedIPs": {
"description": "Addresses from which secured API endpoints can be reached",
"type": "string"
},
"user": { "user": {
"description": "Drop root permissions once .env was read and the port was taken. Only applicable if using privileged port.", "description": "Drop root permissions once .env was read and the port was taken. Only applicable if using privileged port.",
"type": "string" "type": "string"
@ -40,7 +44,7 @@
"description": "For sqlite3 a filename, for mysql a DSN in this format: https://github.com/go-sql-driver/mysql#dsn-data-source-name (Without query parameters!).", "description": "For sqlite3 a filename, for mysql a DSN in this format: https://github.com/go-sql-driver/mysql#dsn-data-source-name (Without query parameters!).",
"type": "string" "type": "string"
}, },
"job-archive": { "archive": {
"description": "Configuration keys for job-archive", "description": "Configuration keys for job-archive",
"type": "object", "type": "object",
"properties": { "properties": {
@ -127,6 +131,45 @@
"description": "Do not show running jobs shorter than X seconds.", "description": "Do not show running jobs shorter than X seconds.",
"type": "integer" "type": "integer"
}, },
"emission-constant": {
"description": ".",
"type": "integer"
},
"cron-frequency": {
"description": "Frequency of cron job workers.",
"type": "object",
"properties": {
"duration-worker": {
"description": "Duration Update Worker [Defaults to '5m']",
"type": "string"
},
"footprint-worker": {
"description": "Metric-Footprint Update Worker [Defaults to '10m']",
"type": "string"
}
}
},
"enable-resampling": {
"description": "Enable dynamic zoom in frontend metric plots.",
"type": "object",
"properties": {
"trigger": {
"description": "Trigger next zoom level at less than this many visible datapoints.",
"type": "integer"
},
"resolutions": {
"description": "Array of resampling target resolutions, in seconds.",
"type": "array",
"items": {
"type": "integer"
}
}
},
"required": [
"trigger",
"resolutions"
]
},
"jwts": { "jwts": {
"description": "For JWT token authentication.", "description": "For JWT token authentication.",
"type": "object", "type": "object",
@ -156,6 +199,23 @@
"max-age" "max-age"
] ]
}, },
"oidc": {
"provider": {
"description": "",
"type": "string"
},
"syncUserOnLogin": {
"description": "",
"type": "boolean"
},
"updateUserOnLogin": {
"description": "",
"type": "boolean"
},
"required": [
"provider"
]
},
"ldap": { "ldap": {
"description": "For LDAP Authentication and user synchronisation.", "description": "For LDAP Authentication and user synchronisation.",
"type": "object", "type": "object",
@ -345,6 +405,14 @@
"description": "Initial metric shown in system view", "description": "Initial metric shown in system view",
"type": "string" "type": "string"
}, },
"job_view_showFootprint": {
"description": "Option to toggle footprint ui in single job view",
"type": "boolean"
},
"job_list_usePaging": {
"description": "Option to switch from continous scroll to paging",
"type": "boolean"
},
"analysis_view_histogramMetrics": { "analysis_view_histogramMetrics": {
"description": "Metrics to show as job count histograms in analysis view", "description": "Metrics to show as job count histograms in analysis view",
"type": "array", "type": "array",
@ -425,27 +493,6 @@
"plot_list_selectedMetrics" "plot_list_selectedMetrics"
] ]
}, },
"enable-resampling": {
"description": "Enable dynamic zoom in frontend metric plots.",
"type": "object",
"properties": {
"trigger": {
"description": "Trigger next zoom level at less than this many visible datapoints.",
"type": "integer"
},
"resolutions": {
"description": "Array of resampling target resolutions, in seconds.",
"type": "array",
"items": {
"type": "integer"
}
}
},
"required": [
"trigger",
"resolutions"
]
}
}, },
"required": [ "required": [
"jwts", "jwts",