rpm-ostree/.papr.yml
Jonathan Lebon 479406e6a5 Add support for YAML treefiles
Let's modernize and start supporting YAML treefiles. I'll dare make the
sweeping generalization that most people would prefer reading and
writing YAML over JSON.

This takes bits from coreos-assembler[1] that know how to serialize a
YAML file and spit it back out as a JSON and makes it into a shared lib
that we can link against. We could use this eventually for JSON inputs
as well to force a validation check before composing.

If we go this route, we could then turn on `--enable-rust` in FAHC for
now and drop the duplicate code in coreos-assembler.

[1] https://github.com/cgwalters/coreos-assembler

Closes: #1377
Approved by: cgwalters
2018-06-05 13:08:33 +00:00

171 lines
3.9 KiB
YAML

branches:
- master
- auto
- try
context: f28-codestyle
required: true
container:
image: registry.fedoraproject.org/fedora:28
tests:
- ci/ci-commitmessage-submodules.sh
- ci/codestyle.sh
---
context: f28-primary
inherit: true
cluster:
hosts:
- name: vmcheck1
distro: fedora/28/atomic
# XXX: use updates ref for now so that we can use GA kernel in
# test-override-kernel.sh -- remove once another f28 AH update comes out
ostree:
branch: fedora/28/x86_64/updates/atomic-host
- name: vmcheck2
distro: fedora/28/atomic
ostree:
branch: fedora/28/x86_64/updates/atomic-host
- name: vmcheck3
distro: fedora/28/atomic
ostree:
branch: fedora/28/x86_64/updates/atomic-host
container:
image: registry.fedoraproject.org/fedora:28
env:
HOSTS: vmcheck1 vmcheck2 vmcheck3
# TODO use -fsanitize=address
CFLAGS: '-fsanitize=undefined -fsanitize-undefined-trap-on-error -O2 -Wp,-D_FORTIFY_SOURCE=2'
ASAN_OPTIONS: 'detect_leaks=0' # Right now we're not fully clean, but this gets us use-after-free etc
CI_PKGS: rsync
tests:
- ci/build-check.sh
- ci/vmcheck-provision.sh
- make vmcheck
timeout: 60m
artifacts:
- test-suite.log
- config.log
- vmcheck
---
inherit: true
context: c7-primary
required: true
cluster:
hosts:
- name: vmcheck1
distro: centos/7/atomic/smoketested
# XXX: temp hack until smoketested has newer glib2
ostree:
branch: centos-atomic-host/7/x86_64/devel/continuous
- name: vmcheck2
distro: centos/7/atomic/smoketested
ostree:
branch: centos-atomic-host/7/x86_64/devel/continuous
- name: vmcheck3
distro: centos/7/atomic/smoketested
ostree:
branch: centos-atomic-host/7/x86_64/devel/continuous
container:
image: registry.centos.org/centos/centos:7
# We only want the sanitizers on Fedora
env:
HOSTS: vmcheck1 vmcheck2 vmcheck3
CFLAGS: ''
extra-repos:
- name: atomic-centos-continuous
baseurl: https://ci.centos.org/artifacts/sig-atomic/rdgo/centos-continuous/build
gpgcheck: 0
tests:
# we're still on devmapper here; we need to expand rootfs for tests
- for vm in vmcheck{1..3}; do ssh $vm lvresize -r -L +5G atomicos/root; done
- ci/vmcheck-provision.sh
- yum install -y epel-release
- ci/build-check.sh
- make vmcheck
---
branches:
- master
- auto
- try
# NB: when bumping 28 here, also bump fedora.repo, and compose script
context: f28-compose
build: false
timeout: 40m
required: true
# This test case wants an "unprivileged container with bubblewrap",
# which we don't have right now; so just provision a VM and do a
# docker --privileged run.
host:
distro: fedora/28/atomic
# Compose tests are slow and should be parallelized
specs:
cpus: 4
# Copy yum.repos.d to get any injected repos from the host, which
# will point to a closer mirror. Note we substitute $releasever
# since https://github.com/projectatomic/rpm-ostree/pull/875
tests:
- docker run --privileged --rm
-e CONFIGOPTS=--enable-rust
-e CI_PKGS=cargo
-e RPMOSTREE_COMPOSE_TEST_USE_REPOS=/etc/yum.repos.d.host
-v /etc/yum.repos.d:/etc/yum.repos.d.host:ro
-v $(pwd):/srv/code -w /srv/code
registry.fedoraproject.org/fedora:28 /bin/sh -c
"./ci/build.sh && make install && ./tests/compose"
artifacts:
- test-compose-logs
---
branches:
- master
- auto
- try
context: f28-ex-container
build: false
timeout: 30m
required: false
# See the f28-compose context for why we do things this way.
host:
distro: fedora/28/atomic
tests:
- docker run --privileged --rm
-e RPMOSTREE_COMPOSE_TEST_USE_REPOS=/etc/yum.repos.d.host
-v /etc/yum.repos.d:/etc/yum.repos.d.host:ro
-v $(pwd):/srv/code -w /srv/code
registry.fedoraproject.org/fedora:28 /bin/sh -c
"./ci/build.sh && make install && adduser unpriv && setfacl -m u:unpriv:rwX . && runuser -u unpriv ./tests/ex-container"
artifacts:
- ex-container-logs