diff --git a/app-admin/awscli/Manifest b/app-admin/awscli/Manifest index 596634b70ac16..5926df5467539 100644 --- a/app-admin/awscli/Manifest +++ b/app-admin/awscli/Manifest @@ -13,3 +13,4 @@ DIST aws-cli-1.43.6.gh.tar.gz 3025578 BLAKE2B 33fc6b437c9e2b1717bf51218fb81bcd61 DIST aws-cli-1.43.7.gh.tar.gz 3028477 BLAKE2B 27e815fbbd01912597e0ed0ec5f7f5c177e822a2c3dda1776fdff7d4032920f8d6d4a989ab47815217327a831c0a9e8e06f343a9b10c62a209a110a31bd67776 SHA512 2aa2ed902aa753426719fb36b8de0065bfcd0b6766301eea8eba3167abc50baabd1e9e89640fbd25430111b2233323a99e557fba19e4ca70828709a0a34cef97 DIST aws-cli-1.43.8.gh.tar.gz 3028171 BLAKE2B 21e01698495aaa342579899f8406f24b338d1d1eba4985f2160cf446c1721d5c82cbe94e92e98ec6b94e6f690beda9e1e2f74eb1393da24778fc9d1b77c77c20 SHA512 99a782ee2b3ed8569c31ee5343b7b002d0e8bb44ea459e5f35ef62141efeb02bd95d465beda9f20f6d434664410d0f7bad241978fc7553af3601024b865f9fe5 DIST aws-cli-1.43.9.gh.tar.gz 3028303 BLAKE2B 96b98149f34b7c0105811f8372aafca1c3e02ebbbf9cd2247a533e4ce492f69a3d478f35ce7b5a9d774fc4af689fc07d61d08f1646df6c336d718ce40fc9dca6 SHA512 482185181a393b3d1143afe3a2aaccf17034ba8f9ff19f21c9852aa6d857b2a534ad17f4720ce1bb7b1bae60d218c2db09304c5a6cd8d97586b639bddc8a944d +DIST aws-cli-1.44.0.gh.tar.gz 3042690 BLAKE2B a14e227b57185de3e397a49c962db9b64f75d43cf92edded9c40fa87109be3c83c90d650fa00e7c63e0f3f6ad46d1e15109beae5cc76911888e5812698f34678 SHA512 84f324875aba479f247ffc1e48d3a84c17278e199a13154c4485f76610bdfb0de8812a4fc7fdb8274d63e673c7b8bc70c9f6b5c6c5dc1ac762ebeec88f1517b9 diff --git a/app-admin/awscli/awscli-1.44.0.ebuild b/app-admin/awscli/awscli-1.44.0.ebuild new file mode 100644 index 0000000000000..8451829d28798 --- /dev/null +++ b/app-admin/awscli/awscli-1.44.0.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..14} ) + +inherit distutils-r1 shell-completion + +MY_P=aws-cli-${PV} +DESCRIPTION="Universal Command Line Environment for AWS" +HOMEPAGE=" + https://github.com/aws/aws-cli/ + https://pypi.org/project/awscli/ +" +SRC_URI=" + https://github.com/aws/aws-cli/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" + +# botocore is x.(y-2).(z+10), sigh +BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) - 2)).$(( $(ver_cut 3) + 10 ))" +RDEPEND=" + >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}] + dev-python/colorama[${PYTHON_USEDEP}] + dev-python/docutils[${PYTHON_USEDEP}] + dev-python/rsa[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.16.0[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + !app-admin/awscli-bin +" +BDEPEND=" + test? ( + dev-python/packaging[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-forked ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + # do not rely on bundled deps in botocore (sic!) + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + # strip overzealous upper bounds on requirements + sed -i -e 's:,<[=0-9.]*::' -e 's:==:>=:' setup.py || die + distutils-r1_src_prepare +} + +python_test() { + local serial_tests=( + tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success + tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_{fails,success} + tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_with_new_version_plugin_success + tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking + tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows + tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking + tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success + tests/unit/customizations/test_sessionmanager.py + tests/unit/test_compat.py::TestIgnoreUserSignals + tests/unit/test_help.py + tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored + ) + EPYTEST_XDIST= epytest "${serial_tests[@]}" + + local EPYTEST_DESELECT=( + "${serial_tests[@]}" + + # flaky (some ordering?) + tests/functional/s3/test_cp_command.py::TestCPCommand::test_multipart_upload_with_checksum_algorithm_crc32 + ) + # integration tests require AWS credentials and Internet access + epytest tests/{functional,unit} +} + +python_install_all() { + newbashcomp bin/aws_bash_completer aws + newzshcomp bin/aws_zsh_completer.sh _aws + + distutils-r1_python_install_all + + rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die +}