cci: Update for buildroot changes

See latest in https://github.com/coreos/fedora-coreos-tracker/blob/master/docs/ci-and-builds.md
This commit is contained in:
Colin Walters 2021-03-26 14:12:37 +00:00
parent cb0fd2bf93
commit 6d0bb10bf0
2 changed files with 25 additions and 21 deletions

View File

@ -3,7 +3,7 @@
stage("Build") { stage("Build") {
parallel normal: { parallel normal: {
def n = 5 def n = 5
cosaPod(buildroot: true, runAsUser: 0, memory: "2Gi", cpu: "${n}") { buildPod(runAsUser:0, memory: "2Gi", cpu: "${n}") {
checkout scm checkout scm
stage("Core build") { stage("Core build") {
shwrap(""" shwrap("""
@ -21,19 +21,25 @@ parallel normal: {
make syntax-check make syntax-check
""") """)
} finally { } finally {
shwrap("cat test-suite.log || true")
archiveArtifacts allowEmptyArchive: true, artifacts: 'test-suite.log' archiveArtifacts allowEmptyArchive: true, artifacts: 'test-suite.log'
} }
} }
shwrap(""" stage("Build installed tests") {
make install DESTDIR=\$(pwd)/insttree/ shwrap("make -C tests/kolainst")
tar -c -C insttree/ -zvf insttree.tar.gz . }
""") stage("Generate artifacts") {
stash includes: 'insttree.tar.gz', name: 'build' shwrap("""
make install DESTDIR=\$(pwd)/installed/rootfs
make -C tests/kolainst install DESTDIR=\$(pwd)/installed/tests
""")
}
stash includes: "installed/", name: 'build'
} }
}, },
// A minimal build, helps test our build options // A minimal build, helps test our build options
minimal: { minimal: {
cosaPod(buildroot: true, runAsUser: 0) { buildPod(runAsUser:0) {
checkout scm checkout scm
shwrap(""" shwrap("""
git submodule update --init git submodule update --init
@ -48,7 +54,7 @@ minimal: {
} }
}, },
codestyle: { codestyle: {
cosaPod { buildPod(runAsUser:0) {
checkout scm checkout scm
shwrap(""" shwrap("""
# Jenkins by default only fetches the branch it's testing. Explicitly fetch master # Jenkins by default only fetches the branch it's testing. Explicitly fetch master
@ -63,27 +69,25 @@ codestyle: {
// Build FCOS and do a kola basic run // Build FCOS and do a kola basic run
stage("More builds and test") { stage("More builds and test") {
parallel fcos: { parallel fcos: {
cosaPod(buildroot: true, runAsUser: 0, memory: "3072Mi", cpu: "4") { cosaPod(runAsUser: 0, memory: "3072Mi", cpu: "4") {
stage("Build FCOS") { stage("Build FCOS") {
checkout scm checkout scm
unstash 'build' unstash 'build'
shwrap(""" shwrap("""
mkdir insttree # Move the bits into the cosa pod
tar -C insttree -xzvf insttree.tar.gz rsync -rlv installed/rootfs/ /
rsync -rlv insttree/ / rsync -rlv installed/tests/ /
coreos-assembler init --force https://github.com/coreos/fedora-coreos-config coreos-assembler init --force https://github.com/coreos/fedora-coreos-config
mkdir -p overrides/rootfs mkdir -p overrides/rootfs
mv insttree/* overrides/rootfs/ # And override the on-host bits
rmdir insttree mv installed/rootfs/* overrides/rootfs/
rm installed -rf
coreos-assembler fetch coreos-assembler fetch
coreos-assembler build coreos-assembler build
coreos-assembler buildextend-metal coreos-assembler buildextend-metal
coreos-assembler buildextend-metal4k coreos-assembler buildextend-metal4k
coreos-assembler buildextend-live --fast coreos-assembler buildextend-live --fast
# Install the tests
# Build and install the tests
make -C tests/kolainst
make -C tests/kolainst install
""") """)
} }
stage("Test") { stage("Test") {
@ -102,7 +106,7 @@ parallel fcos: {
}, },
buildopts: { buildopts: {
def n = 5 def n = 5
cosaPod(buildroot: true, runAsUser: 0, memory: "2Gi", cpu: "${n}") { buildPod(memory: "2Gi", cpu: "${n}") {
checkout scm checkout scm
shwrap(""" shwrap("""
git submodule update --init git submodule update --init

View File

@ -41,8 +41,8 @@ run_tmp_webserver() {
dir=$1 dir=$1
port=8000 port=8000
podman create --name ostree-httpd --privileged -ti --net=host -v "${dir}":/srv --workdir /srv \ podman create --name ostree-httpd --privileged --user root -ti --net=host -v "${dir}":/srv --workdir /srv \
registry.svc.ci.openshift.org/coreos/fedora:31 python3 -m http.server "${port}" quay.io/coreos-assembler/fcos-buildroot:testing-devel python3 -m http.server "${port}"
podman generate systemd ostree-httpd > /etc/systemd/system/ostree-httpd.service podman generate systemd ostree-httpd > /etc/systemd/system/ostree-httpd.service
systemctl daemon-reload systemctl daemon-reload
systemctl start ostree-httpd.service systemctl start ostree-httpd.service