I have a streaming apache beam pipeline that I want to deploy using DataflowRunner. My pipeline code looks something like this:
with beam.Pipeline(options=pipeline_options) as p:
(p | "Read input from PubSub" >>
beam.io.ReadFromPubSub(subscription=known_args.subscription)
# ...
Then I deploy the pipeline like this python3 main.py --runner=DataflowRunner --streaming ...
The pipeline is being deployed successfully but the problem is that the process does not end but continues to show logs coming from the workers.
Is there a way to start the pipeline, check that it's in a running state, and then exit the process?