Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move packaging metadata into pyproject.toml (again) #45

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,6 @@ check_patroni is licensed under PostgreSQL license.
$ pip install git+https://github.com/dalibo/check_patroni.git
```

check_patroni works on python 3.6, we keep it that way because patroni also
supports it and there are still lots of RH 7 variants around. That being said
python 3.6 has been EOL for age and there is no support for it in the github
CI.

## Support

If you hit a bug or need help, open a [GitHub
Expand Down
63 changes: 62 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,68 @@
[build-system]
requires = ["setuptools", "setuptools-scm"]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"

[project]
name = "check_patroni"
dynamic = ["version"]
description = "Nagios plugin to check on patroni"
readme = "README.md"
license = { text = "PostgreSQL" }
requires-python = ">=3.7"
authors = [
{ name = "Benoit Lobréau", email = "[email protected]" },
{ name = "Dalibo", email = "[email protected]" },
]
maintainers = [
{ name = "Benoit Lobréau", email = "[email protected]" },
]
keywords = [
"cli",
"monitoring",
"patroni",
"nagios",
"check",
]
classifiers = [
"Development Status :: 4 - Beta", # "Development Status :: 5 - Production/Stable",
"Environment :: Console",
"License :: OSI Approved :: PostgreSQL License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Topic :: System :: Monitoring",
]
dependencies = [
"attrs >= 17, !=21.1",
"requests",
"nagiosplugin >= 1.3.2",
"click >= 8.0.1",
]

[project.optional-dependencies]
test = [
"pytest",
"pytest-mock",
]

[project.scripts]
check_patroni = "check_patroni.cli:main"

[project.urls]
"Bug Tracker" = "https://github.com/dalibo/check_patroni/issues"
Changelog = "https://github.com/dalibo/check_patroni/blob/master/CHANGELOG.md"
Homepage = "https://github.com/dalibo/check_patroni"
"Source code" = "https://github.com/dalibo/check_patroni"

[tool.setuptools.dynamic]
version = { attr = "check_patroni.__version__" }

[tool.setuptools.packages.find]
where = ["."]

[tool.isort]
profile = "black"

60 changes: 2 additions & 58 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,59 +1,3 @@
import pathlib

from setuptools import find_packages, setup

HERE = pathlib.Path(__file__).parent

long_description = (HERE / "README.md").read_text()


def get_version() -> str:
fpath = HERE / "check_patroni" / "__init__.py"
with fpath.open() as f:
for line in f:
if line.startswith("__version__"):
return line.split('"')[1]
raise Exception(f"version information not found in {fpath}")


setup(
name="check_patroni",
version=get_version(),
author="Dalibo",
author_email="[email protected]",
packages=find_packages(include=["check_patroni*"]),
include_package_data=True,
url="https://github.com/dalibo/check_patroni",
license="PostgreSQL",
description="Nagios plugin to check on patroni",
long_description=long_description,
long_description_content_type="text/markdown",
classifiers=[
"Development Status :: 4 - Beta", # "Development Status :: 5 - Production/Stable",
"Environment :: Console",
"License :: OSI Approved :: PostgreSQL License",
"Programming Language :: Python :: 3",
"Topic :: System :: Monitoring",
],
keywords="patroni nagios check",
python_requires=">=3.6",
install_requires=[
"attrs >= 17, !=21.1",
"requests",
"nagiosplugin >= 1.3.2",
"click >= 8.0.1",
],
extras_require={
"test": [
"pytest",
"pytest-mock",
],
},
entry_points={
"console_scripts": [
"check_patroni=check_patroni.cli:main",
],
},
zip_safe=False,
)
from setuptools import setup

setup()
Loading