Opened 2 years ago

Closed 2 years ago

#64608 closed request (fixed)

py-awscli: Request to optional depend awscli-plugin-endpoint

Reported by: forrie (Forrest) Owned by: judaew (Vadym-Valdis Yudaiev)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: Cc:
Port: py-awscli

Description

This is under MacPorts 2.7.1 on MacOS Monterey.

After installing the py310-awscli package, we are seeing the following missing module. The package was uninstalled, then re-installed with -s, netting the same error. pip/pip3 install of awscli_plugin_endpoint doesn't fix the issue.

Traceback (most recent call last):
  File "/opt/local/bin/aws", line 27, in <module>
    sys.exit(main())
  File "/opt/local/bin/aws", line 23, in main
    return awscli.clidriver.main()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/awscli/clidriver.py", line 69, in main
    driver = create_clidriver()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/awscli/clidriver.py", line 78, in create_clidriver
    load_plugins(session.full_config.get('plugins', {}),
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/awscli/plugin.py", line 44, in load_plugins
    modules = _import_plugins(plugin_mapping)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/awscli/plugin.py", line 58, in _import_plugins
    plugins.append(__import__(path))
ModuleNotFoundError: No module named 'awscli_plugin_endpoint'

Change History (7)

comment:1 Changed 2 years ago by jmroot (Joshua Root)

Keywords: python aws removed
Owner: set to judaew
Port: py-awscli added; py310-awscli removed
Status: newassigned

comment:2 Changed 2 years ago by judaew (Vadym-Valdis Yudaiev)

What command with aws are you trying to execute?

comment:3 Changed 2 years ago by judaew (Vadym-Valdis Yudaiev)

I am not sure why awscli can use awscli_plugin_endpoint plugin. So I expect to see more details from you about how you are using awscli so I can help you.

Last edited 2 years ago by judaew (Vadym-Valdis Yudaiev) (previous) (diff)

comment:4 Changed 2 years ago by forrie (Forrest)

The aws command I'm using is what is installed from the port, named above.

Now, I had been using this for accessing my s3 content, hosted by Wasabi. They do use this endpoint extension. That was set up some time ago. I looked in my .aws directory and I see this in the configuration:

[ .aws/config ]

[default]
region = us-east-1
[profile wasabi]
region = us-east-1
s3 =
endpoint_url = https://s3.wasabisys.com

[plugins]
endpoint = awscli_plugin_endpoint

Now, you can install the endpoint plugin via pip, which I've done, but it still errors. Some time ago, this had been working fine.

$ pip install awscli-plugin-endpoint

I get the above mentioned error, even when peforming something simple like "aws --version".

It's not clear to me where/how the code is looking for this dependency or why it's not being ignored -- ie: for "--version"

Last edited 2 years ago by forrie (Forrest) (previous) (diff)

comment:5 Changed 2 years ago by judaew (Vadym-Valdis Yudaiev)

The problem was that you were using pip from a different version of Python. You need to install this plugin using the py310-pip port, eg:

port install py310-pip
pip-3.10 install --user awscli-plugin-endpoint

In this case, I'm using the --user option, as installing packages globally is not recommended. Because if you no longer need package installed via pip, you can remove it manually from ~/Library/Python/3.10.

I created a PR for py-awscli-plugin-endpoint (https://github.com/macports/macports-ports/pull/13892). If you are not in a hurry, then you can wait for this PR to merge and install this plugin using MacPorts.

port install py310-awscli-plugin-endpoint
Last edited 2 years ago by judaew (Vadym-Valdis Yudaiev) (previous) (diff)

comment:6 Changed 2 years ago by judaew (Vadym-Valdis Yudaiev)

Summary: py310-awscli @1.22.48_0 and missing awscli_plugin_endpointpy-awscli: Request to optional depend awscli-plugin-endpoint
Type: defectrequest

comment:7 Changed 2 years ago by Vadim-Valdis Yudaev <judaew@…>

Resolution: fixed
Status: assignedclosed

In 71c5bcea7ee251078067f7fa8b8abe0a5a8e431e/macports-ports (master):

py-awscli-plugin-endpoint: New port

Closed: #64608

Note: See TracTickets for help on using tickets.