Как извлечь переменную xcom из предыдущего запуска

Как вытащить переменную xcom из предыдущего запуска в воздушном потоке? Является ли это возможным?

Я хочу использовать значение из того же task_id в предыдущем run_id в качестве переменной jinja для аргумента data в SimpeHttpOperator.

f

Я ищу в документах макросов https://airflow.apache.org/docs/stable/macros.html и не могу найти какой-либо задокументированный способ сделать это.

UPD Пример:

select_expired = SimpleHttpOperator(
    task_id='select_expired',
    http_conn_id='clickhouse_http',
    endpoint='/',
    method='POST',
    data=REQUESTED_EXPIRED_FLIGHTS,
    xcom_push=True,
    pool='clickhouse_select',
    dag=dag
)

где REQUESTED_EXPIRED_FLIGHTS:

insert into table where column = '{{ ??????? (value returned in previous task) }}'

person Eduard Golubov    schedule 30.01.2020    source источник


Ответы (1)


У вас должна быть возможность получить доступ к предыдущему экземпляру задачи, используя _ 1_

Затем вы можете использовать get_state(), чтобы получить его состояние и выполнять действия на его основе.

person victorface2    schedule 31.01.2020
comment
Не могли бы вы дать в ответ еще немного пояснения к обновленному примеру? - person Eduard Golubov; 01.02.2020
comment
Привет, Эдуард, извини за задержку, могу. Не могли бы вы предоставить мне в помощь более крупный фрагмент кода? - person victorface2; 20.02.2020