From nobody Wed Aug 07 05:51:01 2024 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Wdzn14Pfgz5SjGT; Wed, 07 Aug 2024 05:51:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Wdzn13zpqz43v9; Wed, 7 Aug 2024 05:51:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1723009861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mhTjfrO+7hyjP3K5W5E6GcHQxH1dI52n5+Ejn6PdTkA=; b=G3IoBoICX4loEwphO/vSDsSytKfshqAx5Mnw+OzirW9bWxLt4MHVUwrTC6mhye+wQh/Y7s txWAINTj6zO4uCgtRiWnmT2lWa3MO6tlnyBVWmHQ4N/RIT6qXWt5Ftyk4k9wUu7N+nIVGx Mkq7RmlQzmQHXP549QliqLmBB1SQhJaooAX/CAbb+HEMGr2NFYPBdWp5q21GPA2ViLp9+x GFAiWVmG32N+etjuqaYtvRDsJ6uTxu3Y7yoManwFttGelrl0PoedjKt3o1TuJ5/+CjoXG0 UrHCZ6slDihWh8UPV62zlfs8nftHzmHGi+uP0IYzCE5Qz0a37UgQcH4zClYF1Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1723009861; a=rsa-sha256; cv=none; b=VfOjYCdKFNoRB1AaLqTGy4Hz60xvybVZUbR0kH50wtJQ9UQ9249V+i/wfQrT9vsz5fMK9E f2Am/i06cu00ROPCLvD4w7gXnM5DoqrrGSpDKKNKto5uDG9yLjBXQZh1FIoZ45bQWJSL06 /QF3onATxCwm+mCaEuTDPU50O6h7gozOkzg9/Zftf0R13+MayBy/WgK9dIakUpEiKyLY+D NYQZcfVwjgxPMyvDZFjGDXzw+1umq+Z6Xs30YRJ5zPFILOgShFL0jq2RklRQPyJTMjUJxM cWpFI07w3Ahcy2Ybu9ZTD3wEtBdF7YSO1M1/v8tbVHk6NooKLNBeGr754jkzkw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1723009861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mhTjfrO+7hyjP3K5W5E6GcHQxH1dI52n5+Ejn6PdTkA=; b=RkT21KEgrAU3CxHMJTkP3dQh6UKdcDcbZUI9RK5fbzchEOGksQWJPA+926RNwNzND+DPlv skvAKhAB2s9jV7suN460hwJuO0E/TGUvozvC3b4EHmdk0ZgM9/4duXrdrzAxyuTxc3YbCq 7ZVq8j75W/fpqPtbRxG2u/WKnpvRaXilXlI5gXqsOumZ+Mhk7g9yRLwA/agVy0pp3JFsXW Rq4Zz9kUNPZgg8qjMOHkqDOHg7pdGw/W0tMGw/sRTu4kcwBKVDWXVAWKdrfYl/JAyql+6h 7fetpZPrFhhSwdA7JVxXZTPFpz2EEOmprJZ6hr2Cw91COmqOJvs0ZmA7qZVsGA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Wdzn13ZKwzfHZ; Wed, 7 Aug 2024 05:51:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4775p1JC030136; Wed, 7 Aug 2024 05:51:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4775p1sT030133; Wed, 7 Aug 2024 05:51:01 GMT (envelope-from git) Date: Wed, 7 Aug 2024 05:51:01 GMT Message-Id: <202408070551.4775p1sT030133@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Zsolt Udvari Subject: git: c1d6e47d5cc4 - main - sysutils/py-pyinfra: new port: automates infrastructure List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-main@freebsd.org Sender: owner-dev-commits-ports-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: uzsolt X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c1d6e47d5cc43f23d5d93154b539de3a427a2465 Auto-Submitted: auto-generated The branch main has been updated by uzsolt: URL: https://cgit.FreeBSD.org/ports/commit/?id=c1d6e47d5cc43f23d5d93154b539de3a427a2465 commit c1d6e47d5cc43f23d5d93154b539de3a427a2465 Author: Florian Walpen AuthorDate: 2024-08-07 05:47:57 +0000 Commit: Zsolt Udvari CommitDate: 2024-08-07 05:47:57 +0000 sysutils/py-pyinfra: new port: automates infrastructure pyinfra turns Python code into shell commands and runs them on your servers. Execute ad-hoc commands and write declarative operations. Target SSH servers, local machine and Docker containers. Fast and scales from one server to thousands. Think ansible but Python instead of YAML, and a lot faster. PR: 279262 --- sysutils/Makefile | 1 + sysutils/py-pyinfra/Makefile | 59 +++++++++++++++++++++++++++++++++++++++++++ sysutils/py-pyinfra/distinfo | 3 +++ sysutils/py-pyinfra/pkg-descr | 6 +++++ 4 files changed, 69 insertions(+) diff --git a/sysutils/Makefile b/sysutils/Makefile index 21f04587d469..3e07681a3708 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -1150,6 +1150,7 @@ SUBDIR += py-ptyprocess SUBDIR += py-puremagic SUBDIR += py-py-cpuinfo + SUBDIR += py-pyinfra SUBDIR += py-python-bareos SUBDIR += py-python-consul SUBDIR += py-python-consul2 diff --git a/sysutils/py-pyinfra/Makefile b/sysutils/py-pyinfra/Makefile new file mode 100644 index 000000000000..54b8e41b2bf8 --- /dev/null +++ b/sysutils/py-pyinfra/Makefile @@ -0,0 +1,59 @@ +PORTNAME= pyinfra +DISTVERSIONPREFIX= v +DISTVERSION= 3.0.2 +CATEGORIES= sysutils python +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= dev@submerge.ch +COMMENT= Automates infrastructure using Python +WWW= https://pyinfra.com/ + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.md + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}click>2:devel/py-click@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}configparser>0:devel/py-configparser@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}distro>=1.6<2:sysutils/py-distro@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}gevent>=1.5:devel/py-gevent@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}Jinja2>2<4:devel/py-Jinja2@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}packaging>=16.1:devel/py-packaging@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}paramiko>=2.7<4:security/py-paramiko@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}python-dateutil>2<3:devel/py-python-dateutil@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pywinrm>0:security/py-pywinrm@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}typeguard>0:devel/py-typeguard@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>0:devel/py-coverage@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-cov>0:devel/py-pytest-cov@${PY_FLAVOR} + +USES= pytest python +USE_GITHUB= yes +GH_ACCOUNT= pyinfra-dev +USE_PYTHON= autoplist distutils + +# Most of the ignored tests fail because docker is missing. +# The *_ensure_newline_* ones fail when pyinfra is not installed first. +PYTEST_IGNORED_TESTS= test_int_docker_install_package_ubuntu \ + test_e2e_ssh_sudo_password \ + test_int_local_file_no_changes \ + test_int_local_directory_no_changes \ + test_int_local_link_no_changes \ + test_int_local_line_no_changes \ + test_int_local_line_ensure_newline_true \ + test_int_local_line_ensure_newline_false + +.include + +.if ${PYTHON_REL} < 30900 +RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}graphlib-backport>0:graphics/py-graphlib-backport@${PY_FLAVOR} +.endif + +.if ${PYTHON_REL} < 31000 +RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}importlib-metadata>3.6:devel/py-importlib-metadata@${PY_FLAVOR} +.endif + +.if ${PYTHON_REL} < 31100 +RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}typing-extensions>0:devel/py-typing-extensions@${PY_FLAVOR} +.endif + +.include diff --git a/sysutils/py-pyinfra/distinfo b/sysutils/py-pyinfra/distinfo new file mode 100644 index 000000000000..e50a9a4ad53b --- /dev/null +++ b/sysutils/py-pyinfra/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1721915646 +SHA256 (pyinfra-dev-pyinfra-v3.0.2_GH0.tar.gz) = f004c5e13b751fc90d2df81bd2fb5f10b14f869b0ca488ed7bc8c355ecb9ef70 +SIZE (pyinfra-dev-pyinfra-v3.0.2_GH0.tar.gz) = 319429 diff --git a/sysutils/py-pyinfra/pkg-descr b/sysutils/py-pyinfra/pkg-descr new file mode 100644 index 000000000000..1ec358a8d1c1 --- /dev/null +++ b/sysutils/py-pyinfra/pkg-descr @@ -0,0 +1,6 @@ +pyinfra turns Python code into shell commands and runs them on your servers. +Execute ad-hoc commands and write declarative operations. Target SSH servers, +local machine and Docker containers. Fast and scales from one server to +thousands. + +Think ansible but Python instead of YAML, and a lot faster.