diff --git a/backend/windmill-api-configs/src/lib.rs b/backend/windmill-api-configs/src/lib.rs
index de4be9cf9c..59ad1625a4 100644
--- a/backend/windmill-api-configs/src/lib.rs
+++ b/backend/windmill-api-configs/src/lib.rs
@@ -129,10 +129,11 @@ async fn update_config(
#[cfg(not(feature = "enterprise"))]
let config = if name.starts_with("worker__") {
- // In CE, only allow setting worker_tags (and cache_clear for cache management)
+ // In CE, only allow setting worker_tags, cache_clear, and init_bash
serde_json::json!({
"worker_tags": config.get("worker_tags"),
- "cache_clear": config.get("cache_clear")
+ "cache_clear": config.get("cache_clear"),
+ "init_bash": config.get("init_bash")
})
} else {
config
diff --git a/frontend/src/lib/components/AutoscalingConfigEditor.svelte b/frontend/src/lib/components/AutoscalingConfigEditor.svelte
index 82f260f502..20fb30f3e7 100644
--- a/frontend/src/lib/components/AutoscalingConfigEditor.svelte
+++ b/frontend/src/lib/components/AutoscalingConfigEditor.svelte
@@ -20,9 +20,10 @@
config: AutoscalingConfig | undefined
worker_tags: string[] | undefined
disabled: boolean
+ eeOnly?: boolean
}
- let { config = $bindable(), worker_tags, disabled }: Props = $props()
+ let { config = $bindable(), worker_tags, disabled, eeOnly = false }: Props = $props()
let test_input: number = $state(3)
let healthCheckLoading: boolean = $state(false)
let healthCheckResult: { success: boolean; error?: string } | null = $state(null)
@@ -62,6 +63,7 @@
class="flex flex-col gap-6"
bind:collapsed
description="Autoscaling automatically adjusts the number of workers based on your workload demands."
+ {eeOnly}
>
{#snippet labelExtra()}
Beta
diff --git a/frontend/src/lib/components/InstanceSettings.svelte b/frontend/src/lib/components/InstanceSettings.svelte
index 9bf318c4ce..bf9d7a38b8 100644
--- a/frontend/src/lib/components/InstanceSettings.svelte
+++ b/frontend/src/lib/components/InstanceSettings.svelte
@@ -15,7 +15,7 @@
import AuthSettings from './AuthSettings.svelte'
import InstanceSetting from './InstanceSetting.svelte'
import { writable, type Writable } from 'svelte/store'
- import { Loader2 } from 'lucide-svelte'
+ import { ExternalLink, Loader2 } from 'lucide-svelte'
import YAML from 'yaml'
import Toggle from './Toggle.svelte'
import type SimpleEditor from './SimpleEditor.svelte'
@@ -788,6 +788,14 @@
{/await}
{:else if yamlMode}
+
+ Use this YAML to manage instance settings as code.
+ Learn more
+
import {
TriangleAlert,
- Copy,
Plus,
RefreshCcwIcon,
RotateCcw,
Settings,
Trash,
X,
- ExternalLink
+ ExternalLink,
+ FileCode
} from 'lucide-svelte'
import { Alert, Button, Drawer } from './common'
import Badge from './common/badge/Badge.svelte'
@@ -31,7 +31,6 @@
import DrawerContent from './common/drawer/DrawerContent.svelte'
import Section from './Section.svelte'
import Label from './Label.svelte'
- import YAML from 'yaml'
import Toggle from './Toggle.svelte'
import { defaultTags, nativeTags, type AutoscalingConfig } from './worker_group'
import AutoscalingConfigEditor from './AutoscalingConfigEditor.svelte'
@@ -202,6 +201,7 @@
shouldAutoOpenDrawer?: boolean
onDrawerOpened?: () => void
onDeleted?: (deletedGroupName: string) => void
+ onOpenYamlEditor?: () => void
selectGroup?: import('svelte').Snippet
}
@@ -217,6 +217,7 @@
shouldAutoOpenDrawer = false,
onDrawerOpened = () => {},
onDeleted = () => {},
+ onOpenYamlEditor = undefined,
selectGroup = undefined
}: Props = $props()
@@ -351,7 +352,7 @@
Only superadmin or devops role can edit the worker config.
{/if}
-