apache-airflow-providers-hashicorp 3.8.0rc1__py3-none-any.whl → 4.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of apache-airflow-providers-hashicorp might be problematic. Click here for more details.

@@ -29,11 +29,11 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "3.8.0"
32
+ __version__ = "4.0.0"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
- "2.8.0"
35
+ "2.9.0"
36
36
  ):
37
37
  raise RuntimeError(
38
- f"The package `apache-airflow-providers-hashicorp:{__version__}` needs Apache Airflow 2.8.0+"
38
+ f"The package `apache-airflow-providers-hashicorp:{__version__}` needs Apache Airflow 2.9.0+"
39
39
  )
@@ -28,8 +28,9 @@ def get_provider_info():
28
28
  "name": "Hashicorp",
29
29
  "description": "Hashicorp including `Hashicorp Vault <https://www.vaultproject.io/>`__\n",
30
30
  "state": "ready",
31
- "source-date-epoch": 1723970290,
31
+ "source-date-epoch": 1734534790,
32
32
  "versions": [
33
+ "4.0.0",
33
34
  "3.8.0",
34
35
  "3.7.1",
35
36
  "3.7.0",
@@ -60,7 +61,7 @@ def get_provider_info():
60
61
  "1.0.1",
61
62
  "1.0.0",
62
63
  ],
63
- "dependencies": ["apache-airflow>=2.8.0", "hvac>=1.1.0"],
64
+ "dependencies": ["apache-airflow>=2.9.0", "hvac>=1.1.0"],
64
65
  "integrations": [
65
66
  {
66
67
  "integration-name": "Hashicorp Vault",
@@ -19,12 +19,10 @@
19
19
  from __future__ import annotations
20
20
 
21
21
  import json
22
- import warnings
23
22
  from typing import TYPE_CHECKING, Any
24
23
 
25
24
  from hvac.exceptions import VaultError
26
25
 
27
- from airflow.exceptions import AirflowProviderDeprecationWarning
28
26
  from airflow.hooks.base import BaseHook
29
27
  from airflow.providers.hashicorp._internal_client.vault_client import (
30
28
  DEFAULT_KUBERNETES_JWT_PATH,
@@ -70,7 +68,7 @@ class VaultHook(BaseHook):
70
68
 
71
69
  Login/Password are used as credentials:
72
70
 
73
- * approle: login -> role_id, password -> secret_id
71
+ * approle: login -> connection.login
74
72
  * github: password -> token
75
73
  * token: password -> token
76
74
  * aws_iam: login -> key_id, password -> secret_id
@@ -147,24 +145,8 @@ class VaultHook(BaseHook):
147
145
  if kwargs:
148
146
  client_kwargs = merge_dicts(client_kwargs, kwargs)
149
147
 
150
- if auth_type == "approle":
151
- if role_id:
152
- warnings.warn(
153
- """The usage of role_id for AppRole authentication has been deprecated.
154
- Please use connection login.""",
155
- AirflowProviderDeprecationWarning,
156
- stacklevel=2,
157
- )
158
- elif self.connection.extra_dejson.get("role_id"):
159
- role_id = self.connection.extra_dejson.get("role_id")
160
- warnings.warn(
161
- """The usage of role_id in connection extra for AppRole authentication has been
162
- deprecated. Please use connection login.""",
163
- AirflowProviderDeprecationWarning,
164
- stacklevel=2,
165
- )
166
- elif self.connection.login:
167
- role_id = self.connection.login
148
+ if auth_type == "approle" and self.connection.login:
149
+ role_id = self.connection.login
168
150
 
169
151
  if auth_type == "aws_iam":
170
152
  if not role_id:
@@ -385,7 +367,6 @@ class VaultHook(BaseHook):
385
367
  description="Must be 1 or 2.",
386
368
  default=DEFAULT_KV_ENGINE_VERSION,
387
369
  ),
388
- "role_id": StringField(lazy_gettext("Role ID (deprecated)"), widget=BS3TextFieldWidget()),
389
370
  "kubernetes_role": StringField(lazy_gettext("Kubernetes role"), widget=BS3TextFieldWidget()),
390
371
  "kubernetes_jwt_path": StringField(
391
372
  lazy_gettext("Kubernetes jwt path"), widget=BS3TextFieldWidget()
@@ -21,9 +21,6 @@ from __future__ import annotations
21
21
 
22
22
  from typing import TYPE_CHECKING
23
23
 
24
- from deprecated import deprecated
25
-
26
- from airflow.exceptions import AirflowProviderDeprecationWarning
27
24
  from airflow.providers.hashicorp._internal_client.vault_client import _VaultClient
28
25
  from airflow.secrets import BaseSecretsBackend
29
26
  from airflow.utils.log.logging_mixin import LoggingMixin
@@ -191,22 +188,6 @@ class VaultBackend(BaseSecretsBackend, LoggingMixin):
191
188
  secret_path=(mount_point + "/" if mount_point else "") + secret_path
192
189
  )
193
190
 
194
- @deprecated(
195
- reason="Method `VaultBackend.get_conn_uri` is deprecated and will be removed in a future release.",
196
- category=AirflowProviderDeprecationWarning,
197
- )
198
- def get_conn_uri(self, conn_id: str) -> str | None:
199
- """
200
- Get serialized representation of connection.
201
-
202
- :param conn_id: The connection id
203
- :return: The connection uri retrieved from the secret
204
- """
205
- # Since VaultBackend implements `get_connection`, `get_conn_uri` is not used. So we
206
- # don't need to implement (or direct users to use) method `get_conn_value` instead
207
- response = self.get_response(conn_id)
208
- return response.get("conn_uri") if response else None
209
-
210
191
  # Make sure connection is imported this way for type checking, otherwise when importing
211
192
  # the backend it will get a circular dependency and fail
212
193
  if TYPE_CHECKING:
@@ -1,11 +1,11 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: apache-airflow-providers-hashicorp
3
- Version: 3.8.0rc1
3
+ Version: 4.0.0
4
4
  Summary: Provider package apache-airflow-providers-hashicorp for Apache Airflow
5
5
  Keywords: airflow-provider,hashicorp,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
7
7
  Maintainer-email: Apache Software Foundation <dev@airflow.apache.org>
8
- Requires-Python: ~=3.8
8
+ Requires-Python: ~=3.9
9
9
  Description-Content-Type: text/x-rst
10
10
  Classifier: Development Status :: 5 - Production/Stable
11
11
  Classifier: Environment :: Console
@@ -15,22 +15,21 @@ Classifier: Intended Audience :: System Administrators
15
15
  Classifier: Framework :: Apache Airflow
16
16
  Classifier: Framework :: Apache Airflow :: Provider
17
17
  Classifier: License :: OSI Approved :: Apache Software License
18
- Classifier: Programming Language :: Python :: 3.8
19
18
  Classifier: Programming Language :: Python :: 3.9
20
19
  Classifier: Programming Language :: Python :: 3.10
21
20
  Classifier: Programming Language :: Python :: 3.11
22
21
  Classifier: Programming Language :: Python :: 3.12
23
22
  Classifier: Topic :: System :: Monitoring
24
- Requires-Dist: apache-airflow>=2.8.0rc0
23
+ Requires-Dist: apache-airflow>=2.9.0
25
24
  Requires-Dist: hvac>=1.1.0
26
25
  Requires-Dist: boto3>=1.33.0 ; extra == "boto3"
27
26
  Requires-Dist: apache-airflow-providers-google ; extra == "google"
28
27
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
29
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-hashicorp/3.8.0/changelog.html
30
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-hashicorp/3.8.0
28
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-hashicorp/4.0.0/changelog.html
29
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-hashicorp/4.0.0
31
30
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
32
31
  Project-URL: Source Code, https://github.com/apache/airflow
33
- Project-URL: Twitter, https://twitter.com/ApacheAirflow
32
+ Project-URL: Twitter, https://x.com/ApacheAirflow
34
33
  Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
35
34
  Provides-Extra: boto3
36
35
  Provides-Extra: google
@@ -79,7 +78,7 @@ Provides-Extra: google
79
78
 
80
79
  Package ``apache-airflow-providers-hashicorp``
81
80
 
82
- Release: ``3.8.0.rc1``
81
+ Release: ``4.0.0``
83
82
 
84
83
 
85
84
  Hashicorp including `Hashicorp Vault <https://www.vaultproject.io/>`__
@@ -92,7 +91,7 @@ This is a provider package for ``hashicorp`` provider. All classes for this prov
92
91
  are in ``airflow.providers.hashicorp`` python package.
93
92
 
94
93
  You can find package information and changelog for the provider
95
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-hashicorp/3.8.0/>`_.
94
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-hashicorp/4.0.0/>`_.
96
95
 
97
96
  Installation
98
97
  ------------
@@ -101,7 +100,7 @@ You can install this package on top of an existing Airflow 2 installation (see `
101
100
  for the minimum Airflow version supported) via
102
101
  ``pip install apache-airflow-providers-hashicorp``
103
102
 
104
- The package supports the following python versions: 3.8,3.9,3.10,3.11,3.12
103
+ The package supports the following python versions: 3.9,3.10,3.11,3.12
105
104
 
106
105
  Requirements
107
106
  ------------
@@ -109,7 +108,7 @@ Requirements
109
108
  ================== ==================
110
109
  PIP package Version required
111
110
  ================== ==================
112
- ``apache-airflow`` ``>=2.8.0``
111
+ ``apache-airflow`` ``>=2.9.0``
113
112
  ``hvac`` ``>=1.1.0``
114
113
  ================== ==================
115
114
 
@@ -133,4 +132,4 @@ Dependent package
133
132
  ==================================================================================================== ==========
134
133
 
135
134
  The changelog for the provider package can be found in the
136
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-hashicorp/3.8.0/changelog.html>`_.
135
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-hashicorp/4.0.0/changelog.html>`_.
@@ -0,0 +1,13 @@
1
+ airflow/providers/hashicorp/LICENSE,sha256=FFb4jd2AXnOOf7XLP04pQW6jbdhG49TxlGY6fFpCV1Y,13609
2
+ airflow/providers/hashicorp/__init__.py,sha256=AwaDoTGFBbMg-fL9MTxHyxJzcBz0yBKFpGEjKdLdswo,1496
3
+ airflow/providers/hashicorp/get_provider_info.py,sha256=eLQkcaf4KEt-68QaFyYJs9J3HVaJL5yU284hNGYdDxk,2950
4
+ airflow/providers/hashicorp/_internal_client/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
5
+ airflow/providers/hashicorp/_internal_client/vault_client.py,sha256=rRZXtnDOBNGlhLtaAqLv1v6jex6D5kvy3M9MYRemc00,22645
6
+ airflow/providers/hashicorp/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
7
+ airflow/providers/hashicorp/hooks/vault.py,sha256=RJ_UCl6AMLxmN2wfHQn8YBvEdmOPWFtLECOya4WuYwM,17831
8
+ airflow/providers/hashicorp/secrets/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
9
+ airflow/providers/hashicorp/secrets/vault.py,sha256=KrzIdX25LjfLFP4o1t__zfqqpDX50SZ8X0bGf58_bDI,11432
10
+ apache_airflow_providers_hashicorp-4.0.0.dist-info/entry_points.txt,sha256=M338G3KvFSRu5IqEFm5Qheg_myVuQbsN_2EbAwcgqk4,105
11
+ apache_airflow_providers_hashicorp-4.0.0.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
12
+ apache_airflow_providers_hashicorp-4.0.0.dist-info/METADATA,sha256=KDOA19jMsmW1EHPVcYOAyyiYpG0nsEDYLzEbZaDcD2c,5871
13
+ apache_airflow_providers_hashicorp-4.0.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: flit 3.9.0
2
+ Generator: flit 3.10.1
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
@@ -1,13 +0,0 @@
1
- airflow/providers/hashicorp/LICENSE,sha256=FFb4jd2AXnOOf7XLP04pQW6jbdhG49TxlGY6fFpCV1Y,13609
2
- airflow/providers/hashicorp/__init__.py,sha256=c6HOF5NnXJmBOoolg3qy9JoZx6Co6lcSeR4ZpU_ElFA,1496
3
- airflow/providers/hashicorp/get_provider_info.py,sha256=-nZ993FX2Kzl0BkM0v_amQGGP1NAWd2tMA5093pbgXk,2929
4
- airflow/providers/hashicorp/_internal_client/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
5
- airflow/providers/hashicorp/_internal_client/vault_client.py,sha256=rRZXtnDOBNGlhLtaAqLv1v6jex6D5kvy3M9MYRemc00,22645
6
- airflow/providers/hashicorp/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
7
- airflow/providers/hashicorp/hooks/vault.py,sha256=FWz-aA2otpMox1jdoXCapY6yWqV-vYmC3ycnW5YYRwA,18790
8
- airflow/providers/hashicorp/secrets/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
9
- airflow/providers/hashicorp/secrets/vault.py,sha256=_jxZqLbHnqp047Rza5e5HA5cm7ZR2TRg7O1GKGWFpuA,12245
10
- apache_airflow_providers_hashicorp-3.8.0rc1.dist-info/entry_points.txt,sha256=M338G3KvFSRu5IqEFm5Qheg_myVuQbsN_2EbAwcgqk4,105
11
- apache_airflow_providers_hashicorp-3.8.0rc1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
12
- apache_airflow_providers_hashicorp-3.8.0rc1.dist-info/METADATA,sha256=XYNM1EqZuUI7Y8apB8yQLV3jdq8c9tG6Tp0K70NaRDI,5941
13
- apache_airflow_providers_hashicorp-3.8.0rc1.dist-info/RECORD,,