kimminw00 opened a new issue, #35259:
URL: https://github.com/apache/airflow/issues/35259

   ### Description
   
   We use private staging and prod S3s(Ceph clusters for example) in our office.
   So there are often cases where DAGs are running with only connection ids 
changed.
   We prefer to use <code>Param</code> rather than to use hardcoded connection 
ids to make our code reusable.
   I only gave an example for Amazon operator, but templating connection ids is 
required for other operators too.
   
   Why is it needed?
   Code reusability
   
   ### Use case/motivation
   
   ```Python3
   with DAG(
       dag_id="example_s3",
       params={
           "aws_conn_id": Param("", type="string"),
       },
       ...
   ) as dag:
   
       create_object = S3CreateObjectOperator(
           task_id="create_object",
           s3_bucket=bucket_name,
           s3_key=key,
           data=DATA,
           replace=True,
           aws_conn_id="{{ params.aws_conn_id }}", # Params enable us to 
provide runtime configuration
       )
   ```
   
   ### Related issues
   
   _No response_
   
   ### 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)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to