Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/certbot/certbot.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralexzorin <alex@zorin.id.au>2022-08-27 00:25:37 +0300
committerGitHub <noreply@github.com>2022-08-27 00:25:37 +0300
commita81d58fa6e3ce451682529947edfd807dcd56b7b (patch)
treecbb654f0dc53dbd5b132024297d551da843cd009
parentcb632c376f17dfd75306020a17248f3c33c1ab2f (diff)
deprecate certbot-dns-cloudxns (#9367)
-rw-r--r--certbot-dns-cloudxns/certbot_dns_cloudxns/__init__.py7
-rw-r--r--certbot-dns-cloudxns/certbot_dns_cloudxns/_internal/dns_cloudxns.py6
-rw-r--r--certbot-dns-cloudxns/tests/dns_cloudxns_test.py5
-rw-r--r--certbot/CHANGELOG.md3
4 files changed, 19 insertions, 2 deletions
diff --git a/certbot-dns-cloudxns/certbot_dns_cloudxns/__init__.py b/certbot-dns-cloudxns/certbot_dns_cloudxns/__init__.py
index 0d098445c..0ba512ee4 100644
--- a/certbot-dns-cloudxns/certbot_dns_cloudxns/__init__.py
+++ b/certbot-dns-cloudxns/certbot_dns_cloudxns/__init__.py
@@ -1,4 +1,11 @@
"""
+.. danger::
+ The certbot-dns-cloudxns plugin is deprecated and will be removed in the next major
+ release of Certbot. The CloudXNS DNS service is defunct and we recommend uninstalling
+ the plugin.
+
+----------
+
The `~certbot_dns_cloudxns.dns_cloudxns` plugin automates the process of
completing a ``dns-01`` challenge (`~acme.challenges.DNS01`) by creating, and
subsequently removing, TXT records using the CloudXNS API.
diff --git a/certbot-dns-cloudxns/certbot_dns_cloudxns/_internal/dns_cloudxns.py b/certbot-dns-cloudxns/certbot_dns_cloudxns/_internal/dns_cloudxns.py
index 15cdf8aa8..743e8567e 100644
--- a/certbot-dns-cloudxns/certbot_dns_cloudxns/_internal/dns_cloudxns.py
+++ b/certbot-dns-cloudxns/certbot_dns_cloudxns/_internal/dns_cloudxns.py
@@ -3,6 +3,7 @@ import logging
from typing import Any
from typing import Callable
from typing import Optional
+import warnings
from lexicon.providers import cloudxns
from requests import HTTPError
@@ -27,6 +28,11 @@ class Authenticator(dns_common.DNSAuthenticator):
ttl = 60
def __init__(self, *args: Any, **kwargs: Any) -> None:
+ warnings.warn(
+ "The CloudXNS authenticator is deprecated and will be removed in the "
+ "next major release of Certbot. The CloudXNS DNS service is defunct and "
+ "we recommend removing the plugin."
+ )
super().__init__(*args, **kwargs)
self.credentials: Optional[CredentialsConfiguration] = None
diff --git a/certbot-dns-cloudxns/tests/dns_cloudxns_test.py b/certbot-dns-cloudxns/tests/dns_cloudxns_test.py
index 81dea5ca4..62cb2c28b 100644
--- a/certbot-dns-cloudxns/tests/dns_cloudxns_test.py
+++ b/certbot-dns-cloudxns/tests/dns_cloudxns_test.py
@@ -8,6 +8,7 @@ except ImportError: # pragma: no cover
from unittest import mock # type: ignore
from requests.exceptions import HTTPError
from requests.exceptions import RequestException
+import warnings
from certbot.compat import os
from certbot.plugins import dns_test_common
@@ -36,7 +37,9 @@ class AuthenticatorTest(test_util.TempDirTestCase,
self.config = mock.MagicMock(cloudxns_credentials=path,
cloudxns_propagation_seconds=0) # don't wait during tests
- self.auth = Authenticator(self.config, "cloudxns")
+ with warnings.catch_warnings():
+ warnings.filterwarnings("ignore", category=UserWarning)
+ self.auth = Authenticator(self.config, "cloudxns")
self.mock_client = mock.MagicMock()
# _get_cloudxns_client | pylint: disable=protected-access
diff --git a/certbot/CHANGELOG.md b/certbot/CHANGELOG.md
index 18b37f396..8a46f71ba 100644
--- a/certbot/CHANGELOG.md
+++ b/certbot/CHANGELOG.md
@@ -10,7 +10,8 @@ Certbot adheres to [Semantic Versioning](https://semver.org/).
### Changed
-*
+* The `certbot-dns-cloudxns` plugin is now deprecated and will be removed in the
+ next major release of Certbot.
### Fixed