wendrul
4facf3ca3e
feat: Add a devops role to act as a "readonly admin" ( #4775 )
...
* Prepare sqlx
* Add devops role as bool
* Add devops reloe and use it for certain endpoints
* Critical alerts: complete devops role visiblity
* Update ee repo ref
* Prepare sqlx
2024-11-22 14:55:48 +01:00
Alexander Petric
8909bea935
feat(schedule): support for extended cron syntax ( #4754 )
...
* init
* croner with fall back on scheduling failure
* adding packages
* fallback mechanism v1
* removing debug console log
* improving cargo organization
* queue cargo.toml
* use workspace cargo-tz
* test next occurrence when creating new croner schedule
* toggle label
* treat legacy edit requests where no cron_version is provided as v1
* fix edit schedule
2024-11-21 19:24:38 +01:00
Lucas Abel
e6c7fe7027
backend: rework raw values fetching logic ( #4770 )
2024-11-21 13:59:42 +01:00
Lucas Abel
c99d360c3c
fix: garbage collect job table + delete leaked ones ( #4767 )
2024-11-21 09:02:24 +01:00
wendrul
8f198ba68c
feat: Indexer improvements: s3 backup logic reworked, settings on the frontend ( #4763 )
...
* Add settings page + common code for indexer
* Prepare sqlx
2024-11-20 22:40:36 +01:00
Ruben Fiszel
f59c0c0076
fix: prevent groups to be ill-defined with non writer owners
2024-11-19 20:13:54 +01:00
Lucas Abel
97457a5679
feat(backend): move some static fields out of job tables ( #4689 )
...
* feat(backend): move some static fields out of job tables
* backend: re-use `flow_value` if any and avoid clone
* update minimal version to 1.427.0
2024-11-19 11:27:55 +01:00
HugoCasa
88b8ffab90
feat: kafka triggers ( #4713 )
...
* feat: kafka triggers
* sqlx
* fix build
* improve error messages on windows
* nit
* fix build
* missing action
* nit
* maybe fix ssl on windows
* nit
* update ee ref
---------
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com >
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2024-11-18 17:03:50 +01:00
Ruben Fiszel
0acd1b4a99
fix error logs on empty get_logs
2024-11-16 09:30:36 +01:00
Alexander Petric
c32038a76d
feat(monitoring): workspace critical alerts ( #4684 )
...
* critical alert ui
* updating ui, backend logic
* revert
* type check fix npm
* checking out cli files from main
* moving alert icon
* adding sqlx mock data
* more sqlx changes
* feat(frontend): nodes from flow can be connected directly in expr input through a plug icon (#4652 )
* Add flow prop picker
# Conflicts:
# frontend/src/lib/components/propertyPicker/PropPicker.svelte
* fix unwanted copy
* cleaning
* Fix unset context
* move button and always display input
* fix unwanted proppicker display
* update
* update
* clean all
* clean all
---------
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com >
* replace hide/show with toggle
* adding mutable setting and navigation to settings to configure channels
* merge fix
* ee non ee changees
* auto-acknowledge when muted
* pr comments
* fix bad log
* user inner modal component
* update unaknowledge alerts after acknowledging from modal
* aknowledge -> acknowledge
* format
* adding backend support for workspace critical alerts
* immediately check for alerts
* immediately check for alerts
* adding openapi changes
* simplify loading of superadmin/ee
* update modal logic
* frontend logic update
* sqlx prepare
* adding mute functionality for workspace critical alerts + show alerts button for instance and workspace settings
* npm / rust warnings & errors
* reverting non-mac cargo toml
* reverting non-mac cargo toml
* mute toggles in critical alert ui
* ui polish
* adding acknowledged_workspace column
* sqlx prepare
* make sure we wait for all stores to be loaded
* adding workspace mute logic to report_critical alert
* auto ack recovered alerts
* toggle workspace as superadmin and critical alerts in logs menu
* adding critical alert button if width < 786px
* refresh on change
* Move notification to logs (#4698 )
* Move notification to logs
* removing unused button
---------
Co-authored-by: Alexander Petric <petric.al@gmail.com >
* tailwind typo
* auto ack on mute
* don't change deref
* sqlx prep
* avoid renaming db column, keep acknowledged instead of acknowledged_global
* hide critical alert menu when not ee
* if workspace muted, also acknowledge global when workspace set
* removing save button for mute setting and improve ux/responsiveness
* fix: deployment callbacks have a concurrency limit of 1 on same path
* sqlx prep
* ee-repo ref
* z-[9999] for modal
---------
Co-authored-by: Guilhem <guilhemlemouel@gmail.com >
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com >
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2024-11-15 09:48:48 +01:00
dieriba
556b4a41a1
feat: Support mistral anthropic for ai ( #4692 )
...
* wip: openai proxy and other ai proxy integration
* fixing migration script
* wip: support different ai provider in front, fix proxy openai
* wip: adding frontend ai provider
* updated copilot types
* wip: working on anthropic integration
* done AI proxy front
* adding new type and support for anthropic
* updating gitignore
* adding streaming response
* added streaming prompt
* push lib/gen
* wip: fixing anthropic
* anthropic fully supported
* fix backend missing var error and fully support stream event for anthropic
* remove gen directory
* fixing openapi file
* add support for mistral, and update create workspace components
* remove deref.json
* remove package-json
* openapi
* fix ui enable code
* added utility function for init workspace ai provider
* fix workspace switch bug
* update anthropic property and fixed frontend error
* fix workspace settings
* update error message and fix typo migration file
* chore: update openapi file
* fix dev file
* add .sqlx
* all
* update sqlx
---------
Co-authored-by: dieriba <t.dieriba@gmail.com >
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com >
2024-11-14 14:24:35 +01:00
Ruben Fiszel
2a1bff3160
feat: allow setting password and login type from superadmin UI
2024-11-14 13:22:48 +01:00
Lucas Abel
50ff183bae
feat(backend): monitor minimal version of living workers ( #4704 )
2024-11-14 12:33:50 +01:00
Lucas Abel
4fdca87de9
nit: cleanup raw_flow usage ( #4707 )
...
* nit: cleanup `raw_flow` usage
* nit: refactor two queries into one
2024-11-14 12:23:27 +01:00
Lucas Abel
9163060c90
nix: nit fixes + bench script ( #4703 )
2024-11-14 09:08:11 +01:00
Lucas Abel
60186b8c9f
more benchmark methods ( #4695 )
...
* feat(backend): add `rawscript` to `add_batch_jobs` API
* bonus: improve `add_batch_jobs` API performances for `flow` kind
* add `bigrawscript` and `bigscriptinflow` to `benchmark_oneoff.ts`
* add `bigrawscript` and `bigscriptinflow` to the bench suite
2024-11-13 15:53:01 +01:00
Alexander Petric
d9148eaa78
feat(frontend): critical alerts UI ( #4653 )
2024-11-09 00:42:10 +01:00
HugoCasa
dc8bd6d2b5
feat: http custom routes for static assets ( #4666 )
...
* feat: http custom routes for static assets
* update ee ref + fix build
* fix build
* nit
2024-11-07 20:16:14 +01:00
HugoCasa
4dda0fb8cd
feat: websocket authentication ( #4635 )
...
* feat: websocket authentication
* npm check, sqlx and preprocessor template
* better run job
* nit
2024-11-05 11:54:08 +01:00
wendrul
77735d859c
feat: Add full-text search on windmill service logs ( #4576 )
...
* Add service_log indexer file (ee)
* Rename to completed_run
* rename to service_logs
* Update lib.rs
* Make indexing of logs and simple frontend
* Add common ee file
* Update lib.rs
* Make log search global to fix openapi unused path param
* Prepare sqlx
* Show last indexed also when no jobs are found
* Adapt feature flags to service logs indexer
* Update api and main
* Build service log search page
* scope query to the min and max time
* Migrate modal, bug fixes
* Remove unused import
* Make the service logs page take the full screen
* improve quick access menu to service_logs, fix date stuff, hide 0 matches
---------
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2024-11-05 09:52:07 +01:00
HugoCasa
7fdb524fc6
improve key renewal ( #4519 )
...
* improve key renewal
* sqlx and fix
* fix build
* improve everything
* nits
* nits
* update ee ref
* nit
2024-10-29 09:26:45 +01:00
Ruben Fiszel
85de44cb93
feat: autoscaling v0 ( #4593 )
...
* all
* all
all
all
all
all
all
all
all
all
* all
* all
* nits
* nits
2024-10-28 00:47:19 +01:00
Ruben Fiszel
2cbf027653
fix: do not update created_at of scripts on lockfile generation
2024-10-25 17:44:41 +02:00
HugoCasa
1741ce7823
fix ws killpill ( #4551 )
...
* websocket killpill
* oups
* nit
---------
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2024-10-19 01:17:15 +02:00
HugoCasa
b0fbcd8305
feat: websocket triggers ( #4505 )
...
* feat: websocket triggers
* fix
* frontend nits
* nits
* new trigger UI
* sqlx
2024-10-18 00:21:52 +02:00
wendrul
bfc1f53cea
Win 465 index observability 1 ( #4538 )
...
* Factor isJobCancellable function in a utils file
* Add message for last indexed job and warning of deployement
* Prepare sqlx
* Update ee repo ref
2024-10-16 19:25:50 +02:00
Faton Ramadani
258445e523
feat(frontend): unify all triggers UX and simplify flow settings ( #4259 )
...
* feat(frontend): added list of triggers in the flow graph
* feat(frontend): added list of triggers in the flow graph
* feat(frontend): clean up
* feat(frontend): improve UX
* feat(frontend): triggers
* feat(frontend): triggers
* feat(frontend): done
* feat(frontend): fix trigger when position when a preprocessor is presetn
* Glm/rework flow settings v2 (#4497 )
* fat(frontend): simplify flow settings menu
* improve scroll
* changing mute toggle
* Add advanced settings badge
* Add nord theme colors
* Add bage for advanced options
* fix minor issue
* fix minor issue
* Add triggers menu to flow settings
* Add quick trigger access
* remove triggers in flow settings
* fix minor issue
* Move triggers settings to flow right panel
* polishing
* fix unset store
* remove save up to for triggers
* fix padding
* reset default tag color
* remove custom select component
* revert path change
* revert section modif
* Revert unused feature
---------
Co-authored-by: Guilhem <guilhem@mbp-de-windmill.home >
* Connect top bar cron to schedules settings
* Turn copilot into node
* fix copilot placement
* remove useless import
* fix center copilot
* fix binding
* remove copilot on top of preprocessor
* render copilot node on condition
* quickfix
* remove copilot node
* fix minor issues
* fix route count update
* fix schedule sync
* harmonize colors
* fix alignment and add edges
* recenter node summary
* fix schedules sync
* Add id title
* all
* all
* all
* iteration
* all
* all
* done
* fix
* more fixes
---------
Co-authored-by: Guilhem <guilhemlemouel@gmail.com >
Co-authored-by: Guilhem <guilhem@mbp-de-windmill.home >
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com >
2024-10-16 17:58:15 +02:00
wendrul
98a64188f5
fix: Add indexer backup lock to fit the deployment model ( #4531 )
...
* Pass db to init_index
* Prepare sqlx
* Update ee repo ref
2024-10-16 14:36:12 +02:00
Ruben Fiszel
ba9c51a1b0
sqlx
2024-10-09 21:17:01 +02:00
HugoCasa
8841180b5f
BYPASSRLS admin policy falllback ( #4493 )
...
* BYPASSRLS admin policy falllback
* use fixed list instead
---------
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2024-10-08 20:08:29 +02:00
HugoCasa
f61c8f45a4
fix sqlx skip step ( #4466 )
2024-10-01 13:34:31 +02:00
HugoCasa
41ff40f777
send stats when renewing key if last >24h ( #4430 )
...
* feat: send stats when renewing key if last >24h
* nits
* fix: sqlx
* nit
* renewal reason
* stats reason
* update ee ref
* Update ee-repo-ref.txt
---------
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2024-09-30 12:23:07 +02:00
Ruben Fiszel
ddd3e46afa
optimize flow update parallel queries
2024-09-29 13:17:11 +02:00
Ruben Fiszel
043fd83aae
optimize early stop query
2024-09-29 01:19:06 +02:00
Ruben Fiszel
887fd9043e
optimize more queries
2024-09-28 17:34:37 +02:00
Ruben Fiszel
6206f5e75e
improve suspend_first frequency behavior
2024-09-28 15:50:12 +02:00
Ruben Fiszel
bd6ddc166b
feat(cli): add queues, workers and worker-groups commands ( #4439 )
...
* all
* all
* all
* all
* all
* all
* all
* all
* all
* all
* all
* all
* all
* all
2024-09-26 11:27:37 +02:00
Ruben Fiszel
0fc74340b0
improve init script error handling
2024-09-24 19:27:00 +02:00
Ruben Fiszel
efbcb1ffdd
fix: migrate smtp instance settings to global settings ( #4416 )
...
* all
* all
* all
* fix
* update ee private
* all
2024-09-21 01:42:15 +02:00
HugoCasa
ae8f29a4cb
feat: http routing ( #4339 )
...
* feat: http routing
* all
* feat: improve UI
* final stuff
* fix: sqlx
* fix: nit
* fix: nits
* fix: error handler display
* fix: routes panel perms
* all
* fix: improve ability to paste from macos in vscode extension
* fix lock-write for deno
* all
* cleaning
* fix
* cli preprocessor
* nits
* nits
---------
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com >
2024-09-20 15:38:38 +02:00
wendrul
b0cb1e0b27
feat: ansible playbook support ( #4399 )
...
* Ansible execution and parsing
* Working collections and pip dependencies
* Remove unused vars
* File resources logic for ansible
* Make frontend for ansible and resource file
* Format file
* Change naming of file resource and inventory fields
* Add autocomplete for file extension resource creation
* Add endpoint to list file formats for resource types
* Add CLI functionality to pull/push file resources
* Add beta tag to ansible
* Add Full image dockerfiles containing ansible
* Prepare sqlx
* Update cargo.lock
* Update ansible path
* Remove unused imports
* Add back import removed by rust-analyzer
* Improve ansible init code
* Prepare sqlx
* Change dockerfile to make the full windmill image
* Remove old dockerfile
* Improve autocomplete file resource extension select
* Remove comment
* Validate file extension
* Add icons to text file resources
* Remove editability of file resource types
* Remove unused import
* Missing space
* Add yaml parser
2024-09-19 00:21:15 +02:00
pyranota
d3e0b1c636
feat: Allow setProgress and getProgress from within the script ( #4400 )
...
* Allow setting progress explicitly from script body.
This feature exposes:
* `getProgress`
* `setProgress`
* `incProgress`
API in TypeScript client (python is coming soon).
NOTE: Progress cannot be out of range 0..100 and cannot decrease.
With exposed APIs there is also UI changes, so progress can be shown for individual jobs as well.
For optimization reasons, jobs start to ask for progress only after N-seconds of execution.
* feat: Add `shell.nix`
If you dont have anything but nix, dont worry, run nix-shell in root, or activate with direnv and get all needed dependencies
NOTE: You will still need docker
* feat: Add `dev.nu` to typescript client
Little helper function, allowing developer to work on ts client easier.
To use:
`./dev.nu watch`
Now add import of windmill in body of your script and `//nobundle` on top of the file
Edit ts client in your favourite editor and hit save. Script will do the rest.
* Cleanup files
* Fix: Failed to deserialize query string: missing field `get_progress`
* perf: Implement non-naive polling mechanism for getting job progress
* Add independant delay for getProgress
Problem in `TestJobLoader`:
There should be 2 delays:
One until we find our first progress (every 5s)
Once we found our first progress, we can do it every second
* nit: Use `query_scalar!` instead of `query_as`
* Fix: Sql error, no rows returned by a query that expected to return at least one row
* refactor: Remove global CSS for JobProgressBar
* Change UI for progress of flow subjobs
* Replace `Step 1` with `Running` in ProgressBar for individual jobs
* Remove `incProgress`
incProgress is not very usefull and error-prone
* perf: Set metric only for jobs that are actually using it
(https://github.com/windmill-labs/windmill/pull/4373#discussion_r1759843773 )
* Offload registering progress from clients to server
* Add `jobId?` argument to typescript-client's `setProgress` and `getProgress`
Allows to set progress of other jobs and flows,
if jobId specified, than flow id will be inferred automatically.
Could be used by SDK.
* Add `Error::MetricNotFound` for better error handling
* Fix: Make `JobProgressBar` display in red when failed
* Add persistant progress bar
Now you can reload the page after job is done and progress will be still there
* Allow succeeded individual job's progress bar stick to 100%
* Add python support
* nit: Remove usage of undefined variable in python-client
* Add `async` in ts client (for error handling)
* nit(frontend): Remove unused import
* Dont load JobProgressBar when it is not needed
* nit: npm check fix
* cargo sqlx prepare
* fix sqlx
---------
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com >
2024-09-18 01:16:19 +02:00
HugoCasa
d3e8731be2
feat: failed key renewal alert + renew on start if no recent renewal ( #4387 )
...
* feat: failed key renewal alert + renew on start if no recent renewal
* Update ee-repo-ref.txt
2024-09-16 16:54:35 +02:00
Ruben Fiszel
d533a017a7
fix: improve first time setup experience
2024-09-15 21:02:36 +02:00
HugoCasa
6ca628c811
fix: queue metrics graph ( #4388 )
2024-09-13 23:34:48 +02:00
Ruben Fiszel
458dcfe1e8
fix: handle better same_worker flow monitor
2024-09-11 01:29:40 +02:00
HugoCasa
a009c8df23
feat: schedule success handler ( #4346 )
2024-09-06 19:03:09 +02:00
Ruben Fiszel
84e18c73c0
fix: improve wm_labels indices + UX nits
2024-09-04 11:40:23 +02:00
HugoCasa
c487934e3b
feat: add slack as a critical alert channel ( #4319 )
...
* feat: add slack as a critical alert channel
* update ee ref
2024-09-04 09:48:13 +02:00
Ruben Fiszel
c429e09211
nits zombie job log improvement
2024-09-01 10:36:53 +02:00