apache / apache/airflow

YAML input in trigger UI

Open
#51,428 1 comment 0 reactions 0 assignees View on GitHub
area:UI kind:feature
Dominant language
Python
Stars
46.9k
Forks
17.8k
Avg merge
2d 10h
Merged PRs (30d)
483

Description

### Description

I work in a project where having a yaml input in the web UI (instead of json -> which is in the case of object type param) is beneficial.

I understand that airflow support multiple datatypes - ints, strings, list/arrays, and objects.
Is it possible to also have yaml as a input.

On a sidenote: I thought of interpreting multiline input, i.e., list of strings as my input, which I can join and interpret as yaml.
However, airflow tends to remove trailing white spaces in string list items, thereby losing indentation information.
example:

a multiline array input of
```
a:
b: c
```

is incorrectly transformed to yaml of this form:
```yaml
{a: None, b: c}
```
instead of:
```yaml
{a: {b: c}}
```

is this the intended purpose or is this is a bug??

### Use case/motivation

I would like a human readable input, where the user can copy paste their yaml files in a text box.

### Related issues

I thought of interpreting multiline input, i.e., list of strings as my input, which I can join and interpret as yaml.
However, airflow tends to remove trailing white spaces in string list items, thereby losing indentation information.
### Are you willing to submit a PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [x] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

Contributor guide

Open the contributing guide

Research direction

No file or test is named in the issue. Start by tracing the trigger UI's handling of object and multiline inputs, then verify how whitespace and indentation are preserved; the work is done when a user can paste human-readable YAML into the UI without losing its nesting.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, yaml
Domain
frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.