Skip to content

Release tests

Release tests #6

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: Release tests
on:
workflow_dispatch:
inputs:
version:
description: 'Release version'
required: true
default: '0.0'
devel_name:
description: 'Developer Name'
required: true
default: 'Avocado Developer'
devel_mail:
description: 'Developer mail'
required: true
default: '[email protected]'
rtd_project:
description: 'readthedocs project name'
required: true
default: 'avocado-framework'
jobs:
# release:
# 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 rpmdevtools git python3-pip make
# - uses: actions/checkout@v3
# with:
# persist-credentials: false
# fetch-depth: 0
# - name: Update VERSION files and python-avocado.spec
# run: |
# make -f Makefile.gh propagate-version
# make -f Makefile.gh release-update-spec
# - name: Commit files and tag
# run: |
# git config --global --add safe.directory `pwd`
# git config --local user.email "${{ github.event.inputs.devel_mail }}"
# git config --local user.name "${{ github.event.inputs.devel_name }}"
# make -f Makefile.gh release-commit-tag
# - name: Push changes to github
# uses: ad-m/github-push-action@master
# with:
# github_token: ${{ steps.generate_token.outputs.token }}
# branch: ${{ github.ref }}
# - name: Build wheel
# run: make -f Makefile.gh build-wheel check-wheel
# - name: Save wheel as artifact
# uses: actions/upload-artifact@v3
# with:
# name: wheel
# path: ${{github.workspace}}/PYPI_UPLOAD/
# retention-days: 3
# - name: Build documentation readthedocs
# run: |
# make -f Makefile.gh build-update-readthedocs
# - run: echo "In a few minutes the release documentation will be available in https://${{ github.event.inputs.rtd_project }}.readthedocs.io/en/${{ github.event.inputs.version }}/"
# - name: Upload to pypi
# continue-on-error: true
# env:
# TWINE_USERNAME: ${{ secrets.PYPI_USER }}
# TWINE_PASSWORD: ${{ secrets.PYPI_PASSWD }}
# run: make -f Makefile.gh update-pypi
build-and-publish-eggs:
name: Build eggs and publish them
runs-on: ubuntu-20.04
# needs: release
strategy:
matrix:
python-version: [3.10.9, 3.12.0]
fail-fast: false
steps:
- uses: actions/checkout@v3
with:
persist-credentials: false
fetch-depth: 0
ref: ${{ github.event.inputs.version }}
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Build eggs
run: |
if python -c 'import sys; exit(0) if sys.version_info.minor > 11 else exit(1)' ; then
pip install setuptools
fi
make -f Makefile.gh build-egg
# - name: Upload binaries to release
# uses: svenstaro/upload-release-action@v2
# with:
# repo_token: ${{ steps.generate_token.outputs.token }}
# file: ${{ github.workspace }}/EGG_UPLOAD/avocado_framework*egg
# tag: ${{ github.event.inputs.version }}
# overwrite: true
# file_glob: true