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

Switch to pyproject.toml from setup.py #73

Merged
merged 14 commits into from
Feb 29, 2024
5 changes: 5 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ jobs:
pip install --user black~=23.9.1
pip install --user flake8~=6.1.0
pip install --user pytest
pip install --user validate-pyproject[all]

- name: Install Partition Manager
run: |
Expand All @@ -38,6 +39,10 @@ jobs:
run: |
python -m flake8

- name: Checking pyproject
run: |
validate-pyproject pyproject.toml

test:
runs-on: ubuntu-latest

Expand Down
29 changes: 7 additions & 22 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,14 @@ on:
push:
tags:
- "v*"
workflow_dispatch:

jobs:
release:
name: release
runs-on: ubuntu-latest

steps:
- name: Setup Go
uses: actions/setup-go@v2
with:
go-version: 1.17

- name: Setup python
uses: actions/setup-python@v2
with:
Expand All @@ -31,9 +27,8 @@ jobs:
- name: Install packages
run: |
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install -y build-essential python-setuptools python3-pip
pip3 install setuptools
sudo apt-get install -y build-essential python3-pip
pip3 install build

- name: Checkout
uses: actions/checkout@v2
Expand All @@ -44,26 +39,16 @@ jobs:
id: get_version
uses: battila7/get-version-action@v2

- name: Install nFPM
run: |
go install github.com/goreleaser/nfpm/v2/cmd/[email protected]

- name: Build partition-manager
run: |
mkdir install
python3 setup.py install --root "install/" --prefix "/usr/local" --install-lib "/usr/lib/python3/dist-packages"

- name: Build deb
run: |
SEMVER=${{ steps.get_version.outputs.version }}
mkdir nfpm-pkg
nfpm package -p deb --target "nfpm-pkg/"
python3 -m build

- name: "Publish release"
uses: "marvinpinto/action-automatic-releases@d68defdd11f9dcc7f52f35c1b7c236ee7513bcc1"
uses: "marvinpinto/action-automatic-releases@919008cf3f741b179569b7a6fb4d8860689ab7f0"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "${{ steps.get_version.outputs.version }}"
title: "partition-manager ${{ steps.get_version.outputs.version }}"
files: |
nfpm-pkg/*.deb
dist/*.whl
dist/*.tar.gz
4 changes: 4 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ repos:
- PyMySQL
- pyyaml
- pytest
- repo: https://github.com/abravalheri/validate-pyproject
rev: v0.16
hooks:
- id: validate-pyproject
- repo: local
hooks:
- id: pytest
Expand Down
35 changes: 35 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "mariadb-sequential-partition-manager"
maintainers = [
{name = "J.C. Jones", email = "[email protected]"},
]
version = "0.4.0"
description = "Manage DB partitions based on sequential IDs"
license = {file = "LICENSE.txt"}
classifiers = [
"Development Status :: 4 - Beta",
"License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)",
"Programming Language :: Python :: 3",
]
keywords = ["database", "mariadb"]
dependencies = [
"pyyaml"
]
requires-python = ">=3.8"
readme = "README.md"

[tool.hatch.build.targets.wheel]
packages = ["partitionmanager"]

[project.optional-dependencies]
pymysql = ["PyMySQL >= 1.0.2"]

[project.urls]
Repository = "http://github.com/letsencrypt/mariadb-sequential-partition-manager"

[project.scripts]
partition-manager = "partitionmanager.cli:main"
27 changes: 0 additions & 27 deletions setup.py

This file was deleted.

4 changes: 4 additions & 0 deletions wheel2deb.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
mariadb-sequential-partition-manager:
maintainer_name: "Let's Encrypt"
maintainer_email: "[email protected]"
extended_desc: "Manage DB partitions based on sequential IDs"
Loading