Files
Sebastian Serfling 2b5d29ef67 Initial commit: Windmill workspace sync
Scripts, flows, apps, resources and resource types from the Windmill workspace.
API token excluded via .gitignore (config/).
2026-04-24 09:06:07 +02:00

152 lines
4.6 KiB
YAML

# yaml-language-server: $schema=wmill.schema.json
# wmill.yaml — Windmill CLI configuration
# Full reference: run "wmill config"
# Default TypeScript runtime for new scripts
defaultTs: bun
# Glob patterns for files to include in sync
includes:
- "f/**"
# Additional glob patterns merged with includes (useful in branch overrides)
# extraIncludes: []
# Glob patterns for files to exclude from sync
excludes: []
# --- What to sync -----------------------------------------------------
# "skip" options default to false (synced), "include" options default to false (not synced)
# Skip syncing variables
skipVariables: false
# Skip syncing resources
skipResources: false
# Skip syncing resource types
skipResourceTypes: false
# Skip syncing secrets (true by default for security)
skipSecrets: true # true by default — secrets are not synced for security
# Skip syncing scripts
skipScripts: false
# Skip syncing flows
skipFlows: false
# Skip syncing apps
skipApps: false
# Skip syncing folders
skipFolders: false
# Skip syncing workspace dependencies
skipWorkspaceDependencies: false
# Uncomment to include these (excluded by default):
# Include schedules in sync
# includeSchedules: true
# Include triggers (http, websocket, kafka, etc.) in sync
# includeTriggers: true
# Include workspace users in sync
# includeUsers: true
# Include workspace groups in sync
# includeGroups: true
# Include workspace settings in sync
# includeSettings: true
# Include encryption key in sync
# includeKey: true
# --- Sync behavior ----------------------------------------------------
# Number of parallel operations during sync
# parallel: 4
# Require lock files for all scripts
# locksRequired: true
# Run linting before push
# lint: true
# Handle secrets as plain text (not recommended)
# plainSecrets: false
# Default commit message for sync operations
# message: "my commit message"
# Branch name to use promotion overrides from during sync
# promotion: staging
# Skip validation that current git branch matches a configured branch
# skipBranchValidation: false
# Use __flow/__app/__raw_app suffixes instead of .flow/.app/.raw_app
nonDottedPaths: true
# --- Codebase bundling (shared libraries) -----------------------------
# Bundle TypeScript/JavaScript codebases that scripts import from.
# Each entry is bundled and uploaded so scripts can import shared code.
# Codebase bundling configurations for shared libraries
codebases: []
# codebases:
# - relative_path: ./shared # path to the codebase
# includes: ["**/*.ts"] # files to include in bundle
# excludes: ["node_modules/**"] # files to exclude
# format: esm # bundle format: "cjs" or "esm"
# external: ["pg", "axios"] # dependencies to leave unbundled
# assets: # static files to copy into bundle
# - from: ./static
# to: ./dist
# # customBundler: ./build.ts # custom bundler script (replaces esbuild)
# # inject: ["./polyfills.ts"] # files to inject into every entry point
# # define: # compile-time constants
# # API_URL: '"https://api.example.com"'
# # banner: # text prepended to output files
# # js: "/* bundled by windmill */"
# # loader: # esbuild loader overrides
# # ".png": "dataurl"
# --- Git branch / environment bindings --------------------------------
# Map git branches to Windmill workspaces and override settings per branch.
# Use "environments" as an alias if you prefer environment-based terminology.
# Map git branches to workspaces and per-branch sync overrides
gitBranches:
main:
overrides: {}
# baseUrl: https://app.windmill.dev # Windmill instance URL for this branch
# workspaceId: my-workspace # workspace to sync with
# promotionOverrides: # overrides applied during --promotion
# skipSecrets: false
# specificItems: # only sync these specific items
# variables: ["f/my_folder/my_var"]
# resources: ["f/my_folder/my_res"]
# triggers: ["f/my_folder/my_trigger"]
# folders: ["my_folder"]
# settings: true
# Example: staging branch bound to a different workspace
# staging:
# baseUrl: https://staging.windmill.dev
# workspaceId: staging-workspace
# overrides:
# skipSecrets: false
# includeSchedules: true
# Items shared across ALL branches
# commonSpecificItems:
# variables: ["f/shared/api_key"]
# resources: ["f/shared/db_conn"]
# folders: ["shared"]
# Alias for gitBranches — use if you prefer environment-based terminology
# environments: {}