Skip to content

Test/release against Python 3.12 (#339) #500

Test/release against Python 3.12 (#339)

Test/release against Python 3.12 (#339) #500

Workflow file for this run

name: build
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
test:
name: UTs ${{ matrix.os }} ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: [3.8, 3.12]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: '${{ matrix.python-version }}'
cache: 'pip' # caching pip dependencies
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Test
run: |
python build.py --test
functional-tests:
needs: test
name: FTs ${{ matrix.os }} ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
python-version: [3.8, 3.12]
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '${{ matrix.python-version }}'
cache: 'pip' # caching pip dependencies
- name: Set up Go
uses: actions/setup-go@v5
with:
check-latest: true
go-version: '1.22'
- name: Setup java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '11'
- uses: getgauge/setup-gauge@master
with:
gauge-version: master
- name: Install Python
run: |
pip install -r requirements.txt
python build.py --install
- name: Prep FTs
run: |
git clone https://github.com/getgauge/gauge-tests
cd gauge-tests
gauge install
- name: Install Python and Run FTs (linux)
if: matrix.os != 'windows-latest'
run: |
cd gauge-tests
./gradlew clean pythonFT
- name: Install Python and Run FTs (windows)
if: matrix.os == 'windows-latest'
run: |
cd gauge-tests
.\gradlew.bat clean pythonFT -PinParallel=false
lsp-tests:
needs: test
name: LSP Tests ${{ matrix.os }} ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
python-version: [3.8, 3.12]
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '${{ matrix.python-version }}'
cache: 'pip' # caching pip dependencies
- name: Set up Nodejs
uses: actions/setup-node@v4
with:
node-version: 20
- name: Set up Go
uses: actions/setup-go@v5
with:
check-latest: true
go-version: '1.22'
- uses: getgauge/setup-gauge@master
with:
gauge-version: master
- name: Install Python
run: |
pip install -r requirements.txt
python build.py --install
- name: Prep LSP tests
run: |
git clone https://github.com/getgauge/gauge-lsp-tests
cd gauge-lsp-tests
npm install
gauge install
- name: Run LSP tests
run: |
cd gauge-lsp-tests
gauge run --tags='!knownIssue & (actions_on_project_load | actions_on_file_edit)' --env=python-wd