From c73fdb362305d3fdb610c2c0fa2296eef67e346f Mon Sep 17 00:00:00 2001 From: Bernd Verst Date: Fri, 5 Dec 2025 11:20:33 -0800 Subject: [PATCH 1/2] Add new dev build workflows --- .../durabletask-azuremanaged-dev.yml | 52 +++++++++++++++++++ .../durabletask-azuremanaged-experimental.yml | 50 ++++++++++++++++++ .github/workflows/durabletask-dev.yml | 49 +++++++++++++++++ .github/workflows/durabletask-experiment.yml | 47 +++++++++++++++++ .github/workflows/durabletask.yml | 6 +-- 5 files changed, 201 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/durabletask-azuremanaged-dev.yml create mode 100644 .github/workflows/durabletask-azuremanaged-experimental.yml create mode 100644 .github/workflows/durabletask-dev.yml create mode 100644 .github/workflows/durabletask-experiment.yml diff --git a/.github/workflows/durabletask-azuremanaged-dev.yml b/.github/workflows/durabletask-azuremanaged-dev.yml new file mode 100644 index 0000000..0ba1ece --- /dev/null +++ b/.github/workflows/durabletask-azuremanaged-dev.yml @@ -0,0 +1,52 @@ +name: Durable Task Scheduler SDK (durabletask-azuremanaged) Dev Release + +on: + workflow_run: + workflows: ["Durable Task Scheduler SDK (durabletask-azuremanaged)"] + types: + - completed + branches: + - main + +jobs: + publish-dev: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Extract version from tag + run: echo "VERSION=${GITHUB_REF#refs/tags/azuremanaged-v}" >> $GITHUB_ENV # Extract version from the tag + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.14" # Adjust Python version as needed + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install build twine + + - name: Append dev to version in pyproject.toml + working-directory: durabletask-azuremanaged + run: | + sed -i 's/^version = "\(.*\)"/version = "\1.dev${{ github.run_number }}"/' pyproject.toml + + - name: Build package from directory durabletask-azuremanaged + working-directory: durabletask-azuremanaged + run: | + python -m build + + - name: Check package + working-directory: durabletask-azuremanaged + run: | + twine check dist/* + + - name: Publish package to PyPI + env: + TWINE_USERNAME: __token__ + TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN_AZUREMANAGED }} # Store your PyPI API token in GitHub Secrets + working-directory: durabletask-azuremanaged + run: | + twine upload dist/* \ No newline at end of file diff --git a/.github/workflows/durabletask-azuremanaged-experimental.yml b/.github/workflows/durabletask-azuremanaged-experimental.yml new file mode 100644 index 0000000..8215b32 --- /dev/null +++ b/.github/workflows/durabletask-azuremanaged-experimental.yml @@ -0,0 +1,50 @@ +name: Durable Task Scheduler SDK (durabletask-azuremanaged) Experimental Release + +on: + push: + branches-ignore: + - main + - release/* + +jobs: + publish-dev: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Extract version from tag + run: echo "VERSION=${GITHUB_REF#refs/tags/azuremanaged-v}" >> $GITHUB_ENV # Extract version from the tag + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.14" # Adjust Python version as needed + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install build twine + + - name: Change the version in pyproject.toml to 0.0.0dev{github.run_number} + working-directory: durabletask-azuremanaged + run: | + sed -i 's/^version = ".*"/version = "0.0.0.dev${{ github.run_number }}"/' pyproject.toml + + - name: Build package from directory durabletask-azuremanaged + working-directory: durabletask-azuremanaged + run: | + python -m build + + - name: Check package + working-directory: durabletask-azuremanaged + run: | + twine check dist/* + + - name: Publish package to PyPI + env: + TWINE_USERNAME: __token__ + TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN_AZUREMANAGED }} # Store your PyPI API token in GitHub Secrets + working-directory: durabletask-azuremanaged + run: | + twine upload dist/* \ No newline at end of file diff --git a/.github/workflows/durabletask-dev.yml b/.github/workflows/durabletask-dev.yml new file mode 100644 index 0000000..09ee4be --- /dev/null +++ b/.github/workflows/durabletask-dev.yml @@ -0,0 +1,49 @@ +name: Durable Task SDK (durabletask) Dev Release + +on: + workflow_run: + workflows: ["Durable Task SDK (durabletask)"] + types: + - completed + branches: + - main + +jobs: + publish-dev: + # needs: run-tests + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Extract version from tag + run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV # Extract version from the tag + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.14" # Adjust Python version as needed + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install build twine + + - name: Append dev to version in pyproject.toml + run: | + sed -i 's/^version = "\(.*\)"/version = "\1.dev${{ github.run_number }}"/' pyproject.toml + + - name: Build package from root directory + run: | + python -m build + + - name: Check package + run: | + twine check dist/* + + - name: Publish package to PyPI + env: + TWINE_USERNAME: __token__ + TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} # Store your PyPI API token in GitHub Secrets + run: | + twine upload dist/* \ No newline at end of file diff --git a/.github/workflows/durabletask-experiment.yml b/.github/workflows/durabletask-experiment.yml new file mode 100644 index 0000000..a9d440a --- /dev/null +++ b/.github/workflows/durabletask-experiment.yml @@ -0,0 +1,47 @@ +name: Durable Task SDK (durabletask) Experimental Release + +on: + push: + branches-ignore: + - main + - release/* + +jobs: + publish-experimental: + # needs: run-tests + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Extract version from tag + run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV # Extract version from the tag + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.14" # Adjust Python version as needed + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install build twine + + - name: Change the version in pyproject.toml to 0.0.0dev{github.run_number} + run: | + sed -i 's/^version = ".*"/version = "0.0.0.dev${{ github.run_number }}"/' pyproject.toml + + - name: Build package from root directory + run: | + python -m build + + - name: Check package + run: | + twine check dist/* + + - name: Publish package to PyPI + env: + TWINE_USERNAME: __token__ + TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} # Store your PyPI API token in GitHub Secrets + run: | + twine upload dist/* \ No newline at end of file diff --git a/.github/workflows/durabletask.yml b/.github/workflows/durabletask.yml index 2f417d9..e7465ef 100644 --- a/.github/workflows/durabletask.yml +++ b/.github/workflows/durabletask.yml @@ -2,7 +2,7 @@ name: Durable Task SDK (durabletask) on: push: - branches: + branches: - "main" tags: - "v*" # Only run for tags starting with "v" @@ -71,7 +71,7 @@ jobs: durabletask-go --port 4001 & pytest -m "e2e and not dts" --verbose - publish: + publish-release: if: startsWith(github.ref, 'refs/tags/v') # Only run if a matching tag is pushed needs: run-tests runs-on: ubuntu-latest @@ -105,4 +105,4 @@ jobs: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} # Store your PyPI API token in GitHub Secrets run: | - twine upload dist/* \ No newline at end of file + twine upload dist/* \ No newline at end of file From df9e4cbf3c340015f69f0357867c4595562775e9 Mon Sep 17 00:00:00 2001 From: Bernd Verst Date: Fri, 5 Dec 2025 11:24:28 -0800 Subject: [PATCH 2/2] rename build steps --- .github/workflows/durabletask-azuremanaged-experimental.yml | 2 +- .github/workflows/durabletask-azuremanaged.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/durabletask-azuremanaged-experimental.yml b/.github/workflows/durabletask-azuremanaged-experimental.yml index 8215b32..d391db1 100644 --- a/.github/workflows/durabletask-azuremanaged-experimental.yml +++ b/.github/workflows/durabletask-azuremanaged-experimental.yml @@ -7,7 +7,7 @@ on: - release/* jobs: - publish-dev: + publish-experimental: runs-on: ubuntu-latest steps: - name: Checkout code diff --git a/.github/workflows/durabletask-azuremanaged.yml b/.github/workflows/durabletask-azuremanaged.yml index c2c40ae..852b06d 100644 --- a/.github/workflows/durabletask-azuremanaged.yml +++ b/.github/workflows/durabletask-azuremanaged.yml @@ -86,7 +86,7 @@ jobs: run: | pytest -m "dts" --verbose - publish: + publish-release: if: startsWith(github.ref, 'refs/tags/azuremanaged-v') # Only run if a matching tag is pushed needs: run-docker-tests runs-on: ubuntu-latest