2016-10-28 16:43:16 -04:00
branches :
- master
- auto
- try
2018-05-19 10:48:18 -04:00
context : f28-codestyle
2016-12-06 14:45:49 -05:00
required : true
2018-05-08 14:59:05 -07:00
container :
2018-05-19 10:48:18 -04:00
image : registry.fedoraproject.org/fedora:28
2018-05-08 14:59:05 -07:00
tests :
- ci/ci-commitmessage-submodules.sh
- ci/codestyle.sh
---
2018-05-19 10:48:18 -04:00
context : f28-primary
2018-05-08 14:59:05 -07:00
inherit : true
2016-12-06 14:45:49 -05:00
2017-07-17 10:40:25 -07:00
cluster :
hosts :
- name : vmcheck1
2018-05-19 10:48:18 -04:00
distro : fedora/28/atomic
2017-07-17 10:40:25 -07:00
- name : vmcheck2
2018-05-19 10:48:18 -04:00
distro : fedora/28/atomic
2017-07-17 10:40:25 -07:00
- name : vmcheck3
2018-05-19 10:48:18 -04:00
distro : fedora/28/atomic
2017-07-17 10:40:25 -07:00
container :
2018-05-19 10:48:18 -04:00
image : registry.fedoraproject.org/fedora:28
2016-11-11 16:21:39 -05:00
2017-07-17 10:40:25 -07:00
env :
HOSTS : vmcheck1 vmcheck2 vmcheck3
2017-09-19 10:40:35 -04:00
# 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
2017-09-06 13:53:46 -04:00
CI_PKGS : rsync
2017-05-12 10:18:50 -04:00
2016-10-28 16:43:16 -04:00
tests :
2017-07-05 09:02:33 -07:00
- ci/build-check.sh
2018-03-08 15:56:05 -05:00
- ci/vmcheck-provision.sh
2017-07-17 10:40:25 -07:00
- make vmcheck
2018-07-10 11:49:03 -04:00
# make sure we're aware of any tests that were skipped
- "grep -nr '^SKIP: ' vmcheck/ || :"
2017-07-05 09:02:33 -07:00
2017-07-17 10:40:25 -07:00
timeout : 60m
2017-06-08 16:17:33 -04:00
2017-07-17 10:40:25 -07:00
artifacts :
- test-suite.log
2017-09-19 10:40:35 -04:00
- config.log
2017-07-17 10:40:25 -07:00
- vmcheck
2017-06-08 16:17:33 -04:00
---
inherit : true
2017-07-17 10:40:25 -07:00
context : c7-primary
2016-11-22 09:29:29 -05:00
2016-12-07 15:14:54 -05:00
required : true
2016-12-06 14:45:49 -05:00
2016-11-22 09:29:29 -05:00
cluster :
hosts :
2017-03-10 17:56:16 -05:00
- name : vmcheck1
2017-11-09 14:24:15 -05:00
distro : centos/7/atomic/smoketested
2018-05-14 14:07:28 -04:00
# XXX: temp hack until smoketested has newer glib2
2018-07-20 13:31:56 -04:00
# XXX: and also causes layering-relabel to fail?
# https://github.com/projectatomic/rpm-ostree/pull/1406
2018-05-14 14:07:28 -04:00
ostree :
branch : centos-atomic-host/7/x86_64/devel/continuous
2017-03-10 17:56:16 -05:00
- name : vmcheck2
2017-11-09 14:24:15 -05:00
distro : centos/7/atomic/smoketested
2018-05-14 14:07:28 -04:00
ostree :
branch : centos-atomic-host/7/x86_64/devel/continuous
2017-03-10 17:56:16 -05:00
- name : vmcheck3
2017-11-09 14:24:15 -05:00
distro : centos/7/atomic/smoketested
2018-05-14 14:07:28 -04:00
ostree :
branch : centos-atomic-host/7/x86_64/devel/continuous
2017-07-05 09:02:33 -07:00
container :
2017-10-24 10:44:28 -04:00
image : registry.centos.org/centos/centos:7
2017-07-05 09:02:33 -07:00
2017-09-19 10:40:35 -04:00
# We only want the sanitizers on Fedora
env :
HOSTS : vmcheck1 vmcheck2 vmcheck3
CFLAGS : ''
2017-07-17 10:40:25 -07:00
extra-repos :
- name : atomic-centos-continuous
baseurl : https://ci.centos.org/artifacts/sig-atomic/rdgo/centos-continuous/build
gpgcheck : 0
2017-07-05 09:02:33 -07:00
tests :
2018-02-14 13:56:51 +00:00
# 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
2018-03-08 15:56:05 -05:00
- ci/vmcheck-provision.sh
2017-07-17 10:40:25 -07:00
- yum install -y epel-release
- ci/build-check.sh
2017-07-05 09:02:33 -07:00
- make vmcheck
---
2017-07-05 09:01:31 -07:00
branches :
- master
- auto
- try
2018-05-19 10:48:18 -04:00
# NB: when bumping 28 here, also bump fedora.repo, and compose script
2017-05-26 16:21:02 -04:00
2018-05-19 10:48:18 -04:00
context : f28-compose
2017-07-05 09:01:31 -07:00
2016-12-02 18:07:08 -05:00
build : false
2017-07-05 09:01:31 -07:00
2018-07-24 09:11:23 -04:00
timeout : 50m
2016-12-02 18:07:08 -05:00
2017-07-05 09:01:31 -07:00
required : true
2016-12-02 18:07:08 -05:00
# 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 :
2018-05-19 10:48:18 -04:00
distro : fedora/28/atomic
2018-01-09 10:46:23 -05:00
# Compose tests are slow and should be parallelized
specs :
cpus : 4
2016-12-02 18:07:08 -05:00
Add releasever opt, avoid opening up host's rpmdb in treecompose
Closes: https://github.com/projectatomic/rpm-ostree/issues/546
Previously, we'd open up the host's rpmdb for both `compose tree`
and `ex container`. In the first case, because we require root, we'd
succeed. For `ex container`, we'd spew an error.
Fixing this was trickier than I thought. First because there was
*also* a libdnf bug here: https://github.com/rpm-software-management/libdnf/pull/307
Second, there's a compatibility hazard here for anyone using `.repo` files that
reference `$releasever`. This actually happened to me with `ex container` as I'd
just done a `ln -s /etc/yum.repos.d/fedora.repo rpmmd.repos.d`. I fixed
that first by doing a `sed -i -e 's,$releasever,26,' rpmmd.repos.d/*.repo`.
As far as I can see today, none of Fedora Atomic or CentOS AH rely on this. But
in order to enhance compatibility, let's add a "releasever" option. This makes
it easier again to reuse stock `.repo` files if we wanted to do so.
(Also, I realized we can just use `/usr/share/empty` as *the* canonical immutable
empty directory)
Closes: #875
Approved by: jlebon
2017-07-13 12:37:41 -04:00
# 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
2016-12-02 18:07:08 -05:00
tests :
2017-05-26 16:21:02 -04:00
- docker run --privileged --rm
2018-05-31 16:31:22 -04:00
-e CONFIGOPTS=--enable-rust
-e CI_PKGS=cargo
2017-09-29 10:01:18 -04:00
-e RPMOSTREE_COMPOSE_TEST_USE_REPOS=/etc/yum.repos.d.host
2017-05-26 16:21:02 -04:00
-v /etc/yum.repos.d:/etc/yum.repos.d.host:ro
-v $(pwd):/srv/code -w /srv/code
2018-05-19 10:48:18 -04:00
registry.fedoraproject.org/fedora:28 /bin/sh -c
2017-09-29 10:01:18 -04:00
"./ci/build.sh && make install && ./tests/compose"
2016-12-08 17:31:20 -05:00
artifacts :
2018-01-08 14:54:10 -05:00
- test-compose-logs
2017-07-27 11:27:31 -07:00
---
2017-09-29 10:01:18 -04:00
branches :
- master
- auto
- try
2018-05-19 10:48:18 -04:00
context : f28-ex-container
2017-09-29 10:01:18 -04:00
build : false
timeout : 30m
required : false
2018-05-19 10:48:18 -04:00
# See the f28-compose context for why we do things this way.
2017-09-29 10:01:18 -04:00
host :
2018-05-19 10:48:18 -04:00
distro : fedora/28/atomic
2017-09-29 10:01:18 -04:00
tests :
- docker run --privileged --rm
2017-12-02 14:45:58 -05:00
-e RPMOSTREE_COMPOSE_TEST_USE_REPOS=/etc/yum.repos.d.host
-v /etc/yum.repos.d:/etc/yum.repos.d.host:ro
2017-09-29 10:01:18 -04:00
-v $(pwd):/srv/code -w /srv/code
2018-05-19 10:48:18 -04:00
registry.fedoraproject.org/fedora:28 /bin/sh -c
2017-09-29 10:01:18 -04:00
"./ci/build.sh && make install && adduser unpriv && setfacl -m u:unpriv:rwX . && runuser -u unpriv ./tests/ex-container"
artifacts :
- ex-container-logs