Re: Deferrable operators in system tests, how?

2023-06-07 Thread Ferruzzi, Dennis
FWIW, I'm liking the Breeze idea. I hadn't thought of it at first, but it seems to make the most sense. - ferruzzi From: Beck, Vincent Sent: Wednesday, June 7, 2023 7:21 AM To: dev@airflow.apache.org Subject: RE: [EXTERNAL]Deferrable operators in system

Re: Deferrable operators in system tests, how?

2023-06-07 Thread Beck, Vincent
Same here, I like the breeze option On 2023-06-07, 3:32 AM, "Pankaj Koti" mailto:pankaj.k...@astronomer.io.inva>LID> wrote: CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe.

Re: Deferrable operators in system tests, how?

2023-06-07 Thread Pankaj Koti
+1 to both ideas. I have a stronger +1 to include the flag with breeze since triggerer is an Airflow component and breeze commands having support for it would be nice. Regards, Pankaj Koti *Senior Software Engineer, *OSS Engineering Team. Location: Pune, India Timezone: Indian Standard Time

Re: Deferrable operators in system tests, how?

2023-06-06 Thread Daniel Standish
Don't think fixture would break that. It would just be test code not in the dag. It would just ensure that the triggerer is running before the tests that use the triggerer need it. But doing it in breeze makes more sense for sure. Although I suppose a combination approach could be considered EG,

Re: Deferrable operators in system tests, how?

2023-06-06 Thread Vandon, Raphael
Thanks for pointing out solutions I hadn't considered. > we could simply have a pytest fixture that will do the job (based on what > Daniel proposed). > It will not support running tests via Airflow UI or regular python execution > of the test files, > but maybe it's a good idea that does not

Re: Deferrable operators in system tests, how?

2023-06-04 Thread Jarek Potiuk
There are two options I think: 1) rely on Breeze as execution environment for System Tests and add a flag to start triggerer with system tests 2) add a pytest fixture that will do it automatically when system tests are run via pytests (that could be done via tests/system/conftest.py) I believe

Re: Deferrable operators in system tests, how?

2023-06-03 Thread Daniel Standish
I just took a look and it turns out that DebugExecutor works fine with triggerer you just need to have one running. You could run one in a subprocess. I experimented with refactoring the subprocess hook for this purpose (so you can start the subprocess asynchronously) and then ran this dag with

Re: Deferrable operators in system tests, how?

2023-06-02 Thread Phani Kumar
My preference would be Option 2 as that is closest to prod. Our approach is to spin up Airflow , install the providers that currently have deferrable functionality, and run system tests on those example DAGs on a daily basis . We are also running them on multiple executors (Celery, Kubernetes

Deferrable operators in system tests, how?

2023-06-02 Thread Vandon, Raphael
Hello, As we implement deferrable capabilities for operators, we're going to want to update the sample dags/system tests. The problem we encounter at the moment is that system tests are run with pytest using the DebugExecutor, and it only runs the "worker part" of the operators, without