From eea25bc9db136a21ba73cbd932f69d133032de11 Mon Sep 17 00:00:00 2001 From: benoit74 Date: Tue, 7 May 2024 07:01:50 +0000 Subject: [PATCH] Automatically publish to Pypi Uses conventional jobs from Python bootstrap except that Python version is hardcoded for now, until we've moved to pyproject.toml --- .github/workflows/Publish.yml | 43 +++++++++++++++++++ .../{docker.yml => PublishDockerDevImage.yml} | 22 +++++----- 2 files changed, 53 insertions(+), 12 deletions(-) create mode 100644 .github/workflows/Publish.yml rename .github/workflows/{docker.yml => PublishDockerDevImage.yml} (65%) diff --git a/.github/workflows/Publish.yml b/.github/workflows/Publish.yml new file mode 100644 index 0000000..17d1b22 --- /dev/null +++ b/.github/workflows/Publish.yml @@ -0,0 +1,43 @@ +name: Build and upload to PyPI + +on: + release: + types: [published] + +jobs: + publish: + runs-on: ubuntu-22.04 + permissions: + id-token: write # mandatory for PyPI trusted publishing + + steps: + - uses: actions/checkout@v3 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: '3.8' # manual configuration until Python bootstrap is implemented + # python-version-file: pyproject.toml + architecture: x64 + + - name: Build packages + run: | + pip install -U pip build + python -m build --sdist --wheel + + - name: Upload to PyPI + uses: pypa/gh-action-pypi-publish@release/v1.8 + + - name: Build and push Docker image + uses: openzim/docker-publish-action@v10 + with: + image-name: openzim/sotoki + tag-pattern: /^v([0-9.]+)$/ + latest-on-tag: true + restrict-to: openzim/sotoki + registries: ghcr.io + credentials: + GHCRIO_USERNAME=${{ secrets.GHCR_USERNAME }} + GHCRIO_TOKEN=${{ secrets.GHCR_TOKEN }} + repo_description: auto + repo_overview: auto diff --git a/.github/workflows/docker.yml b/.github/workflows/PublishDockerDevImage.yml similarity index 65% rename from .github/workflows/docker.yml rename to .github/workflows/PublishDockerDevImage.yml index 454ebae..17cc2fc 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/PublishDockerDevImage.yml @@ -1,29 +1,27 @@ -name: Docker +name: Publish Docker dev image on: push: branches: - main - tags: - - v* jobs: - build-and-push: - name: Deploy Docker Image + publish: runs-on: ubuntu-22.04 + steps: - - uses: actions/checkout@v4 - - name: Build and push + - uses: actions/checkout@v3 + + - name: Build and push Docker image uses: openzim/docker-publish-action@v10 with: image-name: openzim/sotoki - on-master: dev - tag-pattern: /^v([0-9.]+)$/ - latest-on-tag: true + manual-tag: dev + latest-on-tag: false restrict-to: openzim/sotoki - repo_description: auto - repo_overview: auto registries: ghcr.io credentials: GHCRIO_USERNAME=${{ secrets.GHCR_USERNAME }} GHCRIO_TOKEN=${{ secrets.GHCR_TOKEN }} + repo_description: auto + repo_overview: auto