Move the `test_boot` test from Travis over to the Github-Actions based CI. This is the last test on Travis, and the Travis CI can now be disabled, if we so wish. This test leaves a valid `travis.yml` file around, since Travis will still be enabled on the repository. We should first disable Travis and then drop this file, if we want to get rid of it.
104 lines
2.7 KiB
YAML
104 lines
2.7 KiB
YAML
name: Runtime Tests
|
|
|
|
on: [pull_request, push]
|
|
|
|
#
|
|
# We set `PYTHONUNBUFFERED` to get more immediate and ordered output from
|
|
# python programs. This should not be necessary if all relevant output used the
|
|
# unbuffered stderr, but that is not entirely under our control.
|
|
#
|
|
env:
|
|
PYTHONUNBUFFERED: 1
|
|
|
|
jobs:
|
|
runtime_tests:
|
|
name: "Runtime Pipeline Execution Tests"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: "Clone Repository"
|
|
uses: actions/checkout@v2
|
|
- name: "Run Pipeline Tests"
|
|
uses: osbuild/containers/ghci/actions/ghci-osbuild@ghci/v1
|
|
with:
|
|
run: make test-runtime
|
|
|
|
boot_tests:
|
|
name: "Boot Tests"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: "Clone Repository"
|
|
uses: actions/checkout@v2
|
|
- name: "Run Boot Tests"
|
|
uses: osbuild/containers/ghci/actions/ghci-osbuild@ghci/v1
|
|
with:
|
|
run: python3 -m unittest -v test.test_boot
|
|
|
|
noop_pipeline_tests:
|
|
name: "Noop-Pipeline Tests"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: "Clone Repository"
|
|
uses: actions/checkout@v2
|
|
- name: "Install Dependencies"
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get -y install \
|
|
systemd-container
|
|
- name: "Set up Python"
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.7
|
|
- name: Install Python Packages
|
|
run: pip install jsonschema
|
|
- name: "Run Noop-Pipeline Tests"
|
|
run: |
|
|
for i in {0..2} ; do
|
|
sudo env "PATH=$PATH" python3 -m osbuild --libdir . samples/noop.json
|
|
done
|
|
|
|
assembler_tests:
|
|
name: "Assembler Tests"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: "Clone Repository"
|
|
uses: actions/checkout@v2
|
|
- name: "Install Dependencies"
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get -y install \
|
|
nbd-client \
|
|
qemu-utils \
|
|
rpm \
|
|
systemd-container \
|
|
tar \
|
|
yum
|
|
- name: "Set up Python"
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.7
|
|
- name: Install Python Packages
|
|
run: pip install jsonschema
|
|
- name: "Run Assembler Tests"
|
|
run: sudo env "PATH=$PATH" python3 -m unittest -v test.test_assemblers
|
|
|
|
stage_tests:
|
|
name: "Stage Tests"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: "Clone Repository"
|
|
uses: actions/checkout@v2
|
|
- name: "Install Dependencies"
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get -y install \
|
|
systemd-container \
|
|
tar \
|
|
yum
|
|
- name: "Set up Python"
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.7
|
|
- name: Install Python Packages
|
|
run: pip install jsonschema
|
|
- name: "Run Stage Tests"
|
|
run: sudo env "PATH=$PATH" python3 -m unittest -v test.test_stages
|