mirror of
https://github.com/ClusterCockpit/cc-backend
synced 2024-12-25 04:49:05 +01:00
Adapt user jobview to new version, fix refresher
- add manually triggered refresh function to jobList - Changing displayed metrics requires hard refresh (F5) to load data -> Under investigation
This commit is contained in:
parent
760d3dec0f
commit
b5a5def3a6
@ -53,15 +53,19 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const client = getContextClient();
|
||||||
|
const query = gql`
|
||||||
|
mutation($name: String!, $value: String!) {
|
||||||
|
updateConfiguration(name: $name, value: $value)
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
|
||||||
const updateConfiguration = ({ name, value }) => {
|
const updateConfiguration = ({ name, value }) => {
|
||||||
result = mutationStore({
|
mutationStore({
|
||||||
client: getContextClient(),
|
client,
|
||||||
query: gql`mutation($name: String!, $value: String!) {
|
query,
|
||||||
updateConfiguration(name: $name, value: $value)
|
variables: { name, value },
|
||||||
}`,
|
})}
|
||||||
variables: {name, value}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
let columnHovering = null
|
let columnHovering = null
|
||||||
|
|
||||||
@ -89,13 +93,9 @@
|
|||||||
isOpen = false
|
isOpen = false
|
||||||
|
|
||||||
updateConfiguration({
|
updateConfiguration({
|
||||||
name: cluster == null ? configName : `${configName}:${cluster}`,
|
name: cluster == null ? configName : `${configName}:${cluster}`,
|
||||||
value: JSON.stringify(metrics)
|
value: JSON.stringify(metrics)
|
||||||
})
|
})
|
||||||
.then(res => {
|
|
||||||
if (res.error)
|
|
||||||
console.error(res.error)
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -34,62 +34,55 @@
|
|||||||
let paging = { itemsPerPage, page };
|
let paging = { itemsPerPage, page };
|
||||||
let filter = [];
|
let filter = [];
|
||||||
|
|
||||||
// $: {
|
const client = getContextClient();
|
||||||
// console.log('CHANGED FILTERS IN JOBLIST TO')
|
const query = gql`
|
||||||
// console.log('filter:', ...filter.map(f => Object.entries(f)).flat(2))
|
query (
|
||||||
// }
|
$filter: [JobFilter!]!
|
||||||
|
$sorting: OrderByInput!
|
||||||
// $: {
|
$paging: PageRequest!
|
||||||
// console.log('CHANGED PAGING IN JOBLIST TO')
|
) {
|
||||||
// console.log(paging)
|
jobs(filter: $filter, order: $sorting, page: $paging) {
|
||||||
// }
|
items {
|
||||||
|
id
|
||||||
|
jobId
|
||||||
|
user
|
||||||
|
project
|
||||||
|
jobName
|
||||||
|
cluster
|
||||||
|
subCluster
|
||||||
|
startTime
|
||||||
|
duration
|
||||||
|
numNodes
|
||||||
|
numHWThreads
|
||||||
|
numAcc
|
||||||
|
walltime
|
||||||
|
resources {
|
||||||
|
hostname
|
||||||
|
}
|
||||||
|
SMT
|
||||||
|
exclusive
|
||||||
|
partition
|
||||||
|
arrayJobId
|
||||||
|
monitoringStatus
|
||||||
|
state
|
||||||
|
tags {
|
||||||
|
id
|
||||||
|
type
|
||||||
|
name
|
||||||
|
}
|
||||||
|
userData {
|
||||||
|
name
|
||||||
|
}
|
||||||
|
metaData
|
||||||
|
}
|
||||||
|
count
|
||||||
|
}
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
|
||||||
$: jobs = queryStore({
|
$: jobs = queryStore({
|
||||||
client: getContextClient(),
|
client,
|
||||||
query: gql`
|
query,
|
||||||
query (
|
|
||||||
$filter: [JobFilter!]!
|
|
||||||
$sorting: OrderByInput!
|
|
||||||
$paging: PageRequest!
|
|
||||||
) {
|
|
||||||
jobs(filter: $filter, order: $sorting, page: $paging) {
|
|
||||||
items {
|
|
||||||
id
|
|
||||||
jobId
|
|
||||||
user
|
|
||||||
project
|
|
||||||
jobName
|
|
||||||
cluster
|
|
||||||
subCluster
|
|
||||||
startTime
|
|
||||||
duration
|
|
||||||
numNodes
|
|
||||||
numHWThreads
|
|
||||||
numAcc
|
|
||||||
walltime
|
|
||||||
resources {
|
|
||||||
hostname
|
|
||||||
}
|
|
||||||
SMT
|
|
||||||
exclusive
|
|
||||||
partition
|
|
||||||
arrayJobId
|
|
||||||
monitoringStatus
|
|
||||||
state
|
|
||||||
tags {
|
|
||||||
id
|
|
||||||
type
|
|
||||||
name
|
|
||||||
}
|
|
||||||
userData {
|
|
||||||
name
|
|
||||||
}
|
|
||||||
metaData
|
|
||||||
}
|
|
||||||
count
|
|
||||||
}
|
|
||||||
}
|
|
||||||
`,
|
|
||||||
variables: { paging, sorting, filter },
|
variables: { paging, sorting, filter },
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -109,8 +102,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
const updateConfiguration = ({ value, page }) => {
|
const updateConfiguration = ({ value, page }) => {
|
||||||
configValue = value;
|
configValue = value; // Trigger mutation
|
||||||
paging = { itemsPerPage: value, page: page };
|
paging = { itemsPerPage: value, page: page }; // Trigger reload of jobList
|
||||||
};
|
};
|
||||||
|
|
||||||
// $: $jobs.variables = { ...$jobs.variables, sorting, paging }
|
// $: $jobs.variables = { ...$jobs.variables, sorting, paging }
|
||||||
@ -131,6 +124,16 @@
|
|||||||
paging = paging = { page, itemsPerPage };
|
paging = paging = { page, itemsPerPage };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Force refresh list with existing unchanged variables (== usually would not trigger reactivity)
|
||||||
|
export function refresh() {
|
||||||
|
queryStore({
|
||||||
|
client,
|
||||||
|
query,
|
||||||
|
variables: { paging, sorting, filter },
|
||||||
|
requestPolicy: 'network-only'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
let tableWidth = null;
|
let tableWidth = null;
|
||||||
let jobInfoColumnWidth = 250;
|
let jobInfoColumnWidth = 250;
|
||||||
$: plotWidth = Math.floor(
|
$: plotWidth = Math.floor(
|
||||||
|
Loading…
Reference in New Issue
Block a user