Skip to content

Pre-Release

Pre-Release #1

Workflow file for this run

# must do before using this action:
# - set up RELEASE_TOKEN in secrets of the repository avocado-framework/avocado
# - set up RTD_TOKEN in secrets to update readthedocs
# - set up two tokens for twine: PYPI_USER and PYPI_PASSWD
name: Pre-Release
on: workflow_dispatch
jobs:
release-test:
name: Release pipeline
runs-on: ubuntu-latest
container:
image: fedora:34
env:
VERSION: ${{ github.event.inputs.version }}
DEVEL_NAME: ${{ github.event.inputs.devel_name }}
DEVEL_MAIL: ${{ github.event.inputs.devel_mail }}
PYTHON: /usr/bin/python3
TOKEN_RTD: ${{ secrets.RTD_TOKEN }}
URL: "https://readthedocs.org/api/v3/projects/${{ github.event.inputs.rtd_project }}"
steps:
- name: Generate token
id: generate_token
uses: tibdex/github-app-token@021a2405c7f990db57f5eae5397423dcc554159c
with:
app_id: ${{ secrets.MR_AVOCADO_ID }}
installation_id: ${{ secrets.MR_AVOCADO_INSTALLATION_ID }}
private_key: ${{ secrets.MR_AVOCADO_PRIVATE_KEY }}
- name: install required packages
run: dnf -y install git python3-pip
- uses: actions/checkout@v4
with:
persist-credentials: false
fetch-depth: 0
- name: Build wheel
run: |
python3 -m pip install build
mkdir PYPI_UPLOAD
python3 -m build -o PYPI_UPLOAD
- name: Save wheel as artifact
uses: actions/upload-artifact@v4
with:
name: wheel
path: ${{github.workspace}}/PYPI_UPLOAD/
retention-days: 3
publish-to-test-pypi:
name: Publish Avocado to TestPyPI
needs:
- release-test
runs-on: ubuntu-latest
environment:
name: pypi
url: https://test.pypi.org/project/autils
permissions:
id-token: write # IMPORTANT: mandatory for trusted publishing
steps:
- name: Download all the wheels
uses: actions/download-artifact@v4
with:
name: wheel
path: dist/
- name: Publish avocado to test PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository-url: https://test.pypi.org/legacy/