From 23d8958bfa9eec55017dafef98f3b949602bd1e0 Mon Sep 17 00:00:00 2001 From: Joachim Metz Date: Wed, 27 May 2026 09:32:44 +0200 Subject: [PATCH 1/2] Changes for deployment --- acstore.ini | 9 --------- appveyor.yml | 22 +--------------------- config/dpkg/control | 4 ++-- pyproject.toml | 10 +++++++++- 4 files changed, 12 insertions(+), 33 deletions(-) delete mode 100644 acstore.ini diff --git a/acstore.ini b/acstore.ini deleted file mode 100644 index 58abf44..0000000 --- a/acstore.ini +++ /dev/null @@ -1,9 +0,0 @@ -[project] -name: acstore -name_description: ACStore -status: alpha -maintainer: Log2Timeline maintainers -homepage_url: https://github.com/log2timeline/acstore -description_short: Attribute Container Storage (ACStore). -description_long: ACStore, or Attribute Container Storage, provides a stand-alone - implementation to read and write attribute container storage files. diff --git a/appveyor.yml b/appveyor.yml index e77d636..8fd32db 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -14,28 +14,11 @@ environment: PYTHON_VERSION: "3.14" L2TBINARIES_TRACK: "dev" TARGET: tests - - DESCRIPTION: "Build wheel on Windows with 32-bit Python 3.14" - MACHINE_TYPE: "amd64" - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 - PYTHON: "C:\\Python314-x64" - PYTHON_VERSION: "3.14" - L2TBINARIES_TRACK: "dev" - TARGET: wheel - - DESCRIPTION: "Build wheel on Windows with 64-bit Python 3.14" - MACHINE_TYPE: "amd64" - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 - PYTHON: "C:\\Python314-x64" - PYTHON_VERSION: "3.14" - L2TBINARIES_TRACK: "dev" - TARGET: wheel install: -- cmd: "%PYTHON%\\python.exe -m pip install -U build pip setuptools twine wheel" - ps: .\config\appveyor\install.ps1 -build_script: -- cmd: IF [%TARGET%]==[wheel] ( - "%PYTHON%\\python.exe" -m build --wheel ) +build: off test_script: - cmd: IF [%TARGET%]==[tests] ( @@ -43,6 +26,3 @@ test_script: IF EXIST "tests\\end-to-end.py" ( set PYTHONPATH=. && "%PYTHON%\\python.exe" "tests\\end-to-end.py" --debug -c "config\\end-to-end.ini" ) ) - -artifacts: -- path: dist\*.whl diff --git a/config/dpkg/control b/config/dpkg/control index 543f14e..5791c53 100644 --- a/config/dpkg/control +++ b/config/dpkg/control @@ -11,5 +11,5 @@ Package: python3-acstore Architecture: all Depends: python3-yaml (>= 3.10), ${misc:Depends} Description: Python 3 module of ACStore - ACStore, or Attribute Container Storage, provides a stand-alone - implementation to read and write attribute container storage files. + ACStore, or Attribute Container Storage, provides a stand-alone implementation + to read and write attribute container storage files. diff --git a/pyproject.toml b/pyproject.toml index 084f5c2..570cea0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "acstore" -version = "20260526" +version = "20260527" description = "Attribute Container Storage (ACStore)" maintainers = [ { name = "Log2Timeline maintainers", email = "log2timeline-maintainers@googlegroups.com" }, @@ -36,5 +36,13 @@ black = true non-cap = [] non-strict = true +[tool.l2tdevtools] +name = "ACStore" +status = "alpha" +description = """ +ACStore, or Attribute Container Storage, provides a stand-alone implementation \ +to read and write attribute container storage files. \ +""" + [tool.setuptools] package-dir = {"acstore" = "acstore"} From 57a3d4eb81ba858f07ea106f4df7602b8fffd848 Mon Sep 17 00:00:00 2001 From: Joachim Metz Date: Wed, 27 May 2026 09:36:02 +0200 Subject: [PATCH 2/2] Changes for deployment --- .github/workflows/build_wheel.yml | 73 +++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 .github/workflows/build_wheel.yml diff --git a/.github/workflows/build_wheel.yml b/.github/workflows/build_wheel.yml new file mode 100644 index 0000000..3ac7de1 --- /dev/null +++ b/.github/workflows/build_wheel.yml @@ -0,0 +1,73 @@ +# Build Python sdist and wheel. +name: build_wheels +on: + pull_request: + push: + release: + types: [published] + # Allow trigger via API + workflow_dispatch: +permissions: read-all +jobs: + build_sdist: + name: Build sdist + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - name: Install build dependencies + run: | + sudo apt update + sudo apt -y install python3-build + - name: Build sdist + run: | + python -m build --sdist + - uses: actions/upload-artifact@v7 + with: + name: cibw-sdist + path: dist/*.tar.gz + build_wheel: + name: Build wheel + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - name: Install build dependencies + run: | + sudo apt update + sudo apt -y install python3-build python3-wheel + - name: Build wheel + run: | + python -m build --wheel + - uses: actions/upload-artifact@v7 + with: + name: cibw-wheels + path: dist/*.whl + upload_test_pypi: + needs: [build_sdist, build_wheel] + runs-on: ubuntu-latest + environment: pypi + permissions: + id-token: write + if: github.event_name == 'release' && github.event.action == 'published' + steps: + - uses: actions/download-artifact@v8 + with: + pattern: cibw-* + path: dist + merge-multiple: true + - uses: pypa/gh-action-pypi-publish@release/v1 + with: + repository-url: https://test.pypi.org/legacy/ + upload_pypi: + needs: [upload_test_pypi] + runs-on: ubuntu-latest + environment: pypi + permissions: + id-token: write + if: github.event_name == 'release' && github.event.action == 'published' + steps: + - uses: actions/download-artifact@v8 + with: + pattern: cibw-* + path: dist + merge-multiple: true + - uses: pypa/gh-action-pypi-publish@release/v1