compute_engine_instance: # Image list available via # gcloud compute images list --project freebsd-org-cloud-dev --no-standard-images platform: freebsd image_project: freebsd-org-cloud-dev image: freebsd-13-2-release-amd64 cpu: 8 memory: 8G disk: 40 env: CIRRUS_CLONE_DEPTH: 1 PKG_FORMAT: tar task: matrix: - name: amd64-llvm16 World and kernel build and boot smoke test only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' trigger_type: manual env: TARGET: amd64 TARGET_ARCH: amd64 TOOLCHAIN: llvm16 TOOLCHAIN_PKG: ${TOOLCHAIN}-lite - name: amd64-llvm17 World and kernel build and boot smoke test env: TARGET: amd64 TARGET_ARCH: amd64 TOOLCHAIN: llvm17 TOOLCHAIN_PKG: ${TOOLCHAIN}-lite - name: arm64-llvm16 World and kernel build and boot smoke test only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' trigger_type: manual env: TARGET: arm64 TARGET_ARCH: aarch64 TOOLCHAIN: llvm16 TOOLCHAIN_PKG: ${TOOLCHAIN} - name: arm64-llvm17 World and kernel build and boot smoke test only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' trigger_type: manual env: TARGET: arm64 TARGET_ARCH: aarch64 TOOLCHAIN: llvm17 TOOLCHAIN_PKG: ${TOOLCHAIN} - name: amd64-gcc12 World and kernel build and boot smoke test (manual) only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' trigger_type: manual env: TARGET: amd64 TARGET_ARCH: amd64 TOOLCHAIN: amd64-gcc12 TOOLCHAIN_PKG: ${TOOLCHAIN} - name: aarch64-gcc12 World and kernel build and boot smoke test (manual) only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' trigger_type: manual env: TARGET: arm64 TARGET_ARCH: aarch64 TOOLCHAIN: aarch64-gcc12 TOOLCHAIN_PKG: ${TOOLCHAIN} - name: amd64-gcc12 World and kernel build and boot smoke test (FreeBSD repo) only_if: $CIRRUS_REPO_FULL_NAME == 'freebsd/freebsd-src' env: TARGET: amd64 TARGET_ARCH: amd64 TOOLCHAIN: amd64-gcc12 TOOLCHAIN_PKG: ${TOOLCHAIN} timeout_in: 120m install_script: - sh .cirrus-ci/pkg-install.sh ${TOOLCHAIN_PKG} setup_script: - uname -a - gpart show - df -m - pkg --version - pw useradd user - mkdir -p /usr/obj/$(pwd -P) - chown user:user /usr/obj/$(pwd -P) script: - su user -c "make -j$(sysctl -n hw.ncpu) CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildworld buildkernel" package_script: - su user -c "make CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes packages" package_check_script: - su user -c "/usr/libexec/flua tools/pkgbase/metalog_reader.lua -c /usr/obj/$(pwd -P)/${TARGET}.${TARGET_ARCH}/worldstage/METALOG" test_script: - sh .cirrus-ci/pkg-install.sh qemu-nox11 - sh tools/boot/ci-qemu-test.sh post_script: - df -m - du -m -s /usr/obj