You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
2.2 KiB
94 lines
2.2 KiB
name: Linux and MaxOS Install Script Testing
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- "v*-dev"
|
|
paths:
|
|
- "install.sh"
|
|
- ".github/workflows/install-script.yml"
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
- "v*-dev"
|
|
paths:
|
|
- "install.sh"
|
|
- ".github/workflows/install-script.yml"
|
|
workflow_dispatch: {}
|
|
schedule:
|
|
- cron: "0 0 * * *" # every day at 00:00 UTC
|
|
jobs:
|
|
linux-macos-build:
|
|
timeout-minutes: 20
|
|
name: Build Wheel
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- os: ubuntu-latest
|
|
arch: X64
|
|
- os: macos-latest
|
|
arch: ARM64
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
name: Checkout code
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.11"
|
|
|
|
- name: Build
|
|
run: |
|
|
make build
|
|
|
|
- name: Upload wheel as artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ${{ matrix.os }}-dist
|
|
path: dist/*.whl
|
|
|
|
linux-macos-install-test:
|
|
timeout-minutes: 20
|
|
name: Test Install
|
|
needs: linux-macos-build
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- os: ubuntu-latest
|
|
arch: X64
|
|
- os: macos-latest
|
|
arch: ARM64
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: setup-python
|
|
id: cp311
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.11"
|
|
|
|
# latest macos runner uses python3.13 which is not supported yet.
|
|
- name: set pipx default python
|
|
run: echo "PIPX_DEFAULT_PYTHON=$(which python)" >> $GITHUB_ENV
|
|
|
|
- name: Download wheel artifact
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
name: ${{ matrix.os }}-dist
|
|
path: ./dist
|
|
|
|
- name: Run install script
|
|
continue-on-error: true
|
|
run: |
|
|
export INSTALL_PACKAGE_SPEC=$(ls dist/*.whl)
|
|
cat install.sh | sh -
|
|
|
|
- name: Verify installation
|
|
run: |
|
|
gpustack version
|
|
curl --fail --retry 5 --retry-delay 2 --retry-all-errors http://127.0.0.1/readyz
|