diff --git a/.github/workflows/build-package.yml b/.github/workflows/build-package.yml deleted file mode 100644 index f1e1961..0000000 --- a/.github/workflows/build-package.yml +++ /dev/null @@ -1,57 +0,0 @@ ---- -name: Build Package - -on: - pull_request: - push: - branches: - - main - - develop - workflow_dispatch: - -permissions: - contents: read - -jobs: - quality: - name: Code Quality - uses: ./.github/workflows/quality.yml - - test: - name: Tests - uses: ./.github/workflows/run_tests.yml - - build: - name: Build Distribution - runs-on: ubuntu-latest - needs: [quality, test] - - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Install uv - uses: astral-sh/setup-uv@v5 - with: - enable-cache: true - cache-dependency-glob: "pyproject.toml" - - - name: Set up Python 3.12 - run: uv python install 3.12 - - - name: Install dependencies - run: uv sync --dev - - - name: Build package - run: uv build - - - name: Upload build artifacts - uses: actions/upload-artifact@v4 - with: - name: dist-python-3.12 - path: dist/ - retention-days: 30 - if-no-files-found: error - - - name: Publish package distributions to PyPI - uses: pypa/gh-action-pypi-publish@release/v1.13 diff --git a/.github/workflows/publish-package.yml b/.github/workflows/publish-package.yml new file mode 100644 index 0000000..008a9a0 --- /dev/null +++ b/.github/workflows/publish-package.yml @@ -0,0 +1,33 @@ +name: Upload Python Package to PyPI when a Release is Created + +permissions: + contents: read + +on: + release: + types: [published] + +jobs: + pypi-publish: + name: Publish release to PyPI + runs-on: ubuntu-latest + environment: + name: release + url: https://pypi.org/p/netbox-zabbix-sync + permissions: + id-token: write + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + - name: Set up Python + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 + with: + python-version: "3.x" + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install setuptools wheel build + - name: Build package + run: | + python -m build + - name: Publish package distributions to PyPI + uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc