You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by GitBox <gi...@apache.org> on 2021/01/29 21:32:34 UTC

[GitHub] [airflow] fuxiao224 opened a new pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

fuxiao224 opened a new pull request #13980:
URL: https://github.com/apache/airflow/pull/13980


   Pass in an extra parameter (encryption_configuration) into airflow/providers/google/cloud/operators/bigquery.py BigQueryUpsertTableOperator class, so that the upsert operator will be able to support CMEK.
   
   
   <!--
   Thank you for contributing! Please make sure that your code changes
   are covered with tests. And in case of new features or big changes
   remember to adjust the documentation.
   
   Feel free to ping committers for the review!
   
   In case of existing issue, reference it using one of the following:
   
   closes: #ISSUE
   related: #ISSUE
   
   How to write a good git commit message:
   http://chris.beams.io/posts/git-commit/
   -->
   
   ---
   **^ Add meaningful description above**
   
   Read the **[Pull Request Guidelines](https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst#pull-request-guidelines)** for more information.
   In case of fundamental code change, Airflow Improvement Proposal ([AIP](https://cwiki.apache.org/confluence/display/AIRFLOW/Airflow+Improvements+Proposals)) is needed.
   In case of a new dependency, check compliance with the [ASF 3rd Party License Policy](https://www.apache.org/legal/resolved.html#category-x).
   In case of backwards incompatible changes please leave a note in [UPDATING.md](https://github.com/apache/airflow/blob/master/UPDATING.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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] boring-cyborg[bot] commented on pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
boring-cyborg[bot] commented on pull request #13980:
URL: https://github.com/apache/airflow/pull/13980#issuecomment-770061601


   Congratulations on your first Pull Request and welcome to the Apache Airflow community! If you have any issues or are unsure about any anything please check our Contribution Guide (https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst)
   Here are some useful points:
   - Pay attention to the quality of your code (flake8, pylint and type annotations). Our [pre-commits]( https://github.com/apache/airflow/blob/master/STATIC_CODE_CHECKS.rst#prerequisites-for-pre-commit-hooks) will help you with that.
   - In case of a new feature add useful documentation (in docstrings or in `docs/` directory). Adding a new operator? Check this short [guide](https://github.com/apache/airflow/blob/master/docs/apache-airflow/howto/custom-operator.rst) Consider adding an example DAG that shows how users should use it.
   - Consider using [Breeze environment](https://github.com/apache/airflow/blob/master/BREEZE.rst) for testing locally, it’s a heavy docker but it ships with a working Airflow and a lot of integrations.
   - Be patient and persistent. It might take some time to get a review or get the final approval from Committers.
   - Please follow [ASF Code of Conduct](https://www.apache.org/foundation/policies/conduct) for all communication including (but not limited to) comments on Pull Requests, Mailing list and Slack.
   - Be sure to read the [Airflow Coding style]( https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst#coding-style-and-best-practices).
   Apache Airflow is a community-driven project and together we are making it better 🚀.
   In case of doubts contact the developers at:
   Mailing List: dev@airflow.apache.org
   Slack: https://s.apache.org/airflow-slack
   


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] fuxiao224 commented on a change in pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
fuxiao224 commented on a change in pull request #13980:
URL: https://github.com/apache/airflow/pull/13980#discussion_r568225791



##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1912,8 +1920,11 @@ def __init__(
         self.gcp_conn_id = gcp_conn_id
         self.delegate_to = delegate_to
         self.location = location
+        self.encryption_configuration = encryption_configuration

Review comment:
       I was thinking that someone may need to use encription_configuration parameter in the future?




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] fuxiao224 closed pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
fuxiao224 closed pull request #13980:
URL: https://github.com/apache/airflow/pull/13980


   


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] fuxiao224 commented on a change in pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
fuxiao224 commented on a change in pull request #13980:
URL: https://github.com/apache/airflow/pull/13980#discussion_r571204620



##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1862,6 +1862,13 @@ class BigQueryUpsertTableOperator(BaseOperator):
     :type delegate_to: str
     :param location: The location used for the operation.
     :type location: str
+    :param encryption_configuration: [Optional] Custom encryption configuration (e.g., Cloud KMS keys).

Review comment:
       Thanks for your comments! Yes, it makes sense to me. Does this mean that we need to close this PR since we don’t need to modify Airflow at all, or does it mean that our solution here probably wouldn’t fix the CMEK supporting issue in upsert function so that we need to keep digging into it? 




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] fuxiao224 commented on a change in pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
fuxiao224 commented on a change in pull request #13980:
URL: https://github.com/apache/airflow/pull/13980#discussion_r568225791



##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1912,8 +1920,11 @@ def __init__(
         self.gcp_conn_id = gcp_conn_id
         self.delegate_to = delegate_to
         self.location = location
+        self.encryption_configuration = encryption_configuration

Review comment:
       I was thinking that someone may need to use encription_configuration parameter in the future?

##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1912,8 +1920,11 @@ def __init__(
         self.gcp_conn_id = gcp_conn_id
         self.delegate_to = delegate_to
         self.location = location
+        self.encryption_configuration = encryption_configuration

Review comment:
       I was thinking that someone may need to use encryption_configuration parameter in the future?




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] bingqinzhou commented on a change in pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
bingqinzhou commented on a change in pull request #13980:
URL: https://github.com/apache/airflow/pull/13980#discussion_r568080601



##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1912,8 +1920,11 @@ def __init__(
         self.gcp_conn_id = gcp_conn_id
         self.delegate_to = delegate_to
         self.location = location
+        self.encryption_configuration = encryption_configuration

Review comment:
       Would it be better to just pass `encryption_configuration` into `self.table_resource` instead of needing to define `self.encryption_configuration` here? 
   
   Something like: ```self.table_resource['encryptionConfiguration'] = encryption_configuration```




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] bingqinzhou commented on a change in pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
bingqinzhou commented on a change in pull request #13980:
URL: https://github.com/apache/airflow/pull/13980#discussion_r568080601



##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1912,8 +1920,11 @@ def __init__(
         self.gcp_conn_id = gcp_conn_id
         self.delegate_to = delegate_to
         self.location = location
+        self.encryption_configuration = encryption_configuration

Review comment:
       Would it be better to just pass `encryption_configuration` into `self.table_resource` instead of needing to define `self.encryption_configuration` here? 
   
   Something like: ```self.table_resource['encryptionConfiguration'] = encryption_configuration```




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] criccomini commented on a change in pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
criccomini commented on a change in pull request #13980:
URL: https://github.com/apache/airflow/pull/13980#discussion_r571177335



##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1912,8 +1920,11 @@ def __init__(
         self.gcp_conn_id = gcp_conn_id
         self.delegate_to = delegate_to
         self.location = location
+        self.encryption_configuration = encryption_configuration

Review comment:
       I prefer to keep the style as-is, since it mirrors the convention in this class.

##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1862,6 +1862,13 @@ class BigQueryUpsertTableOperator(BaseOperator):
     :type delegate_to: str
     :param location: The location used for the operation.
     :type location: str
+    :param encryption_configuration: [Optional] Custom encryption configuration (e.g., Cloud KMS keys).

Review comment:
       Nit, use `(Optional)` not `[Optional]` to keep docs consistent.




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] fuxiao224 commented on a change in pull request #13980: update BigQueryUpsertTableOperator class to support CMEK

Posted by GitBox <gi...@apache.org>.
fuxiao224 commented on a change in pull request #13980:
URL: https://github.com/apache/airflow/pull/13980#discussion_r568225791



##########
File path: airflow/providers/google/cloud/operators/bigquery.py
##########
@@ -1912,8 +1920,11 @@ def __init__(
         self.gcp_conn_id = gcp_conn_id
         self.delegate_to = delegate_to
         self.location = location
+        self.encryption_configuration = encryption_configuration

Review comment:
       I was thinking that someone may need to use encryption_configuration parameter in the future?




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org