mirror of
https://github.com/certbot/certbot.git
synced 2026-08-01 16:19:13 +02:00
Drop awscli dependency (#9459)
Fixes https://github.com/certbot/certbot/issues/9458. * update readme * drop awscli Co-authored-by: ohemorange <ebportnoy@gmail.com>
This commit is contained in:
co-authored by
ohemorange
parent
455f9a0d6c
commit
652d5e96be
+9
-21
@@ -19,16 +19,16 @@ This package is installed in the Certbot development environment that is
|
|||||||
created by following the instructions at
|
created by following the instructions at
|
||||||
https://certbot.eff.org/docs/contributing.html#running-a-local-copy-of-the-client.
|
https://certbot.eff.org/docs/contributing.html#running-a-local-copy-of-the-client.
|
||||||
|
|
||||||
After activating that virtual environment, you can then configure AWS
|
These tests use the AWS SDK for Python (boto3) to manipulate EC2 instances.
|
||||||
credentials and create a key by running:
|
Before running the tests, you'll need to set up credentials by following the
|
||||||
```
|
instructions at
|
||||||
>aws configure --profile <profile name>
|
https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html#configuration.
|
||||||
[interactive: enter secrets for IAM role]
|
You will also want to create a `~/.aws/config` file setting the region for your
|
||||||
>aws ec2 create-key-pair --profile <profile name> --key-name <key name> --query 'KeyMaterial' --output text > whatever/path/you/want.pem
|
profile to `us-east-1`, following the instructions in the boto3 quickstart guide above.
|
||||||
```
|
|
||||||
Note: whatever you pick for `<key name>` will be shown to other users with AWS access.
|
|
||||||
|
|
||||||
When prompted for a default region name, enter: `us-east-1`.
|
Lastly, you will want to create a file on your system containing a trusted SSH key
|
||||||
|
by following the instructions at
|
||||||
|
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html.
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
To run tests, activate the virtual environment you created above and from this directory run:
|
To run tests, activate the virtual environment you created above and from this directory run:
|
||||||
@@ -36,18 +36,6 @@ To run tests, activate the virtual environment you created above and from this d
|
|||||||
>letstest targets/targets.yaml /path/to/your/key.pem <profile name> scripts/<test to run>
|
>letstest targets/targets.yaml /path/to/your/key.pem <profile name> scripts/<test to run>
|
||||||
```
|
```
|
||||||
|
|
||||||
You can only run up to two tests at once. The following error is often indicative of there being too many AWS instances running on our account:
|
|
||||||
```
|
|
||||||
NameError: name 'instances' is not defined
|
|
||||||
```
|
|
||||||
|
|
||||||
If you see this, you can run the following command to shut down all running instances:
|
|
||||||
```
|
|
||||||
aws ec2 terminate-instances --profile <profile name> --instance-ids $(aws ec2 describe-instances --profile <profile name> | grep <key name> | cut -f8)
|
|
||||||
```
|
|
||||||
|
|
||||||
It will take a minute for these instances to shut down and become available again. Running this will invalidate any in progress tests.
|
|
||||||
|
|
||||||
A temporary directory whose name is output by the tests is also created with a log file from each instance of the test and a file named "results" containing the output above.
|
A temporary directory whose name is output by the tests is also created with a log file from each instance of the test and a file named "results" containing the output above.
|
||||||
The tests take quite a while to run.
|
The tests take quite a while to run.
|
||||||
|
|
||||||
|
|||||||
@@ -27,10 +27,6 @@ setup(
|
|||||||
packages=find_packages(),
|
packages=find_packages(),
|
||||||
include_package_data=True,
|
include_package_data=True,
|
||||||
install_requires=[
|
install_requires=[
|
||||||
# awscli isn't required by the tests themselves, but it is a useful
|
|
||||||
# tool to have when using these tests to generate keys and control
|
|
||||||
# running instances so the dependency is declared here for convenience.
|
|
||||||
'awscli',
|
|
||||||
'boto3',
|
'boto3',
|
||||||
'botocore',
|
'botocore',
|
||||||
# The API from Fabric 2.0+ is used instead of the 1.0 API.
|
# The API from Fabric 2.0+ is used instead of the 1.0 API.
|
||||||
|
|||||||
@@ -35,14 +35,6 @@ letstest = {path = "../../../letstest"}
|
|||||||
windows-installer = {path = "../../../windows-installer"}
|
windows-installer = {path = "../../../windows-installer"}
|
||||||
|
|
||||||
# Extra dependencies
|
# Extra dependencies
|
||||||
# awscli is just listed here as a performance optimization. As of writing this,
|
|
||||||
# there are some conflicts in shared dependencies between it and other packages
|
|
||||||
# we depend on. To try and resolve them, poetry searches through older versions
|
|
||||||
# of awscli to see if that resolves the conflict, but there are over 1000
|
|
||||||
# versions of awscli on PyPI so this process takes too long. Providing a high
|
|
||||||
# minimum version here prevents poetry from searching this path and it fairly
|
|
||||||
# quickly resolves the dependency conflict in another way.
|
|
||||||
awscli = ">=1.22.76"
|
|
||||||
# As of writing this, cython is a build dependency of pyyaml. Since there
|
# As of writing this, cython is a build dependency of pyyaml. Since there
|
||||||
# doesn't appear to be a good way to automatically track down and pin build
|
# doesn't appear to be a good way to automatically track down and pin build
|
||||||
# dependencies in Python (see
|
# dependencies in Python (see
|
||||||
|
|||||||
+14
-15
@@ -10,7 +10,6 @@ apacheconfig==0.3.2 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
appnope==0.1.3 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "darwin"
|
appnope==0.1.3 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "darwin"
|
||||||
astroid==2.11.7 ; python_version >= "3.7" and python_version < "4.0"
|
astroid==2.11.7 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
attrs==22.1.0 ; python_version >= "3.7" and python_version < "4.0"
|
attrs==22.1.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
awscli==1.27.7 ; python_version >= "3.7" and python_version < "4.0"
|
|
||||||
azure-devops==6.0.0b4 ; python_version >= "3.7" and python_version < "4.0"
|
azure-devops==6.0.0b4 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
babel==2.11.0 ; python_version >= "3.7" and python_version < "4.0"
|
babel==2.11.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
backcall==0.2.0 ; python_version >= "3.7" and python_version < "4.0"
|
backcall==0.2.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -18,8 +17,8 @@ backports-cached-property==1.0.2 ; python_version >= "3.7" and python_version <
|
|||||||
bcrypt==4.0.1 ; python_version >= "3.7" and python_version < "4.0"
|
bcrypt==4.0.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
beautifulsoup4==4.11.1 ; python_version >= "3.7" and python_version < "4.0"
|
beautifulsoup4==4.11.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
bleach==5.0.1 ; python_version >= "3.7" and python_version < "4.0"
|
bleach==5.0.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
boto3==1.26.7 ; python_version >= "3.7" and python_version < "4.0"
|
boto3==1.26.8 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
botocore==1.29.7 ; python_version >= "3.7" and python_version < "4.0"
|
botocore==1.29.8 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
cachecontrol==0.12.11 ; python_version >= "3.7" and python_version < "4.0"
|
cachecontrol==0.12.11 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
cachetools==5.2.0 ; python_version >= "3.7" and python_version < "4.0"
|
cachetools==5.2.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
cachy==0.3.0 ; python_version >= "3.7" and python_version < "4.0"
|
cachy==0.3.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -28,7 +27,7 @@ cffi==1.15.1 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
charset-normalizer==2.1.1 ; python_version >= "3.7" and python_version < "4"
|
charset-normalizer==2.1.1 ; python_version >= "3.7" and python_version < "4"
|
||||||
cleo==1.0.0a5 ; python_version >= "3.7" and python_version < "4.0"
|
cleo==1.0.0a5 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
cloudflare==2.10.4 ; python_version >= "3.7" and python_version < "4.0"
|
cloudflare==2.10.4 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
colorama==0.4.4 ; python_version >= "3.7" and python_version < "4.0"
|
colorama==0.4.6 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "win32" or python_version >= "3.7" and python_version < "4.0" and platform_system == "Windows"
|
||||||
commonmark==0.9.1 ; python_version >= "3.7" and python_version < "4.0"
|
commonmark==0.9.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
configargparse==1.5.3 ; python_version >= "3.7" and python_version < "4.0"
|
configargparse==1.5.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
configobj==5.0.6 ; python_version >= "3.7" and python_version < "4.0"
|
configobj==5.0.6 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -42,9 +41,9 @@ distlib==0.3.6 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
distro==1.8.0 ; python_version >= "3.7" and python_version < "4.0"
|
distro==1.8.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
dns-lexicon==3.11.7 ; python_version >= "3.7" and python_version < "4.0"
|
dns-lexicon==3.11.7 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
dnspython==2.2.1 ; python_version >= "3.7" and python_version < "4.0"
|
dnspython==2.2.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
docutils==0.16 ; python_version >= "3.7" and python_version < "4.0"
|
docutils==0.17.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
dulwich==0.20.50 ; python_version >= "3.7" and python_version < "4.0"
|
dulwich==0.20.50 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
exceptiongroup==1.0.1 ; python_version >= "3.7" and python_version < "3.11"
|
exceptiongroup==1.0.2 ; python_version >= "3.7" and python_version < "3.11"
|
||||||
execnet==1.9.0 ; python_version >= "3.7" and python_version < "4.0"
|
execnet==1.9.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
fabric==2.7.1 ; python_version >= "3.7" and python_version < "4.0"
|
fabric==2.7.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
filelock==3.8.0 ; python_version >= "3.7" and python_version < "4.0"
|
filelock==3.8.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -84,7 +83,7 @@ more-itertools==9.0.0 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
msgpack==1.0.4 ; python_version >= "3.7" and python_version < "4.0"
|
msgpack==1.0.4 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
msrest==0.6.21 ; python_version >= "3.7" and python_version < "4.0"
|
msrest==0.6.21 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
mypy-extensions==0.4.3 ; python_version >= "3.7" and python_version < "4.0"
|
mypy-extensions==0.4.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
mypy==0.990 ; python_version >= "3.7" and python_version < "4.0"
|
mypy==0.991 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
oauth2client==4.1.3 ; python_version >= "3.7" and python_version < "4.0"
|
oauth2client==4.1.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
oauthlib==3.2.2 ; python_version >= "3.7" and python_version < "4.0"
|
oauthlib==3.2.2 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
packaging==21.3 ; python_version >= "3.7" and python_version < "4.0"
|
packaging==21.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -97,7 +96,7 @@ pickleshare==0.7.5 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
pip==22.3.1 ; python_version >= "3.7" and python_version < "4.0"
|
pip==22.3.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
pkginfo==1.8.3 ; python_version >= "3.7" and python_version < "4.0"
|
pkginfo==1.8.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
pkgutil-resolve-name==1.3.10 ; python_version >= "3.7" and python_version < "3.9"
|
pkgutil-resolve-name==1.3.10 ; python_version >= "3.7" and python_version < "3.9"
|
||||||
platformdirs==2.5.3 ; python_version >= "3.7" and python_version < "4.0"
|
platformdirs==2.5.4 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
pluggy==1.0.0 ; python_version >= "3.7" and python_version < "4.0"
|
pluggy==1.0.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
ply==3.11 ; python_version >= "3.7" and python_version < "4.0"
|
ply==3.11 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
poetry-core==1.3.2 ; python_version >= "3.7" and python_version < "4.0"
|
poetry-core==1.3.2 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -128,7 +127,7 @@ python-digitalocean==1.17.0 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
pytz==2022.6 ; python_version >= "3.7" and python_version < "4.0"
|
pytz==2022.6 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
pywin32-ctypes==0.2.0 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "win32"
|
pywin32-ctypes==0.2.0 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "win32"
|
||||||
pywin32==305 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "win32"
|
pywin32==305 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "win32"
|
||||||
pyyaml==5.4.1 ; python_version >= "3.7" and python_version < "4.0"
|
pyyaml==6.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
readme-renderer==37.3 ; python_version >= "3.7" and python_version < "4.0"
|
readme-renderer==37.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
requests-download==0.1.2 ; python_version >= "3.7" and python_version < "4.0"
|
requests-download==0.1.2 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
requests-file==1.5.1 ; python_version >= "3.7" and python_version < "4.0"
|
requests-file==1.5.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -137,7 +136,7 @@ requests-toolbelt==0.9.1 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
requests==2.28.1 ; python_version >= "3.7" and python_version < "4"
|
requests==2.28.1 ; python_version >= "3.7" and python_version < "4"
|
||||||
rfc3986==2.0.0 ; python_version >= "3.7" and python_version < "4.0"
|
rfc3986==2.0.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
rich==12.6.0 ; python_version >= "3.7" and python_version < "4.0"
|
rich==12.6.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
rsa==4.7.2 ; python_version >= "3.7" and python_version < "4"
|
rsa==4.9 ; python_version >= "3.7" and python_version < "4"
|
||||||
s3transfer==0.6.0 ; python_version >= "3.7" and python_version < "4.0"
|
s3transfer==0.6.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
secretstorage==3.3.3 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "linux"
|
secretstorage==3.3.3 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "linux"
|
||||||
semantic-version==2.10.0 ; python_version >= "3.7" and python_version < "4.0"
|
semantic-version==2.10.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -148,7 +147,7 @@ six==1.16.0 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
snowballstemmer==2.2.0 ; python_version >= "3.7" and python_version < "4.0"
|
snowballstemmer==2.2.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
soupsieve==2.3.2.post1 ; python_version >= "3.7" and python_version < "4.0"
|
soupsieve==2.3.2.post1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
sphinx-rtd-theme==1.1.1 ; python_version >= "3.7" and python_version < "4.0"
|
sphinx-rtd-theme==1.1.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
sphinx==5.1.1 ; python_version >= "3.7" and python_version < "4.0"
|
sphinx==5.3.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
sphinxcontrib-applehelp==1.0.2 ; python_version >= "3.7" and python_version < "4.0"
|
sphinxcontrib-applehelp==1.0.2 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
sphinxcontrib-devhelp==1.0.2 ; python_version >= "3.7" and python_version < "4.0"
|
sphinxcontrib-devhelp==1.0.2 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
sphinxcontrib-htmlhelp==2.0.0 ; python_version >= "3.7" and python_version < "4.0"
|
sphinxcontrib-htmlhelp==2.0.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
@@ -159,7 +158,7 @@ tldextract==3.4.0 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
toml==0.10.2 ; python_version >= "3.7" and python_version < "4.0"
|
toml==0.10.2 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
tomli==2.0.1 ; python_version >= "3.7" and python_full_version <= "3.11.0a6"
|
tomli==2.0.1 ; python_version >= "3.7" and python_full_version <= "3.11.0a6"
|
||||||
tomlkit==0.11.6 ; python_version >= "3.7" and python_version < "4.0"
|
tomlkit==0.11.6 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
tox==3.27.0 ; python_version >= "3.7" and python_version < "4.0"
|
tox==3.27.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
traitlets==5.5.0 ; python_version >= "3.7" and python_version < "4.0"
|
traitlets==5.5.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
twine==4.0.1 ; python_version >= "3.7" and python_version < "4.0"
|
twine==4.0.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
typed-ast==1.5.4 ; python_version >= "3.7" and python_version < "3.8"
|
typed-ast==1.5.4 ; python_version >= "3.7" and python_version < "3.8"
|
||||||
@@ -169,13 +168,13 @@ types-pyrfc3339==1.1.1 ; python_version >= "3.7" and python_version < "4.0"
|
|||||||
types-python-dateutil==2.8.19.3 ; python_version >= "3.7" and python_version < "4.0"
|
types-python-dateutil==2.8.19.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
types-pytz==2022.6.0.1 ; python_version >= "3.7" and python_version < "4.0"
|
types-pytz==2022.6.0.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
types-requests==2.28.11.4 ; python_version >= "3.7" and python_version < "4.0"
|
types-requests==2.28.11.4 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
types-setuptools==65.5.0.2 ; python_version >= "3.7" and python_version < "4.0"
|
types-setuptools==65.5.0.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
types-six==1.16.21.2 ; python_version >= "3.7" and python_version < "4.0"
|
types-six==1.16.21.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
types-urllib3==1.26.25.3 ; python_version >= "3.7" and python_version < "4.0"
|
types-urllib3==1.26.25.3 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
typing-extensions==4.4.0 ; python_version >= "3.7" and python_version < "4.0"
|
typing-extensions==4.4.0 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
uritemplate==4.1.1 ; python_version >= "3.7" and python_version < "4.0"
|
uritemplate==4.1.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
urllib3==1.26.12 ; python_version >= "3.7" and python_version < "4"
|
urllib3==1.26.12 ; python_version >= "3.7" and python_version < "4"
|
||||||
virtualenv==20.16.6 ; python_version >= "3.7" and python_version < "4.0"
|
virtualenv==20.16.7 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
wcwidth==0.2.5 ; python_version >= "3.7" and python_version < "4.0"
|
wcwidth==0.2.5 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
webencodings==0.5.1 ; python_version >= "3.7" and python_version < "4.0"
|
webencodings==0.5.1 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
wheel==0.38.4 ; python_version >= "3.7" and python_version < "4.0"
|
wheel==0.38.4 ; python_version >= "3.7" and python_version < "4.0"
|
||||||
|
|||||||
Reference in New Issue
Block a user