This is an automated email from the ASF dual-hosted git repository. potiuk pushed a commit to branch v2-0-test in repository https://gitbox.apache.org/repos/asf/airflow.git
commit c2c85ddd84e69813d0729aae18d82eadba8f3740 Author: Kamil BreguĊa <[email protected]> AuthorDate: Tue Dec 22 12:59:27 2020 +0100 Update compatibility with google-cloud-kms>=2.0 (#13124) (cherry picked from commit b26b0df5b03c4cd826fd7b2dff5771d64e18e6b7) --- airflow/providers/google/cloud/hooks/kms.py | 20 +++++++------ setup.py | 2 +- tests/providers/google/cloud/hooks/test_kms.py | 40 +++++++++++++++----------- 3 files changed, 37 insertions(+), 25 deletions(-) diff --git a/airflow/providers/google/cloud/hooks/kms.py b/airflow/providers/google/cloud/hooks/kms.py index e63c2f1..3fd1433 100644 --- a/airflow/providers/google/cloud/hooks/kms.py +++ b/airflow/providers/google/cloud/hooks/kms.py @@ -118,12 +118,14 @@ class CloudKMSHook(GoogleBaseHook): :rtype: str """ response = self.get_conn().encrypt( - name=key_name, - plaintext=plaintext, - additional_authenticated_data=authenticated_data, + request={ + 'name': key_name, + 'plaintext': plaintext, + 'additional_authenticated_data': authenticated_data, + }, retry=retry, timeout=timeout, - metadata=metadata, + metadata=metadata or (), ) ciphertext = _b64encode(response.ciphertext) @@ -161,12 +163,14 @@ class CloudKMSHook(GoogleBaseHook): :rtype: bytes """ response = self.get_conn().decrypt( - name=key_name, - ciphertext=_b64decode(ciphertext), - additional_authenticated_data=authenticated_data, + request={ + 'name': key_name, + 'ciphertext': _b64decode(ciphertext), + 'additional_authenticated_data': authenticated_data, + }, retry=retry, timeout=timeout, - metadata=metadata, + metadata=metadata or (), ) return response.plaintext diff --git a/setup.py b/setup.py index 63dd6d7..1ec4f5d 100644 --- a/setup.py +++ b/setup.py @@ -290,7 +290,7 @@ google = [ 'google-cloud-datacatalog>=1.0.0,<2.0.0', 'google-cloud-dataproc>=1.0.1,<2.0.0', 'google-cloud-dlp>=0.11.0,<2.0.0', - 'google-cloud-kms>=1.2.1,<2.0.0', + 'google-cloud-kms>=2.0.0,<3.0.0', 'google-cloud-language>=1.1.1,<2.0.0', 'google-cloud-logging>=1.14.0,<2.0.0', 'google-cloud-memcache>=0.2.0', diff --git a/tests/providers/google/cloud/hooks/test_kms.py b/tests/providers/google/cloud/hooks/test_kms.py index 6b87e3c..4de1dfb 100644 --- a/tests/providers/google/cloud/hooks/test_kms.py +++ b/tests/providers/google/cloud/hooks/test_kms.py @@ -82,12 +82,14 @@ class TestCloudKMSHook(unittest.TestCase): result = self.kms_hook.encrypt(TEST_KEY_ID, PLAINTEXT) mock_get_conn.assert_called_once_with() mock_get_conn.return_value.encrypt.assert_called_once_with( - name=TEST_KEY_ID, - plaintext=PLAINTEXT, - additional_authenticated_data=None, + request=dict( + name=TEST_KEY_ID, + plaintext=PLAINTEXT, + additional_authenticated_data=None, + ), retry=None, timeout=None, - metadata=None, + metadata=(), ) assert PLAINTEXT_b64 == result @@ -97,12 +99,14 @@ class TestCloudKMSHook(unittest.TestCase): result = self.kms_hook.encrypt(TEST_KEY_ID, PLAINTEXT, AUTH_DATA) mock_get_conn.assert_called_once_with() mock_get_conn.return_value.encrypt.assert_called_once_with( - name=TEST_KEY_ID, - plaintext=PLAINTEXT, - additional_authenticated_data=AUTH_DATA, + request=dict( + name=TEST_KEY_ID, + plaintext=PLAINTEXT, + additional_authenticated_data=AUTH_DATA, + ), retry=None, timeout=None, - metadata=None, + metadata=(), ) assert PLAINTEXT_b64 == result @@ -112,12 +116,14 @@ class TestCloudKMSHook(unittest.TestCase): result = self.kms_hook.decrypt(TEST_KEY_ID, CIPHERTEXT_b64) mock_get_conn.assert_called_once_with() mock_get_conn.return_value.decrypt.assert_called_once_with( - name=TEST_KEY_ID, - ciphertext=CIPHERTEXT, - additional_authenticated_data=None, + request=dict( + name=TEST_KEY_ID, + ciphertext=CIPHERTEXT, + additional_authenticated_data=None, + ), retry=None, timeout=None, - metadata=None, + metadata=(), ) assert PLAINTEXT == result @@ -127,11 +133,13 @@ class TestCloudKMSHook(unittest.TestCase): result = self.kms_hook.decrypt(TEST_KEY_ID, CIPHERTEXT_b64, AUTH_DATA) mock_get_conn.assert_called_once_with() mock_get_conn.return_value.decrypt.assert_called_once_with( - name=TEST_KEY_ID, - ciphertext=CIPHERTEXT, - additional_authenticated_data=AUTH_DATA, + request=dict( + name=TEST_KEY_ID, + ciphertext=CIPHERTEXT, + additional_authenticated_data=AUTH_DATA, + ), retry=None, timeout=None, - metadata=None, + metadata=(), ) assert PLAINTEXT == result
