Skip to content

Additional onedir related fixes #1127

Additional onedir related fixes

Additional onedir related fixes #1127

Workflow file for this run

name: CI
on: [push, pull_request]
jobs:
Pre-Commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Set Cache Key
run: echo "PY=$(python --version --version | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV
- uses: actions/cache@v2
with:
path: ~/.cache/pre-commit
key: pre-commit|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }}|${{ hashFiles('.pre-commit-hooks/*') }}
- name: Install Dependencies
run: |
python -m pip install pre-commit
pre-commit install --install-hooks
- name: Run Pre-Commit
run: |
pre-commit run --show-diff-on-failure --color=always --all-files
Docs:
runs-on: ubuntu-20.04
needs: Pre-Commit
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up Python 3.9 For Nox
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install Nox
run: |
python -m pip install --upgrade pip
pip install nox
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install Doc Requirements
run: |
nox --force-color -e docs --install-only
- name: Build Docs
env:
SKIP_REQUIREMENTS_INSTALL: YES
run: |
nox --force-color -e docs
PyLint:
runs-on: ubuntu-latest
needs: Pre-Commit
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- name: Set up Python 3.9 For Nox
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install Nox
run: |
python -m pip install --upgrade pip
pip install nox
- name: Install Lint Requirements
run: |
nox --force-color -e lint --install-only
- name: Build Docs
env:
SKIP_REQUIREMENTS_INSTALL: YES
run: |
nox --force-color -e lint
Linux-System-Service:
runs-on: ubuntu-20.04
needs: Pre-Commit
timeout-minutes: 25
strategy:
fail-fast: false
matrix:
pytest-version:
- "~=7.0.0"
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install Nox
run: |
sudo -E apt-get update
sudo -E apt-get install -y python3-setuptools python-is-python3
sudo -E python3 -m pip install --upgrade pip
sudo -E python3 -m pip install 'nox<2022.8.7' 'pytest${{ matrix.pytest-version }}'
sudo mv /usr/bin/pip /usr/bin/pip2
sudo ln -sf /usr/bin/pip3 /usr/bin/pip
- name: Install Salt
run: |
curl -L https://bootstrap.saltstack.com | sudo sh -s -- -M -X -x python3 old-stable 3005
sudo apt-get install -y salt-api salt-ssh salt-syndic salt-cloud python3-pip
for service in $(sudo systemctl list-unit-files | grep salt | grep -v @ | awk '{ print $1 }'); do sudo systemctl stop $service; done
- name: Gather CodeCov Info
if: always()
id: codecov-info
run: |
echo ::set-output name=flag-python-version::$(python3 -c "import sys; print('Py{}{}'.format(*sys.version_info))")
echo ::set-output name=flag-pytest-version::$(python3 -c "import pytest; print('PyTest{}{}'.format(*pytest.__version__.split('.')))")
echo ::set-output name=flag-salt-version::Salt$(salt --version | awk '{ print $2 }')
echo ::set-output name=flag-runner-os::$(python3 -c "print('${{ runner.os }}'.replace('-latest', ''))")
echo ::set-output name=uploader-url::$(python3 -c "print('https://uploader.codecov.io/latest/codecov-linux')")
- name: Create CodeCov Flags
if: always()
id: codecov
run: |
echo ::set-output name=flags::$(python -c "print(','.join(['${{ steps.codecov-info.outputs.flag-runner-os }}', '${{ steps.codecov-info.outputs.flag-python-version }}', '${{ steps.codecov-info.outputs.flag-salt-version }}', '${{ steps.codecov-info.outputs.flag-pytest-version }}']))")
echo ::set-output name=report-name::$(python -c "print('-'.join(['${{ steps.codecov-info.outputs.flag-runner-os }}', '${{ steps.codecov-info.outputs.flag-python-version }}', '${{ steps.codecov-info.outputs.flag-salt-version }}', '${{ steps.codecov-info.outputs.flag-pytest-version }}']))")
- name: Install Test Requirements
run: |
sudo -E nox --force-color -e tests --no-venv --install-only
- name: Test
id: run-tests
env:
SKIP_REQUIREMENTS_INSTALL: YES
run: |
sudo -E nox --force-color -e tests --no-venv -- -vv tests/
- name: Upload Salt Factories Code Coverage
if: always()
continue-on-error: true
shell: bash
env:
REPORT_FLAGS: ${{ steps.codecov.outputs.flags }},system,src
REPORT_NAME: ${{ steps.codecov.outputs.report-name }}-system-src
REPORT_PATH: artifacts/coverage-saltfactories.xml
run: |
if [ ! -f codecov-uploader ]; then
n=0
until [ "$n" -ge 5 ]
do
if curl --max-time 30 -L ${{ steps.codecov-info.outputs.uploader-url }} --output codecov-uploader; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to download uploader"
exit 1
fi
if [ -f codecov-uploader ]; then
chmod +x codecov-uploader
n=0
until [ "$n" -ge 5 ]
do
if ./codecov-uploader -R $(pwd) -n "${REPORT_NAME}" -f "${REPORT_PATH}" -F "${REPORT_FLAGS}"; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to upload codecov stats"
exit 1
fi
- name: Upload Salt Factories Tests Code Coverage
if: always()
continue-on-error: true
shell: bash
env:
REPORT_FLAGS: ${{ steps.codecov.outputs.flags }},system,tests
REPORT_NAME: ${{ steps.codecov.outputs.report-name }}-system-tests
REPORT_PATH: artifacts/coverage-tests.xml
run: |
if [ ! -f codecov-uploader ]; then
n=0
until [ "$n" -ge 5 ]
do
if curl --max-time 30 -L ${{ steps.codecov-info.outputs.uploader-url }} --output codecov-uploader; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to download uploader"
exit 1
fi
if [ -f codecov-uploader ]; then
chmod +x codecov-uploader
n=0
until [ "$n" -ge 5 ]
do
if ./codecov-uploader -R $(pwd) -n "${REPORT_NAME}" -f "${REPORT_PATH}" -F "${REPORT_FLAGS}"; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to upload codecov stats"
exit 1
fi
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v3
with:
name: runtests-${{ steps.codecov.outputs.report-name }}-system.log
path: artifacts/runtests-*.log
Windows:
runs-on: windows-latest
needs: Pre-Commit
timeout-minutes: 40
strategy:
fail-fast: false
max-parallel: 9
matrix:
python-version:
- "3.7"
- "3.8"
salt-version:
- salt~=3005.0
pytest-version:
- "~=7.0.0"
- "~=7.1.0"
exclude:
- {"python-version": "3.7", "pytest-version": "~=7.0.0", "salt-version": "salt~=3005.0"}
- {"python-version": "3.7", "pytest-version": "~=7.1.0", "salt-version": "salt~=3005.0"}
- {"python-version": "3.8", "pytest-version": "~=7.0.0", "salt-version": "salt~=3005.0"}
- {"python-version": "3.8", "pytest-version": "~=7.1.0", "salt-version": "salt~=3005.0"}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install Nox
run: |
python -m pip install --upgrade pip
pip install nox 'pytest${{ matrix.pytest-version }}'
- name: Gather CodeCov Info
if: always()
id: codecov-info
shell: bash
run: |
echo ::set-output name=flag-python-version::$(python -c "import sys; print('Py{}{}'.format(*sys.version_info))")
echo ::set-output name=flag-pytest-version::$(python -c "import pytest; print('PyTest{}{}'.format(*pytest.__version__.split('.')))")
echo ::set-output name=flag-salt-version::$(python -c "print('Salt{}'.format('_'.join(str(v) for v in '${{ matrix.salt-version }}'.split('==')[-1].split('.'))))")
echo ::set-output name=flag-runner-os::$(python -c "print('${{ runner.os }}'.replace('-latest', ''))")
echo ::set-output name=uploader-url::$(python -c "print('https://uploader.codecov.io/latest/codecov.exe')")
- name: Create CodeCov Flags
if: always()
id: codecov
shell: bash
run: |
echo ::set-output name=flags::$(python -c "print(','.join(['${{ steps.codecov-info.outputs.flag-runner-os }}', '${{ steps.codecov-info.outputs.flag-python-version }}', '${{ steps.codecov-info.outputs.flag-salt-version }}', '${{ steps.codecov-info.outputs.flag-pytest-version }}']))")
echo ::set-output name=report-name::$(python -c "print('-'.join(['${{ steps.codecov-info.outputs.flag-runner-os }}', '${{ steps.codecov-info.outputs.flag-python-version }}', '${{ steps.codecov-info.outputs.flag-salt-version }}', '${{ steps.codecov-info.outputs.flag-pytest-version }}']))")
- name: Install Test Requirements
shell: bash
env:
SALT_REQUIREMENT: ${{ matrix.salt-version }}
PYTEST_VERSION_REQUIREMENT: pytest${{ matrix.pytest-version }}
run: |
export PATH="/C/Program Files (x86)/Windows Kits/10/bin/10.0.18362.0/x64;$PATH"
nox --force-color -e tests-${{ matrix.python-version }} --install-only
- name: Test
id: run-tests
shell: bash
env:
SALT_REQUIREMENT: ${{ matrix.salt-version }}
PYTEST_VERSION_REQUIREMENT: pytest${{ matrix.pytest-version }}
SKIP_REQUIREMENTS_INSTALL: YES
run: |
export PATH="/C/Program Files (x86)/Windows Kits/10/bin/10.0.18362.0/x64;$PATH"
nox --force-color -e tests-${{ matrix.python-version }} -- -vv tests/
- name: Upload Salt Factories Code Coverage
if: always()
shell: bash
env:
REPORT_FLAGS: ${{ steps.codecov.outputs.flags }},src
REPORT_NAME: ${{ steps.codecov.outputs.report-name }}-src
REPORT_PATH: artifacts/coverage-saltfactories.xml
run: |
if [ ! -f codecov-uploader ]; then
n=0
until [ "$n" -ge 5 ]
do
if curl --max-time 30 -L ${{ steps.codecov-info.outputs.uploader-url }} --output codecov-uploader; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to download uploader"
exit 1
fi
if [ -f codecov-uploader ]; then
chmod +x codecov-uploader
n=0
until [ "$n" -ge 5 ]
do
if ./codecov-uploader -R $(pwd) -n "${REPORT_NAME}" -f "${REPORT_PATH}" -F "${REPORT_FLAGS}"; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to upload codecov stats"
exit 1
fi
- name: Upload Salt Factories Tests Code Coverage
if: always()
shell: bash
env:
REPORT_FLAGS: ${{ steps.codecov.outputs.flags }},tests
REPORT_NAME: ${{ steps.codecov.outputs.report-name }}-tests
REPORT_PATH: artifacts/coverage-tests.xml
run: |
if [ ! -f codecov-uploader ]; then
n=0
until [ "$n" -ge 5 ]
do
if curl --max-time 30 -L ${{ steps.codecov-info.outputs.uploader-url }} --output codecov-uploader; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to download uploader"
exit 1
fi
if [ -f codecov-uploader ]; then
chmod +x codecov-uploader
n=0
until [ "$n" -ge 5 ]
do
if ./codecov-uploader -R $(pwd) -n "${REPORT_NAME}" -f "${REPORT_PATH}" -F "${REPORT_FLAGS}"; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to upload codecov stats"
exit 1
fi
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v3
with:
name: runtests-${{ steps.codecov.outputs.report-name }}.log
path: artifacts/runtests-*.log
macOS:
runs-on: macOS-latest
needs: Pre-Commit
timeout-minutes: 60
strategy:
fail-fast: false
max-parallel: 9
matrix:
python-version:
- "3.7"
- "3.9"
salt-version:
- salt~=3005.0
pytest-version:
- "~=7.0.0"
- "~=7.1.0"
exclude:
- {"python-version": "3.7", "pytest-version": "~=7.0.0", "salt-version": "salt~=3005.0"}
- {"python-version": "3.7", "pytest-version": "~=7.1.0", "salt-version": "salt~=3005.0"}
- {"python-version": "3.9", "pytest-version": "~=7.0.0", "salt-version": "salt~=3005.0"}
- {"python-version": "3.9", "pytest-version": "~=7.1.0", "salt-version": "salt~=3005.0"}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install Nox
run: |
python -m pip install --upgrade pip
pip install nox 'pytest${{ matrix.pytest-version }}'
- name: Gather CodeCov Info
if: always()
id: codecov-info
run: |
echo ::set-output name=flag-python-version::$(python -c "import sys; print('Py{}{}'.format(*sys.version_info))")
echo ::set-output name=flag-pytest-version::$(python -c "import pytest; print('PyTest{}{}'.format(*pytest.__version__.split('.')))")
echo ::set-output name=flag-salt-version::$(python -c "print('Salt{}'.format('_'.join(str(v) for v in '${{ matrix.salt-version }}'.split('==')[-1].split('.'))))")
echo ::set-output name=flag-runner-os::$(python -c "print('${{ runner.os }}'.replace('-latest', ''))")
echo ::set-output name=uploader-url::$(python -c "print('https://uploader.codecov.io/latest/codecov-macos')")
- name: Create CodeCov Flags
if: always()
id: codecov
run: |
echo ::set-output name=flags::$(python -c "print(','.join(['${{ steps.codecov-info.outputs.flag-runner-os }}', '${{ steps.codecov-info.outputs.flag-python-version }}', '${{ steps.codecov-info.outputs.flag-salt-version }}', '${{ steps.codecov-info.outputs.flag-pytest-version }}']))")
echo ::set-output name=report-name::$(python -c "print('-'.join(['${{ steps.codecov-info.outputs.flag-runner-os }}', '${{ steps.codecov-info.outputs.flag-python-version }}', '${{ steps.codecov-info.outputs.flag-salt-version }}', '${{ steps.codecov-info.outputs.flag-pytest-version }}']))")
- name: Install Test Requirements
env:
SALT_REQUIREMENT: ${{ matrix.salt-version }}
run: |
nox --force-color -e tests-${{ matrix.python-version }} --install-only
- name: Test
id: run-tests
env:
SALT_REQUIREMENT: ${{ matrix.salt-version }}
SKIP_REQUIREMENTS_INSTALL: YES
run: |
nox --force-color -e tests-${{ matrix.python-version }} -- -vv tests/
- name: Upload Salt Factories Code Coverage
if: always()
shell: bash
env:
REPORT_FLAGS: ${{ steps.codecov.outputs.flags }},src
REPORT_NAME: ${{ steps.codecov.outputs.report-name }}-src
REPORT_PATH: artifacts/coverage-saltfactories.xml
run: |
if [ ! -f codecov-uploader ]; then
n=0
until [ "$n" -ge 5 ]
do
if curl --max-time 30 -L ${{ steps.codecov-info.outputs.uploader-url }} --output codecov-uploader; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to download uploader"
exit 1
fi
if [ -f codecov-uploader ]; then
chmod +x codecov-uploader
n=0
until [ "$n" -ge 5 ]
do
if ./codecov-uploader -R $(pwd) -n "${REPORT_NAME}" -f "${REPORT_PATH}" -F "${REPORT_FLAGS}"; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to upload codecov stats"
exit 1
fi
- name: Upload Salt Factories Tests Code Coverage
if: always()
shell: bash
env:
REPORT_FLAGS: ${{ steps.codecov.outputs.flags }},tests
REPORT_NAME: ${{ steps.codecov.outputs.report-name }}-tests
REPORT_PATH: artifacts/coverage-tests.xml
run: |
if [ ! -f codecov-uploader ]; then
n=0
until [ "$n" -ge 5 ]
do
if curl --max-time 30 -L ${{ steps.codecov-info.outputs.uploader-url }} --output codecov-uploader; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to download uploader"
exit 1
fi
if [ -f codecov-uploader ]; then
chmod +x codecov-uploader
n=0
until [ "$n" -ge 5 ]
do
if ./codecov-uploader -R $(pwd) -n "${REPORT_NAME}" -f "${REPORT_PATH}" -F "${REPORT_FLAGS}"; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to upload codecov stats"
exit 1
fi
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v3
with:
name: runtests-${{ steps.codecov.outputs.report-name }}.log
path: artifacts/runtests-*.log
Linux:
runs-on: ubuntu-20.04
needs: Pre-Commit
timeout-minutes: 25
strategy:
fail-fast: false
max-parallel: 16
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
salt-version:
- salt~=3005.0
pytest-version:
- "~=7.0.0"
- "~=7.1.0"
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install Nox
run: |
python -m pip install --upgrade pip
pip install nox 'pytest${{ matrix.pytest-version }}'
- name: Gather CodeCov Info
if: always()
id: codecov-info
run: |
echo ::set-output name=flag-python-version::$(python -c "import sys; print('Py{}{}'.format(*sys.version_info))")
echo ::set-output name=flag-pytest-version::$(python -c "import pytest; print('PyTest{}{}'.format(*pytest.__version__.split('.')))")
echo ::set-output name=flag-salt-version::$(python -c "print('Salt{}'.format('_'.join(str(v) for v in '${{ matrix.salt-version }}'.split('==')[-1].split('.'))))")
echo ::set-output name=flag-runner-os::$(python -c "print('${{ runner.os }}'.replace('-latest', ''))")
echo ::set-output name=uploader-url::$(python -c "print('https://uploader.codecov.io/latest/codecov-linux')")
- name: Create CodeCov Flags
if: always()
id: codecov
run: |
echo ::set-output name=flags::$(python -c "print(','.join(['${{ steps.codecov-info.outputs.flag-runner-os }}', '${{ steps.codecov-info.outputs.flag-python-version }}', '${{ steps.codecov-info.outputs.flag-salt-version }}', '${{ steps.codecov-info.outputs.flag-pytest-version }}']))")
echo ::set-output name=report-name::$(python -c "print('-'.join(['${{ steps.codecov-info.outputs.flag-runner-os }}', '${{ steps.codecov-info.outputs.flag-python-version }}', '${{ steps.codecov-info.outputs.flag-salt-version }}', '${{ steps.codecov-info.outputs.flag-pytest-version }}']))")
- name: Install Test Requirements
env:
SALT_REQUIREMENT: ${{ matrix.salt-version }}
PYTEST_VERSION_REQUIREMENT: pytest${{ matrix.pytest-version }}
run: |
nox --force-color -e tests-${{ matrix.python-version }} --install-only
- name: Test
id: run-tests
env:
SALT_REQUIREMENT: ${{ matrix.salt-version }}
SKIP_REQUIREMENTS_INSTALL: YES
run: |
nox --force-color -e tests-${{ matrix.python-version }} -- -vv --sys-stats tests/
- name: Upload Salt Factories Code Coverage
if: always()
shell: bash
env:
REPORT_FLAGS: ${{ steps.codecov.outputs.flags }},src
REPORT_NAME: ${{ steps.codecov.outputs.report-name }}-src
REPORT_PATH: artifacts/coverage-saltfactories.xml
run: |
if [ ! -f codecov-uploader ]; then
n=0
until [ "$n" -ge 5 ]
do
if curl --max-time 30 -L ${{ steps.codecov-info.outputs.uploader-url }} --output codecov-uploader; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to download uploader"
exit 1
fi
if [ -f codecov-uploader ]; then
chmod +x codecov-uploader
n=0
until [ "$n" -ge 5 ]
do
if ./codecov-uploader -R $(pwd) -n "${REPORT_NAME}" -f "${REPORT_PATH}" -F "${REPORT_FLAGS}"; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to upload codecov stats"
exit 1
fi
- name: Upload Salt Factories Tests Code Coverage
if: always()
shell: bash
env:
REPORT_FLAGS: ${{ steps.codecov.outputs.flags }},tests
REPORT_NAME: ${{ steps.codecov.outputs.report-name }}-tests
REPORT_PATH: artifacts/coverage-tests.xml
run: |
if [ ! -f codecov-uploader ]; then
n=0
until [ "$n" -ge 5 ]
do
if curl --max-time 30 -L ${{ steps.codecov-info.outputs.uploader-url }} --output codecov-uploader; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to download uploader"
exit 1
fi
if [ -f codecov-uploader ]; then
chmod +x codecov-uploader
n=0
until [ "$n" -ge 5 ]
do
if ./codecov-uploader -R $(pwd) -n "${REPORT_NAME}" -f "${REPORT_PATH}" -F "${REPORT_FLAGS}"; then
rc=$?
break
fi
rc=$?
n=$((n+1))
sleep 15
done
fi
if [ $rc -ne 0 ]; then
echo "Failed to upload codecov stats"
exit 1
fi
- name: Upload Logs
if: always()
uses: actions/upload-artifact@v3
with:
name: runtests-${{ steps.codecov.outputs.report-name }}.log
path: artifacts/runtests-*.log
Build:
runs-on: ubuntu-latest
needs:
- Docs
- PyLint
- Linux
- Windows
- macOS
- Linux-System-Service
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install Nox
run: |
python -m pip install nox
- name: Build a binary wheel and a source tarball
run: |
nox -e build
- name: Publish distribution 📦 to Test PyPI
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.TEST_PYPI_TOKEN }}
repository_url: https://test.pypi.org/legacy/
print_hash: true