From 7fe3e844d226193df71b33d19a801075a9a62804 Mon Sep 17 00:00:00 2001 From: Debanjum Singh Solanky Date: Fri, 19 Aug 2022 21:00:12 +0300 Subject: [PATCH] Fix setup of Reproducible Build environment in publish workflow - Note: Reproducible builds have not been validated. This is just preliminary work to get there. Further testing and fixes maybe required --- .github/workflows/publish.yml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 176e03e2..a371a92c 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -47,8 +47,9 @@ jobs: run: | # Setup Environment for Reproducible Builds export PYTHONHASHSEED=42 - export SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct + export SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct) + # Build and Upload PyPi Package rm -rf dist python -m build twine check dist/* @@ -60,7 +61,14 @@ jobs: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.PYPI_API_KEY }} run: | + # Set Pre-Release Version sed -E -i "s/version=(.*)',/version=\1a$(date +%s)',/g" setup.py + + # Setup Environment for Reproducible Builds + export PYTHONHASHSEED=42 + export SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct) + + # Build and Upload PyPi Package rm -rf dist python -m build twine check dist/* @@ -73,7 +81,14 @@ jobs: TWINE_PASSWORD: ${{ secrets.TEST_PYPI_API_KEY }} PULL_REQUEST_NUMBER: ${{ github.event.number }} run: | + # Set Development Release Version sed -E -i "s/version=(.*)',/version=\1.dev$PULL_REQUEST_NUMBER$(date +%s)',/g" setup.py + + # Setup Environment for Reproducible Builds + export PYTHONHASHSEED=42 + export SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct) + + # Build and Upload PyPi Package rm -rf dist python -m build twine check dist/*