Skip to content

Add some VFS helpers #370

Add some VFS helpers

Add some VFS helpers #370

Workflow file for this run

name: litevm test
on:
push:
branches:
- main
pull_request:
jobs:
commit-hooks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
name: Set up Python
with:
python-version: '3.x'
- name: Install pre-commit
run: pip install pre-commit
- name: Run pre-commit hooks
run: pre-commit run --all-files --show-diff-on-failure
test:
runs-on: ubuntu-20.04
strategy:
matrix:
# OL7 and OL8 use 3.6. OL9 uses 3.9. Also test on the latest.
python-minor: ["6", "9", "12"]
fail-fast: false
env:
# Manually set the tox environment list to the Python version.
# As a result, we should set "skip missing interpreters" to false,
# so that we fail if the test doesn't run.
TOX_OVERRIDE: "tox.envlist=py3${{ matrix.python-minor }}"
TOX_SKIP_MISSING_INTERPRETERS: "false"
steps:
- uses: actions/checkout@v4
# If we rely on using the same Python version for tox as we do for the
# testing version of Python, we end up getting different versions of tox
# with different behavior. Let's setup a well-defined python version for
# tox and use that. We need to place this one before the regular python
# setup so that the regular python takes precedence.
- name: Set up Python for Tox
uses: actions/setup-python@v4
with:
python-version: 3.12
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.${{ matrix.python-minor }}
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install qemu-kvm zstd gzip bzip2 cpio busybox-static fio
sudo wget -O /usr/bin/rpm2cpio https://github.com/rpm-software-management/rpm/raw/rpm-4.19.0-release/scripts/rpm2cpio.sh
echo '0403da24a797ccfa0cfd37bd4a6d6049370b9773e558da6173ae6ad25f97a428 /usr/bin/rpm2cpio' | sha256sum -c -
sudo chmod 755 /usr/bin/rpm2cpio
- name: Setup test environment
# Pinned virtualenv and tox are for the last versions which support
# detecting Python 3.6 and running tests on it.
run: |
python3.12 -m pip install --user --break-system-packages 'virtualenv<20.22.0' 'tox<4.5.0'
sed -i 's/sitepackages = true/sitepackages = false/' tox.ini
tox list
tox --notest
tox -e runner --notest
- name: Fetch RPMs
run: |
tox -e runner -- python -m testing.litevm.rpm
- name: Run tests
run: |
tox -e runner -- python -m testing.litevm.vm --python-version 3${{ matrix.python-minor }}