mirror of
https://github.com/certbot/certbot.git
synced 2026-06-04 22:33:00 -04: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:
parent
455f9a0d6c
commit
652d5e96be
4 changed files with 23 additions and 48 deletions
|
|
@ -19,16 +19,16 @@ This package is installed in the Certbot development environment that is
|
|||
created by following the instructions at
|
||||
https://certbot.eff.org/docs/contributing.html#running-a-local-copy-of-the-client.
|
||||
|
||||
After activating that virtual environment, you can then configure AWS
|
||||
credentials and create a key by running:
|
||||
```
|
||||
>aws configure --profile <profile name>
|
||||
[interactive: enter secrets for IAM role]
|
||||
>aws ec2 create-key-pair --profile <profile name> --key-name <key name> --query 'KeyMaterial' --output text > whatever/path/you/want.pem
|
||||
```
|
||||
Note: whatever you pick for `<key name>` will be shown to other users with AWS access.
|
||||
These tests use the AWS SDK for Python (boto3) to manipulate EC2 instances.
|
||||
Before running the tests, you'll need to set up credentials by following the
|
||||
instructions at
|
||||
https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html#configuration.
|
||||
You will also want to create a `~/.aws/config` file setting the region for your
|
||||
profile to `us-east-1`, following the instructions in the boto3 quickstart guide above.
|
||||
|
||||
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
|
||||
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>
|
||||
```
|
||||
|
||||
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.
|
||||
The tests take quite a while to run.
|
||||
|
||||
|
|
|
|||
|
|
@ -27,10 +27,6 @@ setup(
|
|||
packages=find_packages(),
|
||||
include_package_data=True,
|
||||
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',
|
||||
'botocore',
|
||||
# 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"}
|
||||
|
||||
# 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
|
||||
# doesn't appear to be a good way to automatically track down and pin build
|
||||
# dependencies in Python (see
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
|
|
@ -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"
|
||||
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"
|
||||
boto3==1.26.7 ; python_version >= "3.7" and python_version < "4.0"
|
||||
botocore==1.29.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.8 ; 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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
|
|
@ -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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
|
|
@ -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"
|
||||
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==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"
|
||||
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"
|
||||
|
|
@ -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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
|
|
@ -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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
|
|
@ -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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
|
|
@ -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"
|
||||
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==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-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"
|
||||
|
|
@ -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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
|
|
@ -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-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-setuptools==65.5.0.2 ; 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-setuptools==65.5.0.3 ; 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"
|
||||
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"
|
||||
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"
|
||||
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"
|
||||
|
|
|
|||
Loading…
Reference in a new issue