mirror of
https://github.com/clearlinux/rkt.git
synced 2026-08-19 13:36:39 +00:00
5774390b2d
This refactor will make it easier to integrate lkvm support, and also brings other benefits. Specifically, with this refactor almost all functionality of stage1 init is flavor independent and can be fully controlled via a manifest and uses as little hard coded paths as possible. Thus, e.g. distribution packagers, can create package which will only have rkt/stage1 provided binaries (gc, waiter, init, etc.) and specify the rest of things in the manifest (path to nspawn, ld.so, LD LIBRARY PATH, libfakesdbooted.so, etc). And create fully free-standing stage1.aci by simply creating basic distribution chroot with distro-native tools and supplying a matching/correct aci-manifest. By fully free-standing, I mean similar to current coreos flavor, which is completely independent of the host OS binaries & load paths and is truly run everywhere. Many of these refactors will be useful for future lkvm integration, e.g. reusing ld.so load paths and similar.
rkt functional tests
This directory contains a set of functional tests for rkt.
The tests use gexpect to spawn various rkt run commands and look for expected output.
Semaphore
The tests run on the Semaphore CI system through the rktbot user, which is part of the coreos org on Semaphore.
This user is authorized against the corresponding rktbot GitHub account.
The credentials for rktbot are currently managed by CoreOS.
Build settings
Use the following build commands:
./tests/install-deps.sh # Setup
./tests/run-build.sh none # Thread 1
./tests/run-build.sh src v220 # Thread 1
./tests/run-build.sh usr-from-host # Thread 1
./tests/run-build.sh coreos # Thread 2
./tests/run-build.sh src master # Thread 2
git clean -ffdx # Post Thread
Platform
Select Ubuntu 14.04 LTS v1503 (beta with Docker support).
Environment variables
RKT_STAGE1_USR_FROM=src
CircleCI
Ideally the tests will also run on CircleCI, but there is currently a known issue because access to the cgroup filesystems is restricted - more info here
Assuming this can be resolved, the following configuration can be used:
test:
override:
- ./tests/install-deps.sh
- RKT_STAGE1_USR_FROM=src ./build
- ./test