github: remove dependency of python wheel on dune #73
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Create release from tag | |
on: | |
push: | |
branch: | |
- "v25.1.0" | |
jobs: | |
build-python: | |
name: Build and upload Python artifacts | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Use python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.x" | |
- name: Install build dependencies | |
run: pip install build | |
- name: Generate python package for XenAPI | |
run: | | |
echo "export XAPI_VERSION=v25.1.0" > config.mk | |
make python | |
- name: Store python distribution artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: XenAPI | |
path: python3/examples/dist/ | |
build-sdks: | |
name: Build and upload SDK artifacts | |
uses: ./.github/workflows/generate-and-build-sdks.yml | |
with: | |
xapi_version: v25.1.0 | |
release: | |
name: "Create and package release" | |
runs-on: ubuntu-latest | |
needs: [build-python, build-sdks] | |
steps: | |
- name: Retrieve Go SDK distribution artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: SDK_Artifacts_Go | |
path: sdk_go/ | |
- name: Retrieve Python SDK distribution artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: XenAPI | |
path: dist/ | |
- name: Retrieve C SDK distribution binaries | |
uses: actions/download-artifact@v4 | |
with: | |
name: SDK_Artifacts_C | |
path: libxenserver/usr/local/ | |
- name: Retrieve Java SDK distribution artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: SDK_Artifacts_Java | |
path: dist/ | |
- name: Retrieve C# SDK distribution artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: SDK_Binaries_CSharp | |
path: dist/ | |
- name: Retrieve PowerShell 5.x SDK distribution artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: SDK_Binaries_XenServerPowerShell_NET45 | |
path: sdk_powershell_5x/ | |
- name: Retrieve PowerShell 7.x SDK distribution artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: SDK_Binaries_XenServerPowerShell_NET6 | |
path: sdk_powershell_7x/ | |
- name: Package C SDK artifacts for deployment | |
shell: bash | |
run: | | |
mkdir -p libxenserver/usr/local/lib | |
mv libxenserver/usr/local/libxenserver.* libxenserver/usr/local/lib/ | |
tar -zcvf libxenserver-prerelease.tar.gz -C ./libxenserver usr/local/lib/ usr/local/include/xen/api | |
rm -rf libxenserver/usr/local/lib/ | |
tar -zcvf libxenserver-prerelease.src.tar.gz -C ./libxenserver/usr/local . | |
- name: Zip PowerShell 5.x SDK artifacts for deployment | |
shell: bash | |
run: zip PowerShell-SDK-5.x-prerelease-unsigned.zip ./sdk_powershell_5x -r | |
- name: Zip PowerShell 7.x SDK artifacts for deployment | |
shell: bash | |
run: zip PowerShell-SDK-7.x-prerelease-unsigned.zip ./sdk_powershell_7x -r | |
- name: Zip Go SDK artifacts for deployment | |
shell: bash | |
run: zip Go-SDK-prerelease-unsigned.zip ./sdk_go -r | |
- name: Create release v25.1.0 | |
shell: bash | |
run: "true" | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
publish-pypi: | |
name: Publish Python release to PyPI | |
runs-on: ubuntu-latest | |
needs: release | |
environment: pypi | |
permissions: | |
id-token: write | |
steps: | |
- name: Retrieve python distribution artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: XenAPI | |
path: dist/ | |
- name: Publish to PyPI | |
uses: pypa/gh-action-pypi-publish@release/v1 |