Bump cargo deps and drop Python 3.9 from CI #46
This file contains hidden or 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: Windows arm64 tests | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| jobs: | |
| windows: | |
| name: Windows Py${{ matrix.PYTHON_VERSION }} arm64 | |
| runs-on: windows-11-arm | |
| timeout-minutes: 10 | |
| env: | |
| PYTHON_VERSION: ${{ matrix.PYTHON_VERSION }} | |
| RUNNER_OS: "windows" | |
| PYWINPTY_BLOCK: "1" | |
| CI_RUNNING: "1" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| PYTHON_VERSION: ["3.10", "3.11", "3.12", "3.13", "3.13t", "3.14", "3.14t"] | |
| steps: | |
| - name: Checkout branch | |
| uses: actions/checkout@v6 | |
| - uses: nuget/setup-nuget@v2 | |
| with: | |
| nuget-version: '5.x' | |
| - name: Remove free-threaded suffix from version | |
| env: | |
| PYTHON_VERSION: ${{ matrix.PYTHON_VERSION }} | |
| shell: bash -l {0} | |
| run: | | |
| PYTHON_VERSION_NONSUFFIX=$PYTHON_VERSION | |
| PYTHON_PKG="pythonarm64" | |
| if [[ $PYTHON_VERSION = *t ]]; then | |
| PYTHON_VERSION_NONSUFFIX=${PYTHON_VERSION//t} | |
| echo "PYTHON_VERSION_NONSUFFIX=$PYTHON_VERSION_NONSUFFIX" >> $GITHUB_ENV | |
| PYTHON_PKG="pythonarm64-freethreaded" | |
| echo "PYTHON_PKG=$PYTHON_PKG" >> $GITHUB_ENV | |
| fi | |
| echo "PYTHON_PKG=$PYTHON_PKG" >> $GITHUB_ENV | |
| echo "PYTHON_VERSION_NONSUFFIX=$PYTHON_VERSION_NONSUFFIX" >> $GITHUB_ENV | |
| - name: Install Python via NuGet | |
| shell: bash -l {0} | |
| run: | | |
| nuget install $PYTHON_PKG -Version $PYTHON_VERSION_NONSUFFIX -Source https://api.nuget.org/v3/index.json -ExcludeVersion | |
| ls $PWD/$PYTHON_PKG/tools/ | |
| NUGET_PYTHON=$PWD/$PYTHON_PKG/tools/python.exe | |
| WIN_NUGET_PYTHON=$(cygpath -w $NUGET_PYTHON) | |
| echo "NUGET_PYTHON=$NUGET_PYTHON" >> $GITHUB_ENV | |
| echo "WIN_NUGET_PYTHON=$WIN_NUGET_PYTHON" >> $GITHUB_ENV | |
| - name: Install build/test dependencies | |
| shell: bash -l {0} | |
| run: $NUGET_PYTHON -m pip install maturin toml pytest flaky virtualenv | |
| - name: Create virtualenv | |
| shell: bash -l {0} | |
| run: $NUGET_PYTHON -m virtualenv .venv | |
| - name: Build pywinpty | |
| shell: bash -l {0} | |
| run: $NUGET_PYTHON -m maturin develop | |
| - name: Run tests | |
| shell: pwsh | |
| run: | | |
| &"$env:WIN_NUGET_PYTHON" "runtests.py" "winpty" | |
| # Enable this to get RDP access to the worker. | |
| # - name: Download | |
| # # if: ${{ failure() }} | |
| # run: Invoke-WebRequest https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-stable-windows-amd64.zip -OutFile ngrok.zip | |
| # - name: Extract | |
| # # if: ${{ failure() }} | |
| # run: Expand-Archive ngrok.zip | |
| # - name: Auth | |
| # # if: ${{ failure() }} | |
| # run: .\ngrok\ngrok.exe config add-authtoken 1raaG4z7gsaCRlLw8cRkUWW6ItF_2LWTUFxXwd6UeeJNAAAci | |
| # - name: Enable TS | |
| # # if: ${{ failure() }} | |
| # run: Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server'-name "fDenyTSConnections" -Value 0 | |
| # - run: Enable-NetFirewallRule -DisplayGroup "Remote Desktop" | |
| # # if: ${{ failure() }} | |
| # - run: Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "UserAuthentication" -Value 1 | |
| # # if: ${{ failure() }} | |
| # - run: Set-LocalUser -Name "runneradmin" -Password (ConvertTo-SecureString -AsPlainText "P@ssw0rd!" -Force) | |
| # # if: ${{ failure() }} | |
| # - name: Create Tunnel | |
| # # if: ${{ failure() }} | |
| # run: .\ngrok\ngrok.exe tcp 3389 |