Commit Graph

64 Commits

Author SHA1 Message Date
hugocasa
164e499c64 feat: add variable and resource types to flow env variables (#8214)
* feat: add variable and resource types to flow env variables

Flow env variables can now reference workspace variables ($var:path)
and resources ($res:path) that are resolved at runtime. Adds Variable
and Resource type options to the flow env editor with ItemPicker and
ResourcePicker components, and resolves references in both the flow
worker (via transform_json) and the API fallback endpoint.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(frontend): use inline DollarSign icon for variable picker

Replace the separate "Pick" button with the standard inline DollarSign
icon overlay that appears on hover, matching the existing ArgInput
pattern. Also add the icon to the string type input for quick variable
linking from any string field.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: simplify flow env var resolution and json_path handling in API

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(frontend): always show flow env variables in property picker

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: update flow_env openapi type to allow any JSON value

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor(frontend): remove redundant variable type from env var dropdown

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(frontend): use Label component and fix alert text in flow env vars editor

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(frontend): avoid redundant stringify/parse roundtrip in env type switch

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: address PR review comments for flow env vars

- Deduplicate db_authed in jobs.rs $var/$res resolution
- Add warn logging on variable/resource resolution failures
- Consolidate $effect blocks and remove auto-type-correction effect
- Make linked variable text a clickable link to variable editor
- Add hash-based variable editor opening on variables page

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* perf: avoid cloning entire FlowValue to resolve flow_env references

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 14:20:50 +00:00
Ruben Fiszel
d4e711e337 add x-go-name to resolve duplicate JobTriggerKind typename in Go codegen (#8071)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-24 09:26:44 +00:00
Ruben Fiszel
86301caa5f update openapi spec 2026-02-12 17:12:44 +00:00
centdix
2471c7acad feat(aichat): add api mode to call api endpoints (#6343)
* add api mode

* add endpoint to list tools

* use new endpoint from frontend

* draft tool exec display

* cleaning

* improve claude.md

* better theming

* show actual data

* add bacon to gitignore

* simpler logic

* add openapi def

* cleaning

* add confirmation

* simplify

* fix cancel

* fix build

* cleaning

* better logic

* path instructions

* add new endpoint

* cleaning

* fix

* cancel when creating new chat

* nits

* handle errors

* allow changing mode to api mode
2025-08-11 11:13:44 +00:00
Ruben Fiszel
84f76eebf7 update openapi spec exposed docs 2025-08-07 12:06:22 +00:00
Ruben Fiszel
eb9443ffc5 update openapi spec exposed docs 2025-08-07 11:52:06 +00:00
pyranota
75fa9e4730 chore: improve openapi.yaml (#5841)
* fix schema

* update openpi-deref.yaml

* update openapi-deref.json

* add openapi-generator-cli in flake.nix

* add GH action

* fix HubScriptKind

* fix errors
2025-05-29 21:58:31 +02:00
Lucas Abel
691ef64688 feat(frontend): render new job kinds (#4864) 2024-12-06 15:11:57 +01:00
Ruben Fiszel
15f1b7cf7d update openapi 2024-11-14 16:21:07 +01:00
Alexander Petric
d9148eaa78 feat(frontend): critical alerts UI (#4653) 2024-11-09 00:42:10 +01:00
Ruben Fiszel
4f3178343d fix(apidocs): fix generated openapi files 2024-10-16 22:11:56 +02:00
Guillaume Bouvignies
d4a9d30e30 feat: Workspace encryption key can be manually updated (#3223)
* feat: Workspace encryption key can be manually updated

* sqlx prepare
2024-02-15 17:02:45 +01:00
Guillaume Bouvignies
8bb9ed646b feat: Git sync can handle resource types, resources, variables and schedules (#3202)
* feat: Git sync can handle resource types, resources, variables and schedules

* update hub script

* update all schedule on default error handler

* sqlx prepare

* reorder filters and always show secrets
2024-02-12 19:33:55 +01:00
Guillaume Bouvignies
126773122a feat: git sync now accepts path filters and type filters (#3189)
* feat: git sync now accepts path filters and type filters

* fix git sync for folders

* UI nits

* Add folder by default in migration

* fix openapi
2024-02-09 18:51:44 +01:00
Guillaume Bouvignies
bbda7cf268 feat: Support for Azure Blob storage (#3130) 2024-02-02 19:55:07 +01:00
Guillaume Bouvignies
0003673e8d feat: migrate s3 client to object_store (#3116)
* feat: migrate s3 client to object_store

* remove multipart from open API

* Remove multipart in favor of a single stream

* progress report

* add progress reader on server side

* small nit fix

* fix read chunk

* Fix TS and python SDK

* Fix download button

* Fix download button object viewer

* fix list

* Better errors

* export loadS3FileContent

* revert changes SDK

* fix browser

* small file list unavailable fix

* Old endpoints throws informative error messages

* Typescript SDK uses raw fetch

* update python SDK

* Error if uploaded file > 50Mb

* revert python SDL changes

* Update python SDK method docs

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
2024-02-01 16:03:30 +01:00
Guillaume Bouvignies
1d7914776e gbouv/fix-openapi (#3076) 2024-01-25 16:07:02 +01:00
Guillaume Bouvignies
ef76a90e34 fix: Better UI for S3 download and S3 TS SDK endpoints (#3065)
* Better UI for S3 download and S3 TS SDK endpoints

* gitignore typescript client node_modules

* USe Windmill BE upload endpoint for TS SDK

* Use WM backend endpoint in Python upload SDK endpoint

* revert changes

* Add expiration for Python

* Add downaload endpoint

* Add toggle for public S3 resource

* revert changes to package.json

* Add link to doc page

* fix unauthorized bug
2024-01-25 15:34:40 +01:00
Guillaume Bouvignies
dae1933a8c feat: Set a default app for each workspace (#3014)
* feat: workspace default app

* sqlx prepare

* rebase migration

* Redirect from home page

* move redirect to the workspaces page

* sqlx prepare

* auto redirect when only one workspace and load user before redirecting

* Add check for operator

* refresh userstore before redirecting to workspace app

* check for superadmin

* revert node_modules

* revert package-lock.json
2024-01-24 09:26:23 +01:00
Guillaume Bouvignies
a190f9b91c feat: Custom concurrency key for scripts (#3046)
* feat: Custom concurrency key for scripts

* Add FE page for concurrency groups

* sqlx prepare

* rebase migration

* interpolate args value

* emptyString -> undefined
2024-01-23 12:46:19 +01:00
Guillaume Bouvignies
4f4b59c77a feat: Download button for s3 files (#3059)
* feat: Download button for s3 files

* Add S3 load and write endpoint to Python and TS SDK

* fix
2024-01-22 21:40:30 +01:00
Guillaume Bouvignies
326eac46fc feat: File path is option when uploading a file to S3 (#3029)
* feat: File path is option when uploading a file to S3

* Add frontend

* Fix lock

* Drag and drop file upload UI
2024-01-19 14:17:42 +01:00
Guillaume Bouvignies
b7d4971531 fix: lock file in metadata is now a string (#3027) 2024-01-17 20:06:33 +01:00
Guillaume Bouvignies
33788f6361 feat: add script bootstrap and script generate-metadata CLI commands (#3007)
* feat: add script bootstrap and script generate-metadata CLI commands

* Address PR comments on code
2024-01-16 18:25:51 +01:00
Guillaume Bouvignies
2edba18038 feat: Tag override for scheduled scripts (#2998)
* feat: Tag override for scheduled scripts

* Refactor WorkerTagPicker to component

* Fix test
2024-01-13 00:06:54 +01:00
Guillaume Bouvignies
c9962203c4 feat: GIt sync to multiple repo (#2996) 2024-01-12 16:19:28 +01:00
Guillaume Bouvignies
165d5cbfc8 feat: Instance group management page (#2994) 2024-01-12 13:37:06 +01:00
Guillaume Bouvignies
0a9127f30a feat: Instance group CRUD API (#2992) 2024-01-12 11:43:29 +01:00
Guillaume Bouvignies
b406f0995e feat: S3 multipart upload accepts a custom S3 resource (#2982) 2024-01-10 16:42:32 +01:00
Guillaume Bouvignies
dd56514e35 feat: git sync can now push commits to individual branches (#2959) 2024-01-05 15:52:18 +01:00
Guillaume Bouvignies
6f2ad5f5f4 feat: Detailed job memory footprint on job run page (#2956)
* feat: Detailed job memory footprint

* Address rubens comment

* double presion -> real

* sql query returns only metric_type
2024-01-05 09:13:05 +01:00
Guillaume Bouvignies
1ec1d94b78 feat: bun can read private npm package (#2915)
* feat: bun can read private package

* Add / at the end of url
2023-12-25 09:03:40 +01:00
Guillaume Bouvignies
cd48fdce2e feat: move S3 file within bucket (#2913) 2023-12-22 15:02:16 +01:00
Guillaume Bouvignies
2870d4882d feat: Retry for scheduled scripts (#2893)
* feat: Retry for scheduled scripts

* rename scheduldedscriptwithretry to singlescriptflow

* Schedule options under tabs
2023-12-22 14:59:46 +01:00
Guillaume Bouvignies
539312bb7e fix: Update S3 TS code snippets and Python SDK for Polars 0.20.X (#2911)
* fix: update S3 TS code snippets

* use S3Object type from SDK

* update python snippets as well

* Update python SDK for Polars 0.20.X
2023-12-22 08:39:35 +01:00
Guillaume Bouvignies
d238fc366a feat: S3 delete file and upload new (#2909) 2023-12-22 08:38:09 +01:00
Guillaume Bouvignies
fd55c3d8e3 feat: S3 objects are now typed in Python and TS SDK (#2878)
* feat: S3 objects are now typed in Python and TS SDK

* fix ts and python SDK after testing

* cleanup
2023-12-20 09:16:33 +01:00
Guillaume Bouvignies
b484a8dc27 feat: Add download button to S3 file picker (#2857) 2023-12-14 15:45:37 +01:00
Guillaume Bouvignies
71743801c8 feat: Cancel persistent script runs from drawer (#2847)
* feat: Cancel persistent script runs from drawer

* Add explicit buttons

* revert change to docker compose
2023-12-14 15:30:39 +01:00
Guillaume Bouvignies
953b80cab7 feat: Add jitter to exponential backoff (#2842) 2023-12-12 18:36:22 +01:00
Guillaume Bouvignies
346d9affa5 feat: Add possibility to delete flow step results when the flow is complete (#2806)
* feat: Add possibility to delete flow step results when the flow is complete

* Add third layer of tabs and gate feature to EE
2023-12-08 21:30:44 +01:00
Guillaume Bouvignies
925632ffd7 feat: CLI now accepts message arg for sync push (#2784) 2023-12-05 19:01:09 +01:00
Guillaume Bouvignies
2980402ca3 feat: History commit message can be updated from the UI (#2777)
* feat: History comit message can be updated from the UI

* Script version history

* Display commit message in left column

* Fix FE compile break

* sqlx prepare and fix openapi file
2023-12-05 15:45:36 +01:00
Guillaume Bouvignies
bfb5eb27b5 feat: Add workspace settings to sync scripts/flows/apps to git repo on deployment (#2740)
* feat: Add workspace settings to sync script to git repo on deployment

* track deployment callback jobs in separate table

* sqlx prepare

* update deployment_metadata table

* Point to hub script

* Add details to the settings page and restrict to EE only

* cleanup unused impots

* Flows and Apps are now pushed to GH as well

* Ignore scripts/flows/apps located in private user folders
2023-12-04 14:26:27 +01:00
Guillaume Bouvignies
ba5af7d069 feat: Various minor improvements for S3 DX (#2760)
* feat: Various minor improvements for S3 DX

* Fix openAPI yaml

* Remove unused imports
2023-12-04 13:20:04 +01:00
Guillaume Bouvignies
0882279055 fix: Various fixes and improvements for Windmill S3 capabilities (#2674) 2023-11-22 12:29:50 +01:00
Guillaume Bouvignies
90618274bb feat: Expanding an s3object result now opens the S3 file browser (#2656)
* feat: Expanding an s3object result now opens the S3 file browser

* Add s3 explorer link

* Revert changes in ArgInfo
2023-11-20 17:07:52 +01:00
Guillaume Bouvignies
9aea209226 feat: S3 file picker as a drawer (#2640)
* feat: Pick a S3 file drawer

* Add endpoint to generate simple file preview

* FE prototype for file preview

* More info on the preview

* Small fix

* Fix BE compile

* fix BE compile

* remove weird vite.config.js file

* Fix fronte NodeJS.Timer -> NodeJS.Timeout and rename dataset to file for S3

* Add EE restrictions and polish FE

* Fix merge conflicst

* replace dataset with s3 object

* Update wording

* BE throws an error when bucket too large in CE

* regenerate Cargo.lock

* Fix typo in error message
2023-11-20 10:26:36 +01:00
Guillaume Bouvignies
f932e4c916 feat: Add Python SDK capabilities to generate Polars and DuckDB connection settings to S3 (#2625)
* feat: Add Python SDK capabilities to generate Polars and DuckDB connection settings to S3

* Add endpoint to list S3 objects

* Add FE to set the workspace S3 resource

* Fix openapi

* sqlx prepare

* Hide Windmil LFS tab
2023-11-15 19:37:02 +01:00
Guillaume Bouvignies
08782f66e7 refactor: Slack error handler is handled mostly in frontend (#2601)
* refactor: Slack error handler is handled mostly in frontend

* sqlx prepare

* check for slack in function
2023-11-09 18:17:28 +01:00