Skip to content

Commit f3eeb77

Browse files
authored
patch/run markdown linting on docs (#1642)
* run markdown linter * replace text blocks
1 parent 7bb8f8c commit f3eeb77

File tree

232 files changed

+3066
-761
lines changed

Some content is hidden

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

232 files changed

+3066
-761
lines changed

.markdownlint-cli2.jsonc

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"config": {
3+
"default": true,
4+
"MD013": false,
5+
"MD024": false,
6+
"MD033": false,
7+
"MD041": false,
8+
"MD059": false,
9+
"MD060": false
10+
},
11+
"globs": [
12+
"docs/**/*.md",
13+
"README.md",
14+
"CONTRIBUTING.md",
15+
"SECURITY.md"
16+
]
17+
}

AGENTS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ Assets consist of:
5252

5353
### Pipelines
5454
Groups of assets executed together in dependency order. Structure:
55-
```
55+
```text
5656
my-pipeline/
5757
├─ pipeline.yml
5858
└─ assets/

CONTRIBUTING.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
First off, thank you for considering contributing to Bruin!
44

55
There are a few ways to contribute:
6+
67
- [Reporting bugs](https://github.com/bruin-data/bruin/issues)
78
- Suggesting features
89
- Writing documentation
@@ -11,7 +12,9 @@ There are a few ways to contribute:
1112
We are pretty chill about the format of the contribution, although having an issue first to discuss the change is always a good idea. Feel free to deliver a PR early, we can always iterate on it.
1213

1314
## Writing Code
15+
1416
There are a few guidelines that you should follow when writing code:
17+
1518
- All new features should be covered by tests.
1619
- All new features should be documented.
1720
- The pull request should contain detailed description of the changes made, as well as the reasoning behind them.
@@ -31,11 +34,11 @@ We use Makefile to build the code, which contains a set of commands to lint, tes
3134
- If you get errors related to missing duckdb library, try running `make duck-db-static-lib` and retrying.
3235

3336
You can simply run it:
37+
3438
```sh
3539
./bin/bruin --help
3640
```
3741

3842
### Testing
3943

4044
You can run the tests by running `make test`.
41-

README.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
<p align="center">
2-
<img src="./resources/logo-horizontal.svg" width="500" />
2+
<img alt="Bruin Logo" src="./resources/logo-horizontal.svg" width="500" />
33
</p>
44

55
Bruin is a data pipeline tool that brings together data ingestion, data transformation with SQL, Python & R, and data quality into a single framework. It works with all the major data platforms and runs on your local machine, an EC2 instance, or GitHub Actions.
66

77
<img alt="Bruin CLI - Demo" src="./resources/demo.gif" width="1200" />
88

99
Bruin is packed with features:
10+
1011
- 📥 ingest data with [ingestr](https://github.com/bruin-data/ingestr) / Python
1112
- ✨ run SQL, Python & R transformations on [many platforms](https://getbruin.com/docs/bruin/#supported-platforms)
1213
- 📐 table/view [materializations](https://getbruin.com/docs/bruin/assets/materialization.html), incremental tables
@@ -28,15 +29,12 @@ Please see the installation instructions [here](https://getbruin.com/docs/bruin/
2829

2930
Join our Slack community [here](https://join.slack.com/t/bruindatacommunity/shared_invite/zt-3cymzktqu-bvFxPGyQHpvi~dok_W0L3w).
3031

31-
3232
<div style="margin-top: 24px;">
3333
<a target="_blank" href="https://join.slack.com/t/bruindatacommunity/shared_invite/zt-3cc6e0hbr-zrW8nxxtEewahu2wIqTzYw" style="background:none">
34-
<img src="https://img.shields.io/badge/slack-join-dlt.svg?color=d95f5f&logo=slack" style="width: 180px;" />
34+
<img alt="Join Bruin Slack Community" src="https://img.shields.io/badge/slack-join-dlt.svg?color=d95f5f&logo=slack" style="width: 180px;" />
3535
</a>
3636
</div>
3737

38-
3938
## Quickstart
4039

4140
Take a look at our quickstart guide [here](https://getbruin.com/docs/bruin/getting-started/introduction/quickstart.html).
42-

docs/assets/columns.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ Bruin supports column definitions inside assets to make them a part of your data
44

55
- you can document the existing columns in an asset and add further metadata, e.g. `primary_key`
66
- you can define column-level quality checks
7-
- you can define whether or not a column should be updated as a result of a [
8-
`merge` materialization](./materialization.md#merge)
7+
- you can define whether or not a column should be updated as a result of a [`merge` materialization](./materialization.md#merge)
98

109
## Definition Schema
1110

@@ -60,5 +59,6 @@ The structure of the quality checks is rather simple:
6059
|------------|--------|------|-------------------------------------------------------------------|
6160
| `name` | String | yes | The name of the quality check, see [Quality](../quality/overview) |
6261
| `blocking` | Bool | no | Whether the check should block the downstreams, default `true` |
63-
| `value` | Any | no | Check-specific expected value |
64-
For more details on the quality checks, please refer to the [Quality](../quality/overview) documentation.
62+
| `value` | Any | no | Check-specific expected value |
63+
64+
For more details on the quality checks, please refer to the [Quality](../quality/overview) documentation.

docs/assets/dashboard.md

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ Bruin supports the following dashboard tools as assets:
2121
- Tableau: `tableau`
2222

2323
## Definition Schema
24+
2425
Dashboard assets are defined using the extension `{asset_name}.asset.yml`. Here is an example of the schema:
2526

2627
```yaml
@@ -41,96 +42,108 @@ tags:
4142
## Supported Dashboard Tools
4243
4344
### Amazon QuickSight
45+
4446
```yaml
4547
name: myschema.asset_name
4648
type: quicksight
4749
```
4850
4951
### Apache Superset
52+
5053
```yaml
5154
name: myschema.asset_name
5255
type: superset
5356
```
5457
5558
### Domo
59+
5660
```yaml
5761
name: myschema.asset_name
5862
type: domo
5963
```
6064
6165
### Good Data
66+
6267
```yaml
6368
name: myschema.asset_name
6469
type: gooddata
6570
```
6671
6772
### Grafana
73+
6874
```yaml
6975
name: myschema.asset_name
7076
type: grafana
7177
```
7278
7379
### Looker
80+
7481
```yaml
7582
name: myschema.asset_name
7683
type: looker
7784
```
7885
7986
### Looker Studio
87+
8088
```yaml
8189
name: myschema.asset_name
8290
type: looker_studio
8391
```
8492
8593
### Metabase
94+
8695
```yaml
8796
name: myschema.asset_name
8897
type: metabase
8998
```
9099
91100
### Mode BI
101+
92102
```yaml
93103
name: myschema.asset_name
94104
type: modebi
95105
```
96106
97107
### Power BI
108+
98109
```yaml
99110
name: myschema.asset_name
100111
type: powerbi
101112
```
102113
103114
### Qlik Sense
115+
104116
```yaml
105117
name: myschema.asset_name
106118
type: qliksense
107119
```
108120
109121
### Qlik View
122+
110123
```yaml
111124
name: myschema.asset_name
112125
type: qlikview
113126
```
114127
115128
### Redash
129+
116130
```yaml
117131
name: myschema.asset_name
118132
type: redash
119133
```
120134
121135
### Sisense
136+
122137
```yaml
123138
name: myschema.asset_name
124139
type: sisense
125140
```
126141
127142
### Tableau
143+
128144
Tableau assets allow you to both define and refresh Tableau dashboards, workbooks, and worksheets. Please see the [Tableau assets](./tableau-refresh) for more information.
129145
130146
```yaml
131147
name: myschema.asset_name
132148
type: tableau
133149
```
134-
135-
136-

docs/assets/definition-schema.md

Lines changed: 34 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
# Asset Definition
2+
23
Assets are defined in a YAML format in the same file as the asset code.
34
This enables the metadata to be right next to the code, reducing the friction when things change and encapsulating the relevant details in a single file.
45
The definition includes all the details around an asset from its name to the quality checks that will be executed.
56

67
Here's an example asset definition:
8+
79
```bruin-sql
810
/* @bruin
911
@@ -51,57 +53,75 @@ Assets that are defined as YAML files have to have file names as `<name>.asset.y
5153
:::
5254

5355
## `name`
56+
5457
The name of the asset, used for many things including dependencies, materialization and more. Corresponds to the `schema.table` convention.
5558
Must consist of letters and dot `.` character.
59+
5660
- **Type:** `String`
5761

5862
## `uri`
63+
5964
We use `uri` (Universal Resource Identifier) as another way to identify assets. URIs must be unique across all your pipelines and can be used to define [cross pipeline dependencies](../cloud/cross-pipeline).
65+
6066
- **Type:** `String`
6167

6268
## `type`
69+
6370
The type of the asset determines how execution will happen. Must be one of the types listed in <a href="https://github.com/bruin-data/bruin/blob/main/pkg/pipeline/pipeline.go#L31">pkg/pipeline/pipeline.go</a>.
71+
6472
- **Type:** `String`
6573

6674
## `owner`
75+
6776
The owner of the asset, has no functional implications on Bruin CLI as of today, allows documenting the ownership information. On [Bruin Cloud](https://getbruin.com), it is used to analyze ownership information, used in governance reports and ownership lineage.
77+
6878
- **Type:** `String`
6979

7080
## `tags`
81+
7182
As the name states, tags that are applied to the asset. These tags can then be used while running assets, e.g.:
83+
7284
```bash
7385
bruin run --tag client1
7486
```
87+
7588
- **Type:** `String[]`
7689

7790
## `domains`
91+
7892
Business domains that the asset belongs to. This is used for organizing and categorizing assets by business function or domain.
93+
7994
- **Type:** `String[]`
8095

8196
## `meta`
97+
8298
Additional metadata for the asset stored as key-value pairs. This can be used to store custom information about the asset that doesn't fit into other predefined fields.
99+
83100
- **Type:** `Object`
84101

85102
## `depends`
103+
86104
The list of assets this asset depends on. This list determines the execution order.
87105
In other words, the asset will be executed only when all of the assets in the `depends` list have succeeded.
88106
The items of this list can be just a `String` with the name of the asset in the same pipeline or an `Object` which can contain the following attributes
89-
* `asset` : The name of the asset. Must be on the same pipeline
90-
* `uri` : The URI of the upstream asset. This is used in [cloud](../cloud/overview.md) when you want to have an upstream on a different pipeline. See [uri](#uri) above
91-
* `mode`: can be `full` (a normal dependency) or `symbolic`. The latter being just for the purpose of showing lineage without the downstream actually depending or having to wait on the upstream to run.
92107

108+
- `asset` : The name of the asset. Must be on the same pipeline
109+
- `uri` : The URI of the upstream asset. This is used in [cloud](../cloud/overview.md) when you want to have an upstream on a different pipeline. See [uri](#uri) above
110+
- `mode`: can be `full` (a normal dependency) or `symbolic`. The latter being just for the purpose of showing lineage without the downstream actually depending or having to wait on the upstream to run.
93111

94-
```
112+
```yaml
95113
- asset: asset_name
96114
mode: symbolic
97115
```
98116
99-
100117
## `start_date`
118+
101119
The start date for the asset, used when running with full refresh (`--full-refresh`). When specified, the asset will process data starting from this date during full refresh runs (overrides the pipeline's start_date).
120+
102121
- **Type:** `String` (YYYY-MM-DD format)
103122

104123
## `interval_modifiers`
124+
105125
Controls how the processing window is adjusted by shifting the start and end times. Requires the `--apply-interval-modifiers` flag when running the pipeline.
106126

107127
```yaml
@@ -119,28 +139,34 @@ interval_modifiers:
119139

120140
Supported time units: `ns` (nanoseconds), `ms` (milliseconds), `s` (seconds), `m` (minutes), `h` (hours), `d` (days), `M` (months).
121141
See [interval modifiers](./interval-modifiers) for more details.
142+
122143
- **Type:** `Object`
123144

124145
## `rerun_cooldown`
146+
125147
Set a delay (in seconds) between retry attempts for failed assets. This helps prevent overwhelming downstream systems during failures and allows for temporary issues to resolve. If not specified, the asset inherits the pipeline's `rerun_cooldown` setting.
126148

127149
```yaml
128150
rerun_cooldown: 300 # Wait 5 minutes between retries
129151
```
130152

131153
**Special values:**
154+
132155
- `0`: No delay between retries (inherit from pipeline if not specified)
133156
- `> 0`: Wait the specified number of seconds before retrying
134157
- `-1`: Disable retry delays completely
135158

136159
When deploying to Airflow, this is automatically translated to `retries_delay` for compatibility.
160+
137161
- **Type:** `Integer`
138162

139163
## `materialization`
164+
140165
This option determines how the asset will be materialized. Refer to the docs on [materialization](./materialization) for more details.
141166

142167
## `hooks`
143-
Hooks let you run SQL snippets before and/or after the main asset query. This is useful for setup or cleanup (loading extensions, attaching databases, or writing run logs, etc.).
168+
169+
Hooks let you run SQL snippets before and/or after the main asset query. This is useful for setup or cleanup (loading extensions, attaching databases, or writing run logs, etc.).
144170

145171
```yaml
146172
hooks:
@@ -150,6 +176,7 @@ hooks:
150176
post:
151177
- query: "SET s3_region=''"
152178
```
179+
153180
Hooks are currently supported for SQL assets. Each hook entry supports a single `query` field and is executed in order. Queries may have a trailing `;` or not.
154181

155182
Hooks can also be set as pipeline defaults (see [pipeline defaults](/getting-started/pipeline#default-pipeline-level-defaults)). Assets inherit default `pre` and `post` hooks independently - defining only `pre` hooks on an asset will still inherit default `post` hooks.
@@ -161,6 +188,7 @@ Hooks can also be set as pipeline defaults (see [pipeline defaults](/getting-sta
161188
This is a list that contains all the columns defined with the asset, along with their quality checks and other metadata. Refer to the [columns](./columns.md) documentation for more details.
162189

163190
## `custom_checks`
191+
164192
This is a list of custom data quality checks that are applied to an asset. These checks allow you to define custom data quality checks in SQL, enabling you to encode any business logic into quality checks that might require more power.
165193

166194
```yaml

0 commit comments

Comments
 (0)