aboutsummaryrefslogtreecommitdiffstats
path: root/community/aws-cli/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/aws-cli/APKBUILD')
-rw-r--r--community/aws-cli/APKBUILD133
1 files changed, 95 insertions, 38 deletions
diff --git a/community/aws-cli/APKBUILD b/community/aws-cli/APKBUILD
index ec816fb8b4f..c2f831cb3a5 100644
--- a/community/aws-cli/APKBUILD
+++ b/community/aws-cli/APKBUILD
@@ -1,41 +1,105 @@
-# Maintainer: Valery Kartel <valery.kartel@gmail.com>
# Contributor: Valery Kartel <valery.kartel@gmail.com>
+# Maintainer:
pkgname=aws-cli
-pkgver=1.19.105
+pkgver=2.15.30
pkgrel=0
-pkgdesc="Universal Command Line Interface for Amazon Web Services"
+pkgdesc="Universal Command Line Interface for Amazon Web Services (v2)"
url="https://github.com/aws/aws-cli"
-# mips64: py3-s3transfer missing
-arch="noarch !mips64"
+# 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
@@ -44,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
@@ -52,28 +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="
-73207ca67d490df705022844e6d025d051a276698204fcf82171e0075f5db2c347de0634cffc48fbd210314d66fd79c61d4129003ddbd6db698adc710fbb2068 aws-cli-1.19.105.tar.gz
+eedf2027a36122bad94e6090a4511fc9438f509a19d97b57fc79ec9b4f7df88003f04584fc9ecbf499b7d37430bf00d2eba333f1354dea8c69805b7bdffa8406 aws-cli-2.15.30.tar.gz
+850b4ca6e09f96cba8968d2d7a3b60bd5206d7c4c257ba927b576336a992796b51263506cdd100314604ec7ad493a26326bf059ccd7f96772ad9326aa68ee41e fix-env.patch
+ecfad03dafbdc8cdc73f41a432f0acb53ce3636f58a8b3d0cfcef06617f24ee8588e0648ee7290148bcfc8a3007d00b865899d473a6653d970a55be63760551f tmpfile-index.patch
"