]> git.ipfire.org Git - thirdparty/dnspython.git/commitdiff
update 2.8 branch workflows
authorBob Halley <halley@dnspython.org>
Thu, 4 Sep 2025 19:16:25 +0000 (12:16 -0700)
committerBob Halley <halley@dnspython.org>
Thu, 4 Sep 2025 19:16:25 +0000 (12:16 -0700)
.github/workflows/publish.yml [new file with mode: 0644]
.github/workflows/test-publish.yml [new file with mode: 0644]

diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
new file mode 100644 (file)
index 0000000..3cc3b45
--- /dev/null
@@ -0,0 +1,108 @@
+name: Publish
+on:
+  workflow_dispatch:
+jobs:
+  build:
+    name: Build distribution
+    runs-on: ubuntu-latest
+
+    steps:
+    - uses: actions/checkout@v5
+      with:
+        persist-credentials: false
+    - name: Set up Python
+      uses: actions/setup-python@v6
+      with:
+        python-version: "3.x"
+    - name: Install pypa/build
+      run: >-
+        python3 -m
+        pip install
+        build
+        --user
+    - name: Build a binary wheel and a source tarball
+      run: python3 -m build
+    - name: Store the distribution packages
+      uses: actions/upload-artifact@v4
+      with:
+        name: python-package-distributions
+        path: dist/
+
+  publish-to-pypi:
+    name: Publish Python distribution to PyPI
+    if: startsWith(github.ref, 'refs/tags/')  # only publish to PyPI on tag pushes
+    needs:
+    - build
+    runs-on: ubuntu-latest
+
+    environment:
+      name: pypi
+      url: https://pypi.org/p/dnspython_test
+
+    permissions:
+      id-token: write
+
+    steps:
+    - name: Download all the dists
+      uses: actions/download-artifact@v5
+      with:
+        name: python-package-distributions
+        path: dist/
+    - name: Publish distribution to TestPyPI
+      uses: pypa/gh-action-pypi-publish@release/v1
+      with:
+        verbose: true
+
+  # build-test:
+  #   name: Build distribution
+  #   runs-on: ubuntu-latest
+
+  #   steps:
+  #   - uses: actions/checkout@v5
+  #     with:
+  #       persist-credentials: false
+  #   - name: Set up Python
+  #     uses: actions/setup-python@v6
+  #     with:
+  #       python-version: "3.x"
+  #   - name: Update project
+  #     run: python3 ./util/make-test-project
+  #   - name: Install pypa/build
+  #     run: >-
+  #       python3 -m
+  #       pip install
+  #       build
+  #       --user
+  #   - name: Build a binary wheel and a source tarball
+  #     run: python3 -m build
+  #   - name: Store the distribution packages
+  #     uses: actions/upload-artifact@v4
+  #     with:
+  #       name: python-test-package-distributions
+  #       path: dist/
+
+  # publish-to-testpypi:
+  #   name: Publish Python distribution to TestPyPI
+  #   needs:
+  #   - build-test
+  #   runs-on: ubuntu-latest
+
+  #   environment:
+  #     name: testpypi
+  #     url: https://test.pypi.org/p/dnspython_test
+
+  #   permissions:
+  #     id-token: write
+
+  #   steps:
+  #   - name: Download all the dists
+  #     uses: actions/download-artifact@v5
+  #     with:
+  #       name: python-test-package-distributions
+  #       path: dist/
+  #   - name: Publish distribution to TestPyPI
+  #     uses: pypa/gh-action-pypi-publish@release/v1
+  #     with:
+  #       repository-url: https://test.pypi.org/legacy/
+  #       verbose: true
+  #       attestations: false
diff --git a/.github/workflows/test-publish.yml b/.github/workflows/test-publish.yml
new file mode 100644 (file)
index 0000000..6134e5e
--- /dev/null
@@ -0,0 +1,59 @@
+name: Test Publish
+on:
+  workflow_dispatch:
+jobs:
+  build-test:
+    name: Build distribution
+    runs-on: ubuntu-latest
+
+    steps:
+    - uses: actions/checkout@v5
+      with:
+        persist-credentials: false
+    - name: Set up Python
+      uses: actions/setup-python@v6
+      with:
+        python-version: "3.x"
+    - name: Update project
+      run: python3 ./util/make-test-project
+    - name: Install pypa/build
+      run: >-
+        python3 -m
+        pip install
+        build
+        --user
+    - name: Build a binary wheel and a source tarball
+      run: python3 -m build
+    - name: Store the distribution packages
+      uses: actions/upload-artifact@v4
+      with:
+        name: python-test-package-distributions
+        path: dist/
+
+  publish-to-testpypi:
+    name: Publish Python distribution to TestPyPI
+    if: startsWith(github.ref, 'refs/tags/')  # only publish on tag pushes
+    needs:
+    - build-test
+    runs-on: ubuntu-latest
+
+    environment:
+      name: testpypi
+      url: https://test.pypi.org/p/dnspython_test
+
+    permissions:
+      id-token: write
+
+    steps:
+    - name: Download all the dists
+      uses: actions/download-artifact@v5
+      with:
+        name: python-test-package-distributions
+        path: dist/
+    - name: Publish distribution to TestPyPI
+      uses: pypa/gh-action-pypi-publish@release/v1
+      with:
+        repository-url: https://test.pypi.org/legacy/
+        verbose: true
+        attestations: false
+