git: 539f84db949a - main - tests/ci: Pre-commit CI with CIRRUS-CI
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 27 May 2025 16:23:37 UTC
The branch main has been updated by bofh: URL: https://cgit.FreeBSD.org/src/commit/?id=539f84db949a1d66ac7b9d001481b44f0b10abf0 commit 539f84db949a1d66ac7b9d001481b44f0b10abf0 Author: Muhammad Moinur Rahman <bofh@FreeBSD.org> AuthorDate: 2025-05-27 16:16:38 +0000 Commit: Muhammad Moinur Rahman <bofh@FreeBSD.org> CommitDate: 2025-05-27 16:22:58 +0000 tests/ci: Pre-commit CI with CIRRUS-CI Currently we do not have pre-commit testing mechanism for our src tree. We have merged the CI test scripts into base(HEAD only). The plan is to replace the entire Jenkins scripts with the one from the base system. Limitations of the scripts: - Full test does not work as intended like in a local environment. Our amd64/aarch64/arm64 test requires somewhere near 4+ hours which is not supported by CIRRUS-CI hosted systems yet as the hard limitation is 120m. But in future we can try to do this using hosted system with various cloud providers. - Currently only works with main branch, stable/13 and stable/14 has not yet been processed. As the scripts are different. Approved by: lwhsu Differential Revision: https://reviews.freebsd.org/D36257 --- .cirrus.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/.cirrus.yml b/.cirrus.yml index 472fab9423a8..d6c4df7a9776 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -189,3 +189,30 @@ task: post_script: - df -m - du -m -s /usr/obj + +precommit_task: + matrix: + - name: amd64 smoke test using internal ci systems + only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' || $CIRRUS_BRANCH =~ 'pull/.*' + env: + TARGET: amd64 + TARGET_ARCH: amd64 + - name: aarch64 smoke test using internal ci systems + only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' || $CIRRUS_BRANCH =~ 'pull/.*' + env: + TARGET: arm64 + TARGET_ARCH: aarch64 + timeout_in: 120m + + setup_script: + - uname -a + - gpart show + - df -m + - pkg --version + + ci_script: + - make -C tests/ci TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} CITYPE=smoke ci + + post_script: + - df -m + - du -m -s /usr/obj