Skip to content

Commit 0b4d730

Browse files
authored
Mssql and app report (windmill-labs#435)
1 parent ebf38db commit 0b4d730

File tree

41 files changed

+255
-67
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+255
-67
lines changed

blog/2023-11-21-dedicated-workers/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ It is faster than AWS lambda: https://www.windmill.dev/docs/misc/benchmarks/aws_
4949

5050
### For Python and Typescript
5151

52-
Dedicated workers work with Typescript and Python scripts, they have the highest cold starts. Queries to databases such as PostgreSQL, MySQL, BigQuery, or bash and go scripts do not suffer from any cold starts and hence have the same benefits already without any compexity.
52+
Dedicated workers work with Typescript and Python scripts, they have the highest cold starts. Queries to databases such as PostgreSQL, MySQL, BigQuery, or Bash and Go scripts do not suffer from any cold starts and hence have the same benefits already without any complexity.
5353

5454
## How to assign dedicated workers to a script
5555

blog/2023-11-22-why-is-windmill-the-fastest-workflow-engine/index.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ hand-built workflow engine written on top of the amazing [BEAM](<https://en.wiki
134134

135135
There are tons of workflow engines, but not many of them are self-hostable and generic enough to support arbitrary workloads of jobs defined in code,
136136
and even those have restrictions:
137-
Some like Airflow and Prefect support only one runtime (Python). Windmill on the other hand supports Typescript/Javascript, Python, Go, Bash and direct SQL queries to BigQuery, Snowflake, Mysql, Postgresql. And its design makes it easy to add more upon request.
137+
Some like Airflow and Prefect support only one runtime (Python). Windmill on the other hand supports Typescript/Javascript, Python, Go, Bash and direct SQL queries to BigQuery, Snowflake, Mysql, Postgresql, MSSQL. And its design makes it easy to add more upon request.
138138
Some are notoriously hard to write for (because of complex SDKs, looking at you Airflow's XCOM or Temporal idempotency primitives) and deploy to. Windmill offers an [integrated DX to build and test workflows](/docs/flows/flow_editor) in a few minutes interactively in a mix of raw code for the steps and low-code (or YAML) for the DAG itself. It is also possible to define them wholly with code and full version control using our [VS Code extension](/blog/launch-week-1/vscode-extension).
139139

140140
One benefit of being very fast is that it makes running tests very fast too both in terms of latency to start and to run. Wasting time waiting for previews and tests to run is not fun.
@@ -303,7 +303,7 @@ json*path.map(|x| x.split(".").map(|x| x.to_string()).collect::<Vec<*>>())
303303

304304
## Workers efficiency
305305

306-
In normal mode, workers pull job one at a time, identify the language used by the job (python, typescript, go, bash, snowflake, Postgresql, mysql, mssql, bigquery) and then spawn the corresponding runtime then run the job.
306+
In normal mode, workers pull job one at a time, identify the language used by the job (Python, TypeScript, Go, Bash, SnowFlake, PostgreSql, MySql, MSSQL, BiQquery) and then spawn the corresponding runtime then run the job.
307307

308308
Workers run jobs bare, without running containers which gives us a performance boost compared to container based workflow engines. However, for sandboxing purposes, workers themselves can be run inside containers and can run each job in an nsjail sandbox.
309309

docs/advanced/1_self_host/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -534,7 +534,7 @@ When creating a workspace, you have the option to invite automatically everyone
534534

535535
What distinguishes the admin workspace from other workspaces is that its [resource types](../../core_concepts/3_resources_and_types/index.mdx) are shared with all workspaces.
536536

537-
If you skipped the instance setup or need to sync resource types, you can go to the admins workspace and run the _Synchronize Hub Resource types with instance_ script, or [schedule](../../core_concepts/1_scheduling/index.md) it.
537+
If you skipped the instance setup or need to sync resource types, you can go to the admins workspace and run the _Synchronize Hub Resource types with instance_ script, or [schedule](../../core_concepts/1_scheduling/index.mdx) it.
538538

539539
![Sync resource types](./sync_resource_types.gif 'Sync resource types with Hub')
540540

docs/apps/0_app_editor/index.mdx

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -200,15 +200,21 @@ Styling on the app editor can be managed at the component and app-level, with pr
200200

201201
<div class="grid grid-cols-2 gap-2 my-4">
202202
<DocCard
203-
title="Group of Components"
204-
description="Components can be grouped within containers."
205-
href="/docs/apps/app_configuration_settings/components_groups"
203+
title="Public Apps"
204+
description="Apps can be accessed as a standalone app by anyone who has the secret URL."
205+
href="/docs/apps/public_apps"
206206
color="orange"
207207
/>
208208
<DocCard
209-
title="Public Apps"
210-
description="Apps can be accessed as a standalone app by anyone who has the secret URL"
211-
href="/docs/apps/public_apps"
209+
title="Schedule App Reports"
210+
description="Send a PDF or PNG preview of any app at a given schedule."
211+
href="/docs/apps/schedule_reports"
212+
color="orange"
213+
/>
214+
<DocCard
215+
title="Group of Components"
216+
description="Components can be grouped within containers."
217+
href="/docs/apps/app_configuration_settings/components_groups"
212218
color="orange"
213219
/>
214220
<DocCard

docs/apps/10_schedule_reports.mdx

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
import DocCard from '@site/src/components/DocCard';
2+
3+
# Schedule App Reports
4+
5+
Send a PDF or PNG preview of any app at a given [schedule](../core_concepts/1_scheduling/index.mdx). Enabling this feature will create a flow and a schedule in your workspace.
6+
7+
<iframe
8+
style={{ aspectRatio: '16/9' }}
9+
src="https://www.youtube.com/embed/4VSAZ-WTh4Y?vq=hd1080"
10+
title="Scheduled App Reports Tutorial"
11+
frameBorder="0"
12+
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
13+
allowFullScreen
14+
className="border-2 rounded-xl object-cover w-full dark:border-gray-800"
15+
></iframe>
16+
17+
<br/>
18+
19+
For the flow to be executed, you need to set the WORKER_GROUP environment variable of one of your [workers](../core_concepts/9_worker_groups/index.mdx) to "reports" or add the tag "chromium" to one of your worker groups.
20+
21+
## Startup duration in seconds
22+
23+
Startup duration is the number of seconds to wait before capturing a preview to ensure that all startup scripts have been executed.
24+
25+
It can be defined manually.
26+
27+
## Screenshot kind
28+
29+
Whether you want the screenshot to be in pdf or png (useful for previews).
30+
31+
## Notification
32+
33+
![Report Notitications](../assets/apps/10_schedule_reports/notifications.png "Report Notitications")
34+
35+
Reports will be sent through a dedicated medium. Under [cloud & self-hosted Pro & Enterprise plans](../misc/7_plans_details/index.mdx), screenshots can be sent through pre-set scripts to Slack (on your workspace's chosen [Slack resource](../integrations/slack.mdx)), [Discord](../integrations/discord.md), or Email ([SMTP](../integrations/smtp.md)). Otherwise, you can pick a custom script to handle the report.
36+
37+
![App Report on Discord](../assets/apps/10_schedule_reports/app_report_discord.png "App Report on Discord")
38+
39+
## More about Schedules
40+
41+
<div class="grid grid-cols-2 gap-6 mb-4">
42+
<DocCard
43+
title="Schedules"
44+
description="Scheduling allows you to define schedules for Scripts and Flows, automatically running them at set frequencies."
45+
href="/docs/core_concepts/scheduling"
46+
color="orange"
47+
/>
48+
</div>
Loading
Loading
Loading

docs/compared_to/prefect.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,12 @@ Prefect's [monitoring](#observability--monitoring) is done through a cloud platf
6262

6363
Prefect and Windmill Flow Editor have a very similar sets of features. Below are the advanced features presented by Prefect and, in backlink, their counterpart on Windmill:
6464

65-
- [scheduling](../core_concepts/1_scheduling/index.md)
65+
- [scheduling](../core_concepts/1_scheduling/index.mdx)
6666
- [retries](../flows/14_retries.md)
6767
- [logging](../core_concepts/14_audit_logs/index.mdx)
6868
- [convenient async functionality](../core_concepts/4_webhooks/index.mdx#asynchronous)
6969
- [caching](../flows/4_cache.mdx)
70-
- [notifications](../core_concepts/1_scheduling/index.md#be-notified-every-time-a-scheduled-workflow-has-been-executed)
70+
- [notifications](../core_concepts/1_scheduling/index.mdx#be-notified-every-time-a-scheduled-workflow-has-been-executed)
7171
- [observability](../core_concepts/5_monitor_past_and_future_runs/index.mdx)
7272
- [event-based orchestration](../getting_started/9_trigger_flows/index.mdx)
7373

docs/compared_to/retool.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ Windmill's ability to quickly add the components that are useful to them.
180180

181181
## Everything else
182182

183-
For everything else, it's comparable: you can run on [schedules](../core_concepts/1_scheduling/index.md) or [webhooks](../core_concepts/4_webhooks/index.mdx),
183+
For everything else, it's comparable: you can run on [schedules](../core_concepts/1_scheduling/index.mdx) or [webhooks](../core_concepts/4_webhooks/index.mdx),
184184
[source control](../core_concepts/17_collaboration/index.mdx#git-integration),
185185
seamlessly interact your apps with [databases](../integrations/postgresql.md),
186186
[link runnables to components](../apps/3_app-runnable-panel.mdx), give [styling](../apps/4_app_configuration_settings/4_app_styling.mdx) to apps, [resources](../core_concepts/3_resources_and_types/index.mdx) are handled in a similar way.

0 commit comments

Comments
 (0)