This is an automated email from the ASF dual-hosted git repository. ryanahamilton pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/master by this push: new 943e3ca add an option to trigger a dag w/o changing conf (#15591) 943e3ca is described below commit 943e3cae9532371b3c18fb817be73744ed93e751 Author: Brent Bovenzi <brent.bove...@gmail.com> AuthorDate: Thu Apr 29 12:00:12 2021 -0500 add an option to trigger a dag w/o changing conf (#15591) --- airflow/www/static/css/main.css | 26 ++++++++++++++++++++++++++ airflow/www/templates/airflow/dag.html | 19 ++++++++++++++++--- airflow/www/templates/airflow/dags.html | 14 +++++++++++++- 3 files changed, 55 insertions(+), 4 deletions(-) diff --git a/airflow/www/static/css/main.css b/airflow/www/static/css/main.css index d202788..330ec42 100644 --- a/airflow/www/static/css/main.css +++ b/airflow/www/static/css/main.css @@ -464,3 +464,29 @@ label[for="timezone-other"], .loading-dots.refresh-loading { display: none; } + +.trigger-dropdown-btn { + border-bottom-right-radius: 0; + border-top-right-radius: 0; + border-right-width: 0; +} + +.trigger-dropdown-menu { + left: -80px; +} + +.dropdown-form-btn { + padding: 3px 20px; + line-height: 1.428571429; + color: #51504f; + background-color: white; + border: none; + width: 100%; + text-align: left; +} + +.dropdown-form-btn:hover, +.dropdown-form-btn:focus { + color: #262626; + background-color: #f5f5f5; +} diff --git a/airflow/www/templates/airflow/dag.html b/airflow/www/templates/airflow/dag.html index f7b14a0..20d4043 100644 --- a/airflow/www/templates/airflow/dag.html +++ b/airflow/www/templates/airflow/dag.html @@ -114,9 +114,22 @@ </div> <div class="col-md-2"> <div class="btn-group pull-right"> - <a href="{{ url_for('Airflow.trigger', dag_id=dag.dag_id, origin=url_for('Airflow.' + dag.default_view, dag_id=dag.dag_id)) }}" title="Trigger DAG" aria-label="Trigger DAG" class="btn btn-default btn-icon-only{{ ' disabled' if not dag.can_trigger }}"> - <span class="material-icons" aria-hidden="true">play_arrow</span> - </a> + <div class="dropdown"> + <a aria-label="Trigger DAG" class="btn btn-default btn-icon-only{{ ' disabled' if not dag.can_trigger }} trigger-dropdown-btn" data-toggle="dropdown"> + <span class="material-icons" aria-hidden="true">play_arrow</span> + </a> + <ul class="dropdown-menu trigger-dropdown-menu"> + <li> + <form method="POST" action="{{ url_for('Airflow.trigger') }}"> + <input type="hidden" name="csrf_token" value="{{ csrf_token() }}"> + <input type="hidden" name="dag_id" value="{{ dag.dag_id }}"> + <input type="hidden" name="origin" value="{{ url_for('Airflow.' + dag.default_view, dag_id=dag.dag_id) }}"> + <button type="submit" class="dropdown-form-btn">Trigger DAG</button> + </form> + </li> + <li><a href="{{ url_for('Airflow.trigger', dag_id=dag.dag_id, origin=url_for('Airflow.' + dag.default_view, dag_id=dag.dag_id)) }}">Trigger DAG w/ config</a></li> + </ul> + </div> <a href="{{ url_for('Airflow.refresh', dag_id=dag.dag_id) }}" title="Refresh DAG" aria-label="Refresh DAG" onclick="postAsForm(this.href); return false" class="btn btn-default btn-icon-only{{ ' disabled' if not dag.can_edit }}"> <span class="material-icons" aria-hidden="true">refresh</span> </a> diff --git a/airflow/www/templates/airflow/dags.html b/airflow/www/templates/airflow/dags.html index 34a1a4b..051bf79 100644 --- a/airflow/www/templates/airflow/dags.html +++ b/airflow/www/templates/airflow/dags.html @@ -179,9 +179,21 @@ <td class="text-center"> <div class="btn-group"> {% if dag %} - <a href="{{ url_for('Airflow.trigger', dag_id=dag.dag_id) }}" title="Trigger DAG" aria-label="Trigger DAG" class="btn btn-sm btn-default btn-icon-only {{ ' disabled' if not dag.can_trigger }}"> + <div class="dropdown"> + <a aria-label="Trigger DAG" class="btn btn-default btn-icon-only{{ ' disabled' if not dag.can_trigger }} trigger-dropdown-btn" data-toggle="dropdown"> <span class="material-icons" aria-hidden="true">play_arrow</span> </a> + <ul class="dropdown-menu trigger-dropdown-menu"> + <li> + <form method="POST" action="{{ url_for('Airflow.trigger') }}"> + <input type="hidden" name="csrf_token" value="{{ csrf_token() }}"> + <input type="hidden" name="dag_id" value="{{ dag.dag_id }}"> + <button type="submit" class="dropdown-form-btn">Trigger DAG</button> + </form> + </li> + <li><a href="{{ url_for('Airflow.trigger', dag_id=dag.dag_id) }}">Trigger DAG w/ config</a></li> + </ul> + </div> <a href="{{ url_for('Airflow.refresh', dag_id=dag.dag_id) }}" onclick="postAsForm(this.href); return false" title="Refresh DAG" aria-label="Refresh DAG" class="btn btn-sm btn-default btn-icon-only {{ ' disabled' if not dag.can_edit }}"> <span class="material-icons" aria-hidden="true">refresh</span> </a>