mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-09-12 00:06:14 +00:00
fix: Allow devops role to use all_workspaces runs filter in admins workspace (#9153)
Co-authored-by: windmill-internal-app[bot] <1429786+windmill-internal-app[bot]@users.noreply.github.com>
This commit is contained in:
co-authored by
windmill-internal-app[bot]
parent
c5092069cb
commit
110bef0a6e
@@ -10,7 +10,7 @@
|
||||
} from '$lib/gen'
|
||||
|
||||
import { sendUserToast } from '$lib/toast'
|
||||
import { userStore, workspaceStore, userWorkspaces, superadmin } from '$lib/stores'
|
||||
import { userStore, workspaceStore, userWorkspaces, superadmin, devopsRole } from '$lib/stores'
|
||||
import {
|
||||
Button,
|
||||
ButtonType,
|
||||
@@ -82,7 +82,7 @@
|
||||
usernames,
|
||||
folders,
|
||||
jobTriggerKinds,
|
||||
isSuperAdmin: !!$superadmin,
|
||||
isSuperAdminOrDevops: !!$superadmin || !!$devopsRole,
|
||||
isAdminsWorkspace: $workspaceStore === 'admins'
|
||||
})
|
||||
)
|
||||
@@ -750,7 +750,7 @@
|
||||
)}
|
||||
schema={runsFilterSearchbarSchema}
|
||||
presets={buildRunsFilterPresets({
|
||||
isSuperadmin: !!$superadmin,
|
||||
isSuperAdminOrDevops: !!$superadmin || !!$devopsRole,
|
||||
isAdminsWorkspace: $workspaceStore === 'admins'
|
||||
})}
|
||||
bind:value={filters.val}
|
||||
|
||||
@@ -23,14 +23,14 @@ export function buildRunsFilterSearchbarSchema({
|
||||
usernames,
|
||||
folders,
|
||||
jobTriggerKinds,
|
||||
isSuperAdmin,
|
||||
isSuperAdminOrDevops,
|
||||
isAdminsWorkspace
|
||||
}: {
|
||||
paths: string[]
|
||||
usernames: string[]
|
||||
folders: string[]
|
||||
jobTriggerKinds: JobTriggerKind[]
|
||||
isSuperAdmin: boolean
|
||||
isSuperAdminOrDevops: boolean
|
||||
isAdminsWorkspace: boolean
|
||||
}) {
|
||||
return {
|
||||
@@ -206,12 +206,12 @@ export function buildRunsFilterSearchbarSchema({
|
||||
label: 'Show future jobs (Default: true)',
|
||||
description: 'Include jobs that are planned later'
|
||||
},
|
||||
...(isSuperAdmin &&
|
||||
...(isSuperAdminOrDevops &&
|
||||
isAdminsWorkspace && {
|
||||
all_workspaces: {
|
||||
type: 'boolean' as const,
|
||||
label: 'All workspaces',
|
||||
description: 'Show jobs of all workspaces (superadmin only)'
|
||||
description: 'Show jobs of all workspaces (superadmin or devops only)'
|
||||
}
|
||||
})
|
||||
} satisfies FilterSchemaRec
|
||||
@@ -230,16 +230,16 @@ export function allowWildcards(filters: Partial<RunsFilterInstance> | undefined)
|
||||
}
|
||||
|
||||
export const buildRunsFilterPresets = ({
|
||||
isSuperadmin,
|
||||
isSuperAdminOrDevops,
|
||||
isAdminsWorkspace
|
||||
}: {
|
||||
isSuperadmin: boolean
|
||||
isSuperAdminOrDevops: boolean
|
||||
isAdminsWorkspace: boolean
|
||||
}) => [
|
||||
{ name: 'Hide schedules', value: 'job_trigger_kind:\\ !schedule' },
|
||||
{ name: 'Hide future jobs', value: 'show_future_jobs:\\ false' },
|
||||
{ name: 'Show skipped', value: 'show_skipped:\\ true' },
|
||||
...(isSuperadmin && isAdminsWorkspace
|
||||
...(isSuperAdminOrDevops && isAdminsWorkspace
|
||||
? [{ name: 'All workspaces', value: 'all_workspaces:\\ true' }]
|
||||
: [])
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user