Skip to content

Commit

Permalink
Merge pull request #4538 from mwichmann/pins
Browse files Browse the repository at this point in the history
Change CI provisioning
  • Loading branch information
bdbaddog authored May 25, 2024
2 parents 6edc6fc + 7b5748b commit 13b75d0
Show file tree
Hide file tree
Showing 8 changed files with 111 additions and 26 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/experimental_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ on:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
experimental:

strategy:
fail-fast: false
Expand All @@ -32,7 +32,7 @@ jobs:
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v4.1.6

# experiment: maybe don't need this?
# update: looks like we do: with this commented out, the build hung
Expand All @@ -44,7 +44,7 @@ jobs:
static: 0

- name: Set up Python 3.11 ${{ matrix.os }}
uses: actions/setup-python@v5.0.0
uses: actions/setup-python@v5.1.0
with:
python-version: '3.11'

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/framework_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,10 @@ jobs:

steps:
# Checkouut repository under $GITHUB_WORKSPACE
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v4.1.6

- name: Set up Python 3.11 ${{ matrix.os }}
uses: actions/setup-python@v5.0.0
uses: actions/setup-python@v5.1.0
with:
python-version: '3.11'

Expand Down
41 changes: 41 additions & 0 deletions .github/workflows/runtest-win.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# This is a basic workflow to help you get started with Actions

name: Full Test Suite on Windows

# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [ master ]
pull_request:
branches: [ master ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

jobs:
runtest-win32:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4.1.6

- name: Set up Python 3.12
uses: actions/setup-python@v5.1.0
with:
python-version: '3.12'

- name: Install dependencies including ninja
run: |
python -m pip install --upgrade pip
python -m pip install -r requirements-dev.txt
- name: runtest
run: |
python runtest.py --all --exclude-list=windows_ci_skip.txt --time --jobs=4
- name: Archive Failed tests
uses: actions/upload-artifact@v4.3.3
with:
name: windows-failed-tests
path: |
failed_tests.log
29 changes: 16 additions & 13 deletions .github/workflows/runtest.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This is a basic workflow to help you get started with Actions

name: Linux Testing
name: Full Test Suite on Linux

# Controls when the workflow will run
on:
Expand All @@ -15,25 +15,28 @@ on:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:

# This workflow contains a single job called "runtest"
runtest:
strategy:
fail-fast: false
matrix:
os: ['ubuntu-22.04']
os: ['ubuntu-22.04', 'ubuntu-24.04']

# The type of runner that the job will run on
runs-on: ${{ matrix.os }}

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v4.1.6

- name: Install Ubuntu packages $${matrix.os}}
run: |
sudo apt-get update
sudo apt-get install libtirpc-dev
- name: Set up Python 3.10 ${{ matrix.os }}
uses: actions/setup-python@v5.0.0
- name: Set up Python 3.12 ${{ matrix.os }}
uses: actions/setup-python@v5.1.0
with:
python-version: '3.10'
python-version: '3.12'

- name: Install dependencies including ninja ${{ matrix.os }}
run: |
Expand All @@ -43,10 +46,10 @@ jobs:
- name: runtest ${{ matrix.os }}
run: |
python runtest.py --all --time --jobs=2
python runtest.py --all --time --jobs=4
- name: Archive Failed tests ${{ matrix.os }}
uses: actions/upload-artifact@v3.1.3
uses: actions/upload-artifact@v4.3.3
with:
name: ${{ matrix.os }}-failed-tests
path: |
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/scons-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,17 @@ on:
branches: [ master ]

jobs:
build:
package:

runs-on: ubuntu-20.04
runs-on: ubuntu-24.04

steps:
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v4.1.6

- name: Set up Python 3.10
uses: actions/setup-python@v5.0.0
- name: Set up Python 3.12
uses: actions/setup-python@v5.1.0
with:
python-version: '3.10'
python-version: '3.12'

- name: Install dependencies
run: |
Expand Down
2 changes: 1 addition & 1 deletion requirements-dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# for now keep pinning "known working" lxml,
# it's been a troublesome component in the past.
# Skip lxml for win32 as no tests which require it currently pass on win32
lxml==4.9.3; python_version < '3.13' and sys_platform != 'win32'
lxml<5; python_version < '3.13' and sys_platform != 'win32'

ninja

Expand Down
2 changes: 1 addition & 1 deletion requirements-pkg.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
readme-renderer

# sphinx pinned because it has broken several times on new releases
sphinx < 7.0
sphinx
sphinx-book-theme
rst2pdf

Expand Down
41 changes: 41 additions & 0 deletions windows_ci_skip.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# temporarily skip this in GitHub Windows runner
test/CPPDEFINES/pkg-config.py
test/Interactive/added-include.py
test/Interactive/Alias.py
test/Interactive/basic.py
test/Interactive/cache-debug.py
test/Interactive/cache-disable.py
test/Interactive/cache-force.py
test/Interactive/cache-show.py
test/Interactive/clean.py
test/Interactive/configure.py
test/Interactive/Default-None.py
test/Interactive/Default.py
test/Interactive/exit.py
test/Interactive/failure.py
test/Interactive/help.py
test/Interactive/implicit-VariantDir.py
test/Interactive/option--Q.py
test/Interactive/option-i.py
test/Interactive/option-j.py
test/Interactive/option-k.py
test/Interactive/option-n.py
test/Interactive/option-s.py
test/Interactive/repeat-line.py
test/Interactive/shell.py
test/Interactive/tree.py
test/Interactive/unknown-command.py
test/Interactive/variant_dir.py
test/MSVC/msvc.py
test/packaging/msi/explicit-target.py
test/packaging/msi/file-placement.py
test/packaging/msi/package.py
test/packaging/tar/xz_packaging.py
test/scons-time/run/config/python.py
test/scons-time/run/option/python.py
test/scons-time/run/option/quiet.py
test/scons-time/run/option/verbose.py
test/sconsign/script/no-SConsignFile.py
test/sconsign/script/SConsignFile.py
test/sconsign/script/Signatures.py

0 comments on commit 13b75d0

Please sign in to comment.