diff --git a/app-admin/awscli/Manifest b/app-admin/awscli/Manifest index 8c4cd252747f1..203bb31094424 100644 --- a/app-admin/awscli/Manifest +++ b/app-admin/awscli/Manifest @@ -6,3 +6,4 @@ DIST aws-cli-1.42.64.gh.tar.gz 2996272 BLAKE2B 91d3d259ab8a4dc0cec0735f1da99526b DIST aws-cli-1.42.69.gh.tar.gz 3000029 BLAKE2B b8ec08f94021b437d5b7ac8626dacb9165cc5906c2fed6e94a379568ed6004c1bfd207a110c9f9d80ceb58d28ce8be2b21f5275629f5a74e4829762a498e5737 SHA512 07fad7432464566aaa4f2c43b6e5b09bb97aa313a4646ebaf171edb11dc58cd25b3e12a4698b5786cc02a96176480102e1d0794c74988a5587f6b218771a556b DIST aws-cli-1.42.70.gh.tar.gz 3002430 BLAKE2B 7beff291c8ae6a8abab7c46b5738301b89296a736203e64b1b5d6c6a206be0ca65bb1b9bb9f1b1a8a345a277eeb5003dd147db4b4bb942a4a09ecf5cedd61984 SHA512 2c37d93857a149d7812169ed0654a9d6132a5f40ae54bec0c7a32900f26547a487ae151585d0af2a07771f413501d3530721b82bcd3bb1894b363a3d420554d3 DIST aws-cli-1.42.71.gh.tar.gz 3003084 BLAKE2B 2a6c0be3a10a3eff67a32d4d5b9b7aa1179d8416a65b351fff071f0148b245053faf2cd299c6dafe9398d5e463acfd561974a8fa1f3ee8f04fbd697fe6fa7f27 SHA512 ad918813319026180a6f2defe0bf3c666db156edeb2d1022a000a78134c239ec4e42859d68f308ed29ab88ab67b55107e34ec2b12646cebc0a8bafa2535d8186 +DIST aws-cli-1.42.72.gh.tar.gz 3003231 BLAKE2B 74da05742b8b2f1bacc8410ec763567953e6cb2c47dfe993028afde430a0daabbdf2b60bb484a49b935a4940946aa3d54d2104ef4750af9ae7bc309fa335c868 SHA512 29aca0fc4c5216c3bd4014e610ffd24a9e20b7f530ddb1e8ad3f99b496537de9d6ef51ae326e3f0c8f9a716038235df6ffcd19a5a3f3e065d6090ceeb39f1a2c diff --git a/app-admin/awscli/awscli-1.42.72.ebuild b/app-admin/awscli/awscli-1.42.72.ebuild new file mode 100644 index 0000000000000..6ebe418b8cfcd --- /dev/null +++ b/app-admin/awscli/awscli-1.42.72.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, sigh +BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) - 2)).$(ver_cut 3-)" +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.14.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 +}