Skip to content

Unpin + update some GitHub actions #68

Unpin + update some GitHub actions

Unpin + update some GitHub actions #68

Workflow file for this run

---
name: "System tests"
on:
workflow_call: {}
jobs:
test_scheduler_windows:
runs-on: windows-latest
steps:
- uses: actions/checkout4
- uses: actions-rust-lang/setup-rust-toolchain1
with:
target: x86_64-pc-windows-gnu
# By default, setup-rust-toolchain sets "-D warnings". As a side effect, the settings in
# .cargo/config.toml are ignored:
# https://doc.rust-lang.org/cargo/reference/config.html#buildrustflags
# "There are four mutually exclusive sources of extra flags"
rustflags: ""
- uses: actions/setup-python5
with:
python-version: '3.12'
cache: 'pip'
- run: pip install -r tests/minimal_suite/requirements.txt
- uses: actions/download-artifact4
with:
name: rcc
path: C:\
# MSVC uses vctip.exe for telemetry. vctip.exe is started as a child of termination.exe. This
# can cause CI failures, if "vctip.exe" does not terminate before `get_children` is called.
# It is unclear why MSVC is running, despite target=x86_64-pc-windows-gnu. The following
# command is intended turn off telemetry via vctip.exe.
- shell: pwsh
run: Get-ChildItem -Filter vctip.exe -Recurse "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC" | rm
- run: cargo test --target=x86_64-pc-windows-gnu --test test_plan_run --test test_agent_plugin -- --ignored
- run: cargo run --example termination --target=x86_64-pc-windows-gnu
- run: cargo run --example termination --target=x86_64-pc-windows-gnu -- C:\windows64\rcc.exe
- run: mkdir C:\managed_robots
- run: tar --create -z --directory tests\minimal_suite\ --file C:\managed_robots\minimal_suite.tar.gz *
- run: net user "test_user" "uCjV*NRE#XH2a" /add
- run: cargo test --target=x86_64-pc-windows-gnu --test test_scheduler -- --nocapture --ignored
env:
TEST_DIR: C:\test_scheduler
RCC_BINARY_PATH: C:\windows64\rcc.exe
MANAGED_ROBOT_ARCHIVE_PATH: C:\managed_robots\minimal_suite.tar.gz
N_SECONDS_RUN_MAX: 300
TEST_USER: test_user
- uses: actions/upload-artifact@v4
if: success() || failure()
with:
name: system_test_debug_information_windows
path: C:\test_scheduler
test_scheduler_linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
target: x86_64-unknown-linux-gnu
# By default, setup-rust-toolchain sets "-D warnings". As a side effect, the settings in
# .cargo/config.toml are ignored:
# https://doc.rust-lang.org/cargo/reference/config.html#buildrustflags
# "There are four mutually exclusive sources of extra flags"
rustflags: ""
- uses: actions/setup-python@v5
with:
python-version: '3.12'
cache: 'pip'
- run: pip install -r tests/minimal_suite/requirements.txt
- uses: actions/download-artifact@v4
with:
name: rcc
path: /tmp/
# file permissions are not retained during upload:
# https://github.com/actions/upload-artifact?tab=readme-ov-file#permission-loss
- run: chmod +x /tmp/linux64/rcc
- run: cargo test --target=x86_64-unknown-linux-gnu --test test_plan_run --test test_agent_plugin -- --ignored
- run: cargo run --example termination --target=x86_64-unknown-linux-gnu
- run: cargo run --example termination --target=x86_64-unknown-linux-gnu -- /tmp/linux64/rcc
- run: mkdir /tmp/managed_robots
- run: tar --create --gzip --directory tests/minimal_suite/ --file /tmp/managed_robots/minimal_suite.tar.gz .
- run: cargo test --target=x86_64-unknown-linux-gnu --test test_scheduler -- --nocapture --ignored
env:
TEST_DIR: /tmp/test_scheduler
RCC_BINARY_PATH: /tmp/linux64/rcc
MANAGED_ROBOT_ARCHIVE_PATH: /tmp/managed_robots/minimal_suite.tar.gz
N_SECONDS_RUN_MAX: 300
- uses: actions/upload-artifact@v4
if: success() || failure()
with:
name: system_test_debug_information_linux
path: /tmp/test_scheduler