Cirrus-CI: build as an unprivileged user

The Cirrus-CI-provided working tree is owned by root.  Leave that as is
for simplicity but build as an unprivileged user; this tests building
with an unmodifiable source tree as a side effect.

Continue running the smoke test as root for now, as it failed when run
as an unprivileged user - pkg reported "Fail to chmod
/usr/bin/.pkgtemp.lpq.dUHpEqPGJ9pq:Operation not permitted"

Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Ed Maste 2020-09-17 18:47:23 +00:00
parent acde2586c9
commit db853af62a

View File

@ -12,9 +12,13 @@ task:
timeout_in: 120m
install_script:
- pkg install -y qemu-devel uefi-edk2-qemu-x86_64
setup_user_script:
- pw useradd user
- mkdir -p /usr/obj/$(pwd -P)
- chown user:user /usr/obj/$(pwd -P)
script:
- make -j$(sysctl -n hw.ncpu) WITHOUT_TOOLCHAIN=yes buildworld buildkernel
- su user -c "make -j$(sysctl -n hw.ncpu) WITHOUT_TOOLCHAIN=yes buildworld buildkernel"
package_script:
- make WITHOUT_TOOLCHAIN=yes PKG_FORMAT=tar packages
- su user -c "make WITHOUT_TOOLCHAIN=yes PKG_FORMAT=tar packages"
test_script:
- sh tools/boot/ci-qemu-test.sh