# Maintainer: Alexandre Ferreira <contact@alexjorgef.com>

pkgname=ansible-core
pkgver=2.19.2
pkgrel=1
pkgdesc='Radically simple IT automation platform'
arch=('any')
url='https://pypi.org/project/ansible-core'
msys2_references=(
  "cpe: cpe:/a:ansible:ansible"
  "cpe: cpe:/a:redhat:ansible"
  "cpe: cpe:/a:redhat:ansible_engine"
  "purl: pkg:pypi/ansible-core"
)
license=('spdx:GPL-3.0-or-later')
depends=('python' 'python-yaml' 'python-jinja' 'python-packaging')
provides=('python-ansible' 'ansible-base')
optdepends=(
	'sshpass: for ssh connections with password'
)
makedepends=('tar' 'python-build' 'python-installer' 'python-setuptools')
replaces=('ansible-base')
backup=('etc/ansible/ansible.cfg')
source=("https://pypi.python.org/packages/source/a/ansible-core/ansible_core-${pkgver}.tar.gz"
        "0001-ctypes-cdll-loadlibrary-msys2.patch")
sha512sums=('f349e2ae8c226b82d1a92069cab681f356db6b985bf5d034c92c687fb611f52dacc54106b68bbdcb6bd5b155396eeea410b80a7e136b3962bbeb223af6486977'
            'f129850ecf75b48dd89b2f43e7f09a2585d63959be807299f5c1ddcdb12ecafafa4a230dc0d8a9c284d5d6fec21eae22eb4c0c8c5fde37a09d7bdac7b8503b98')
noextract=("${pkgname/-/_}-${pkgver}.tar.gz")

apply_patch_with_msg() {
  for _fname in "$@"
  do
    msg2 "Applying ${_fname}"
    patch -Nbp1 -i "${srcdir}"/${_fname}
  done
}

prepare() {
  tar zxf "${srcdir}/${pkgname/-/_}-${pkgver}.tar.gz" || tar zxf "${srcdir}/${pkgname/-/_}-${pkgver}.tar.gz"

  cd "${srcdir}/${pkgname/-/_}-${pkgver}"

  # Patches
  apply_patch_with_msg \
    0001-ctypes-cdll-loadlibrary-msys2.patch
}

build() {
  cd "${srcdir}/${pkgname/-/_}-${pkgver}"
  python -m build --wheel --skip-dependency-check --no-isolation
}

package() {
  cd ${pkgname/-/_}-${pkgver}
  python -m installer --destdir="${pkgdir}" dist/*.whl
  install -Dm644 COPYING "${pkgdir}"/usr/share/doc/${pkgname}/COPYING
}
