diff options
Diffstat (limited to 'community/aws-cli/APKBUILD')
-rw-r--r-- | community/aws-cli/APKBUILD | 136 |
1 files changed, 98 insertions, 38 deletions
diff --git a/community/aws-cli/APKBUILD b/community/aws-cli/APKBUILD index 8f3c7564ed0..c2f831cb3a5 100644 --- a/community/aws-cli/APKBUILD +++ b/community/aws-cli/APKBUILD @@ -1,40 +1,105 @@ -# Maintainer: Valery Kartel <valery.kartel@gmail.com> # Contributor: Valery Kartel <valery.kartel@gmail.com> +# Maintainer: pkgname=aws-cli -pkgver=1.18.177 -pkgrel=1 -pkgdesc="Universal Command Line Interface for Amazon Web Services" +pkgver=2.15.30 +pkgrel=0 +pkgdesc="Universal Command Line Interface for Amazon Web Services (v2)" url="https://github.com/aws/aws-cli" -arch="noarch" +# s390x: py3-awscrt doesn't support big-endian +# arm*, ppc64le: py3-awscrt +# x86: fails check, so most likely not supported on 32-bit anymore +# no python 3.12 support: https://github.com/aws/aws-cli/issues/8342 +#arch="all !x86 !armhf !armv7 !ppc64le !s390x" license="Apache-2.0" -depends="python3 groff py3-botocore py3-jmespath py3-s3transfer py3-docutils - py3-colorama py3-yaml py3-rsa" -makedepends="python3-dev py3-setuptools" +depends=" + py3-awscrt + py3-certifi + py3-cryptography + py3-dateutil + py3-distro + py3-colorama + py3-docutils + py3-jmespath + py3-urllib3 + py3-prompt_toolkit + py3-ruamel.yaml<0.17.29 + python3 + " +makedepends=" + python3-dev + py3-gpep517 + py3-flit-core + " +checkdepends=" + procps + py3-jsonschema + py3-mock + py3-pytest + py3-pytest-mock + py3-pytest-xdist + " subpackages=" $pkgname-doc + $pkgname-pyc $pkgname-zsh-completion:zshcomp $pkgname-bash-completion:bashcomp - $pkgname-completer " -source="aws-cli-$pkgver.tar.gz::https://github.com/aws/aws-cli/archive/$pkgver.tar.gz" +source="$pkgname-$pkgver.tar.gz::https://github.com/aws/aws-cli/archive/$pkgver.tar.gz + fix-env.patch + tmpfile-index.patch + " + +provides="aws-cli-v2=$pkgver-r$pkgrel" +replaces="aws-cli-v2" + +case "$CARCH" in +x86*) + ;; +*) + # save ourselves some time and run tests only on the above + options="$options !check" + ;; +esac build() { - python3 setup.py build + gpep517 build-wheel \ + --wheel-dir .dist \ + --output-fd 3 3>&1 >&2 } check() { - python3 setup.py check + export AWS_SECRET_ACCESS_KEY=fake_key + export AWS_ACCESS_KEY_ID=fake_id + + # each core takes like 2gb, so be a little conservative + local cores + cores="$(nproc)" + cores="$((cores / 2))" + + python3 -m venv --clear --without-pip --system-site-packages .testenv + .testenv/bin/python3 -m installer .dist/*.whl + timeout 1800 \ + .testenv/bin/python3 -m pytest tests \ + -p no:warnings \ + -n "$cores" \ + --ignore=tests/backends \ + --ignore=tests/integration \ + --ignore=tests/functional/eks \ + --ignore=tests/functional/botocore/test_credentials.py \ + --deselect=tests/functional/autocomplete/test_main.py::test_smoke_test_completer \ + --deselect=tests/functional/botocore/test_credentials.py::SSOSessionTest::test_token_chosen_from_provider \ + --deselect=tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_empty \ + --deselect=tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_noexist \ + --deselect=tests/functional/autoprompt/test_prompttoolkit.py } package() { - python3 setup.py install --prefix=/usr --root="$pkgdir" - cd "$pkgdir" - rm -fr usr/bin/aws.cmd \ - usr/lib/python*/site-packages/awscli-*-py*.egg-info + python3 -m installer -d "$pkgdir" \ + .dist/*.whl + rm "$pkgdir"/usr/bin/aws.cmd } bashcomp() { - depends="$pkgname-completer" pkgdesc="$pkgdesc (bash completions)" install_if="$pkgname=$pkgver-r$pkgrel bash-completion" mkdir -p "$subpkgdir"/usr/share/bash-completion/completions @@ -43,7 +108,6 @@ bashcomp() { } zshcomp() { - depends="$pkgname-completer" pkgdesc="$pkgdesc (zsh completions)" install_if="$pkgname=$pkgver-r$pkgrel zsh" mkdir -p "$subpkgdir"/usr/share/zsh/site-functions @@ -51,26 +115,22 @@ zshcomp() { "$subpkgdir"/usr/share/zsh/site-functions } -completer() { - depends="" - pkgdesc="$pkgdesc (completions helper)" - cd "$pkgdir" - for i in \ - usr/bin/aws_completer \ - usr/lib/python*/site-packages/awscli/completer.py \ - usr/lib/python*/site-packages/awscli/__pycache__/completer.cpython-*.pyc \ - ; do - install -D "$i" "$subpkgdir/$i" - rm "$i" - done -} - doc() { default_doc - local path - path="$(python3 -c 'import sys;print(sys.path[-1])')/awscli" - mkdir -p "$subpkgdir/$path" - mv "$pkgdir/$path/examples" "$pkgdir/$path/topics" \ - "$subpkgdir/$path/" + + local pyver="$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')" + + amove usr/lib/python3*/site-packages/awscli/topics + amove usr/lib/python3*/site-packages/awscli/examples + + mkdir -p "$pkgdir"/usr/lib/python$pyver/site-packages/awscli/examples + # move back top-level so just "aws help" works + mv "$subpkgdir"/usr/lib/python$pyver/site-packages/awscli/examples/global_options.rst \ + "$pkgdir"/usr/lib/python$pyver/site-packages/awscli/examples/ } -sha512sums="c16b704e1a5c382f7ecf7543ef7a7de65fc0b4eea157ad5d6415dfc9f68be3ca4c14f401293567545043e0f6c316304dd38d69e641e5cf93b5760e77ad3f7bc0 aws-cli-1.18.177.tar.gz" + +sha512sums=" +eedf2027a36122bad94e6090a4511fc9438f509a19d97b57fc79ec9b4f7df88003f04584fc9ecbf499b7d37430bf00d2eba333f1354dea8c69805b7bdffa8406 aws-cli-2.15.30.tar.gz +850b4ca6e09f96cba8968d2d7a3b60bd5206d7c4c257ba927b576336a992796b51263506cdd100314604ec7ad493a26326bf059ccd7f96772ad9326aa68ee41e fix-env.patch +ecfad03dafbdc8cdc73f41a432f0acb53ce3636f58a8b3d0cfcef06617f24ee8588e0648ee7290148bcfc8a3007d00b865899d473a6653d970a55be63760551f tmpfile-index.patch +" |