Commit Graph

231 Commits

Author SHA1 Message Date
7491ae9e3c Fix typo in DB schema 2023-05-04 17:26:33 +02:00
066c4553b4 Refactor 2023-05-04 16:27:30 +02:00
5404be3ca7 Add unique constrain on job table 2023-05-04 16:04:57 +02:00
c5b67d64d2 Add Table flush on init 2023-05-04 16:03:04 +02:00
d9b18d1763 Cleanup
Use external cc-units
Lint code
Fix import tests
2023-05-04 15:34:36 +02:00
b878b31de5 Add test result files 2023-05-04 13:32:11 +02:00
23802abc10 Rebuilt GQL code 2023-05-04 13:22:46 +02:00
27894ea0a9 Restructure tests 2023-05-04 07:00:30 +02:00
Christoph Kluge
d93610f700 List parallel jobs on node for jobs on shared node
- Relates to issue #97
- required GQL schema extension and regeneration
- Works for archived jobs aswell
2023-04-28 12:34:40 +02:00
ebba4371eb Extract importer package and restructure tests 2023-04-28 08:49:58 +02:00
c090b18628 Sync commit 2023-04-26 14:08:39 +02:00
9299f65993 Start to integrate file based testing 2023-04-25 09:27:22 +02:00
5a09277d1c Restructure black box test
Remove string ptr from unit prefix
2023-04-25 09:26:48 +02:00
Jan Eitzinger
500ae29d25 Synchronize DB Schema with json schema
Rework tests
2023-04-21 12:59:27 +02:00
Jan Eitzinger
10f4e09562 Set all versions and print in version flag 2023-04-12 10:43:46 +02:00
Jan Eitzinger
129dd13fc8 Fix merge errors 2023-04-11 16:26:09 +02:00
Jan Eitzinger
f8ba79e9e7 Merge branch 'master' into import-data-sanitation 2023-04-07 08:57:42 +02:00
Jan Eitzinger
d420b8b666
Merge branch 'master' into 40_45_82_update_roles 2023-04-07 08:19:04 +02:00
Christoph Kluge
f0cbb8c5dc Fix PrintList implementation, add NodeCount method 2023-04-06 11:38:10 +02:00
Christoph Kluge
2401a2b940 Merge branch 'import-data-sanitation' of https://github.com/ClusterCockpit/cc-backend into import-data-sanitation 2023-03-31 17:18:49 +02:00
Christoph Kluge
adc1d94e3f subcluster in metricSelect, add infobox to systems
- Default: Show Clusters next to Metrics
- New: If Cluster filter activem show subclusters instead (reactive)
- add note to analysis view
- systems view now with info boxes if metric is removed for subcluster
2023-03-31 17:18:16 +02:00
Jan Eitzinger
559445900d Adapt job iterator
* Add option to also load Job Metric Data
* Validate Job Metric Data
* Allow null values in series array
2023-03-31 15:28:35 +02:00
Christoph Kluge
68a839bf1c Remove comments 2023-03-30 15:23:31 +02:00
Christoph Kluge
0c1b66aad9 Adapt svelte to new schema, add removed metric box
- Moved 'scope' field to parent jobMetric
- Implemented unit { prefix, base } where necessary
- SubCluster Metric Config 'remove' option implemented in Joblists
2023-03-30 15:21:35 +02:00
Jan Eitzinger
82120cfb3d Update generated.go 2023-03-29 10:54:16 +02:00
Christoph Kluge
1bb2827aeb Merge branch 'import-data-sanitation' of https://github.com/ClusterCockpit/cc-backend into import-data-sanitation 2023-03-29 10:39:42 +02:00
Christoph Kluge
fc133f328a Add check to ccms getSubCluster routine
- Fixes nil pointer panic if topology requested from undef'd subcluster
- rest.go: vscode LINT
2023-03-29 10:39:31 +02:00
Jan Eitzinger
5d535edb48 Synchronize go job struct with schema 2023-03-29 06:46:33 +02:00
Jan Eitzinger
9aff980a38 Add scope to Metric List. Add numberOfNodes. 2023-03-24 15:10:23 +01:00
Jan Eitzinger
4d49698e5a Add scope to GraphQL Metric Type 2023-03-24 14:43:37 +01:00
Jan Eitzinger
1f8c6064e2 Refactor schema
* Remove redundant scope
* Change Series Id type to string
* Adopt golang structs to schema
2023-03-22 19:21:11 +01:00
Christoph Kluge
de71fee61e
Merge pull request #98 from giesselmann/fix-updateconfig
Fix UpdateConfig
2023-03-21 12:09:40 +01:00
5d526e1168 Adapt Cluster schema
Add remove boolean to subClusterConfig in MetricList.
Fix Linter errors.
2023-03-21 11:51:11 +01:00
747f6d4e2d Add MetricConfig in SubClusters. 2023-03-20 16:27:36 +01:00
Pay Giesselmann
de822e13fd
Fix UpdateConfig 2023-03-13 10:45:55 +01:00
Jan Eitzinger
97f391deff GraphQL remove toplevel thresholds and add Unit
Add Unit to metric values in subCluster
2023-03-10 12:13:40 +01:00
Christoph Kluge
a651219a2c
Merge pull request #96 from ClusterCockpit/92_add_shortjobduration_config
Move ShortRunningJobsDuration value to root config
2023-03-09 16:43:43 +01:00
Christoph Kluge
14665df439 Better test array 2023-03-06 16:35:14 +01:00
Christoph Kluge
cae7257673 Add tests for role checks, update test.db 2023-03-06 16:32:58 +01:00
Christoph Kluge
f37e7c26f6 Rework roles as enum, change AuthSource to enum 2023-03-06 11:44:38 +01:00
Christoph Kluge
4f1f034702 Move ShortRunningJobsDuration value to root config 2023-03-01 16:34:59 +01:00
9d28cb83f0 Remove swagger enum comment and rebuild Swagger docs
Relates to #95
2023-03-01 10:49:08 +01:00
Christoph Kluge
df44bd9621 Merge branch 'master' into 40_45_82_update_roles 2023-02-28 11:18:46 +01:00
1fc090965d Add missing error code 2023-02-27 09:16:18 +01:00
e13f184414 Regenerate Swagger docs
Relates to #94 and #95
2023-02-27 07:49:37 +01:00
89b1d8f7da Treat error no change as non fatal 2023-02-25 08:26:56 +01:00
ae5a73335d Fix bugs in getJobs REST Api endpoint
Relates to #94 and #95
2023-02-25 07:21:54 +01:00
Christoph Kluge
8bd72ce807 Small fixes after full file review
- Remove unnecessary field 'project' from GQl and regenerate
- Add newlines to file ends
- Fix command-line manager user addition
2023-02-23 12:33:14 +01:00
Christoph Kluge
d30dba109d Fix test 2023-02-22 16:57:15 +01:00
Christoph Kluge
365888c645 Fix tag panic and simplify code 2023-02-22 16:49:23 +01:00
Christoph Kluge
d6b8d711f6 Rework searchbar functions, add user jobtable 2023-02-22 16:30:01 +01:00
Christoph Kluge
d0d578a1e6 Fix user.projects up migration file 2023-02-22 10:17:40 +01:00
Christoph Kluge
48728e64c4 Merge branch 'master' into 40_45_82_update_roles 2023-02-22 09:28:41 +01:00
60437ce264 Rebuild GraphQL api and Swagger UI code. 2023-02-21 18:13:16 +01:00
Christoph Kluge
822c8b570c Remove exists checks from sql migrations to v3 2023-02-21 18:05:29 +01:00
Christoph Kluge
3b7ca17b3c Merge branch 'master' into 40_45_82_update_roles 2023-02-21 17:36:58 +01:00
Christoph Kluge
acbef39045 Fix header, add migration for user.projects column 2023-02-21 17:33:27 +01:00
af26331f59 Merge back changes from main 2023-02-21 17:18:54 +01:00
Christoph Kluge
e0e51813ad Merge branch 'master' into 40_45_82_update_roles 2023-02-21 17:17:41 +01:00
Jan Eitzinger
33b20620ee
Merge branch 'master' into sql-repository-opt 2023-02-21 16:21:47 +01:00
999609a17a Add backend type and adopt cast expressions
Fixes #67
2023-02-21 15:22:05 +01:00
63f8555af7 Add migration support for mysql 2023-02-21 14:45:59 +01:00
d429327ce5 Fix unit test 2023-02-21 13:54:42 +01:00
42d3318125 Add documentation in README 2023-02-21 13:50:15 +01:00
5ff88e1701 Add routine names to sql query timer 2023-02-21 12:08:06 +01:00
a4f5b139f9 Remove hardcoded index generation 2023-02-21 11:36:23 +01:00
8ffb562d6b Introduce db migration support 2023-02-21 10:57:22 +01:00
643bd3fb21 Add timer calls to repository functions 2023-02-20 15:08:23 +01:00
Christoph Kluge
68efe871c7 Centralize project filter for manager role
- Remove all unnecessary frontend code for managerfilters
2023-02-20 11:24:18 +01:00
Christoph Kluge
09bcf9f355 Better implementation for querying multiple users 2023-02-20 10:20:08 +01:00
Christoph Kluge
397ab08b3b Add support for multiple projects per manager
- Handled like roles in admin view
- !! NEW COLUMN CHANGED TO "projects"
2023-02-17 15:45:31 +01:00
Christoph Kluge
bf6ec1bc98 Add search for user names, add names in user table
- Regenerated GraphQL due to new required query 'multiUser'
2023-02-17 10:45:27 +01:00
3b38d8042e Fix tests 2023-02-15 13:07:19 +01:00
033598a656 Remove loglevel notice 2023-02-15 11:50:51 +01:00
491baafd1d Add index. Formatting 2023-02-15 09:50:27 +01:00
51b2a7f30e Relocate JobStatistics from GraphQL resolver to JobRepository 2023-02-13 13:53:24 +01:00
aef821fa7e Add SQL hook for logging and timing 2023-02-13 13:52:17 +01:00
Christoph Kluge
728531946a
Merge branch 'master' into 26_improve_logmessages 2023-02-09 13:52:58 +01:00
Jan Eitzinger
180e9cb09d
Merge pull request #80 from ClusterCockpit/34-52-rework-searchbar
Merge Searchbar Rework
2023-02-09 11:38:02 +01:00
Christoph Kluge
641affbbdf Move /search code to routerConfig, add simple docs for searchbar 2023-02-09 10:11:11 +01:00
Christoph Kluge
94523150f5 Fix small typo 2023-02-01 15:46:50 +01:00
Christoph Kluge
a2ebebd7f6 Remove role label array from frontend
- made centralized role array uncentralized again
2023-02-01 14:49:10 +01:00
Christoph Kluge
ef1b2d7a81 Fix typo 2023-02-01 12:29:58 +01:00
Christoph Kluge
a885e69125 Adapt loglevel for logs, shorten strings, fix formats, streamline
- Switched to Warn for most errors, reduces bloat, improves log control
2023-02-01 11:58:27 +01:00
Christoph Kluge
b77bd078e5 Add log messages to error events w/o log message, primaryly error level
- "log spam" to be controlled via loglevel flag on startup
2023-01-31 18:28:44 +01:00
Christoph Kluge
7fb94c33cf Add API call for frontend to fetch list of valid roles from backend
- only relevant for admin config (addUser, editRole)
- admin only (double-checked)
2023-01-30 17:01:11 +01:00
Christoph Kluge
7d4f4ab2c8 Merge branch 'master' into 40_45_82_update_roles 2023-01-30 14:33:44 +01:00
Christoph Kluge
186c8f7311 Fix user display configrations not persisting in SQLite table
- Was missing user.username key
2023-01-30 14:33:12 +01:00
Christoph Kluge
dd5e0682a1 Fix test file, add suer table project column to test.db 2023-01-30 14:03:44 +01:00
Christoph Kluge
c4d91039e2 Add support role to tag count
- works equal to admin
2023-01-30 13:48:27 +01:00
Christoph Kluge
2590ce7e44 Adapt count tags for managers 2023-01-30 13:43:12 +01:00
Christoph Kluge
b2aed2f16b Add 'project' to user table, add 'manager' role, conditional web render
- Addresses issues #40 #45 #82
- Reworked Navigation Header for all roles
- 'Manager' role added, can be assigned a project-id in config by admins
- BREAKING! -> Added 'project' column in SQLite3 table 'user'
- Manager-Assigned project will be added to all graphql filters: Only show Jobs and Users of given project
- 'My Jobs' Tab for all Roles
- Switched from Bool "isAdmin" to integer authLevels
- Removed critical data frontend logging
- Reworked repo.query.SecurityCheck()
2023-01-27 18:36:58 +01:00
Christoph Kluge
834f9d9085 Add role helper functions, add project role barebone, add valid role arr
- HasAnyRoles([]string): Checks if user has *one* of the roles
- HasAllRoles([]string): Cheks if user has *all* of the roles
- HasNotRoles([]string): Checks if user has *none* of the roles
- IsValidRole(string): Checks if given string is known valid role
2023-01-25 16:59:16 +01:00
Christoph Kluge
25eb3bb481 Add missing dependency 2023-01-24 12:03:36 +01:00
Christoph Kluge
bd770d0e32 Fix return error, fix wrong log path, add notice log where applicable
- Adresses issue #26
2023-01-24 12:02:29 +01:00
Christoph Kluge
79a949b55e Rework pkg/log, add 'loglevel' and 'logdate' flags, streamline
- removes some previously added manual location strings: now handled by pkg/log depending on loglevel
- kept manual string locations on fmt print functions
- add 'notice' and 'critical' loglevels
- add 'Panic' and 'Panicf' functions to log panics
- adresses issue #26
2023-01-23 18:48:06 +01:00
Christoph Kluge
24a4244f19 add more information to existing errors logs and panics
- '$ROOT/$FILE' for better localization in the code
- add text where none was given
- fix unnecessary sprintf nesting in influxv2 and prometheus metricrepo logging
2023-01-19 16:59:14 +01:00
Christoph Kluge
1873c6a87d
Merge branch 'master' into 34-52-rework-searchbar 2023-01-13 09:58:56 +01:00
Christoph Kluge
b0cd88bba1
Merge pull request #77 from giesselmann/serial_archiving
archive jobs in single worker thread
2023-01-12 15:12:11 +01:00
Christoph Kluge
7998577076 Remove metadata from scanJob
- Leftover from initial jobName query implementation tryouts: unnecessary
2023-01-12 11:57:44 +01:00