Page MenuHomeFreeBSD

D54247.diff
No OneTemporary

D54247.diff

diff --git a/tests/ci/Makefile b/tests/ci/Makefile
--- a/tests/ci/Makefile
+++ b/tests/ci/Makefile
@@ -82,6 +82,7 @@
META_TAR!=mktemp /tmp/meta.XXXXXX
META_DIR!=mktemp -d /tmp/meta.XXXXXX
META_DIROUT!=mktemp -d /tmp/meta.XXXXXX
+ENV_FILE= ${META_DIR}/ci-${OSRELEASE}-${GITREV}-${KERNCONF}.env
DISC_CAM!=truncate -s 128m /tmp/disk-cam
EXTRA_DISK_NUM?=5
DISK_NUMBERS!=jot - 1 ${EXTRA_DISK_NUM}
@@ -201,7 +202,47 @@
ci-set-full-var: .PHONY
CITYPE=full
-ci-create-meta: .PHONY
+ci-get-env: .PHONY
+ @echo "TARGET=${TARGET}" > ${ENV_FILE}
+ @echo "TARGET_ARCH=${TARGET_ARCH}" >> ${ENV_FILE}
+ @echo "KERNCONF=${KERNCONF}" >> ${ENV_FILE}
+ @echo "OSRELEASE=${OSRELEASE}" >> ${ENV_FILE}
+ @echo "CIIMAGE=${CIIMAGE}" >> ${ENV_FILE}
+ @echo "CIDISK=${CIDISK}" >> ${ENV_FILE}
+ @echo "VMSIZE=${VMSIZE}" >> ${ENV_FILE}
+ @echo "VM_MEM_SIZE=${VM_MEM_SIZE}" >> ${ENV_FILE}
+ @echo "TIMEOUT=${TIMEOUT}s" >> ${ENV_FILE}
+ @echo "CITYPE=${CITYPE}" >> ${ENV_FILE}
+ @echo "KYUA_TEST_FILTERS='${KYUA_TEST_FILTERS}'" >> ${ENV_FILE}
+ @echo "META_MODE='${METAMODE}'" >> ${ENV_FILE}
+ @echo "USE_QEMU='${USE_QEMU}'" >> ${ENV_FILE}
+ @echo "GITREV='${GITREV}'" >> ${ENV_FILE}
+ @echo "GITBRANCH='${GITBRANCH}'" >> ${ENV_FILE}
+ @echo "GITCOUNT='${GITCOUNT}'" >> ${ENV_FILE}
+ @echo "BUILDDATE='${BUILDDATE}'" >> ${ENV_FILE}
+ @echo "CC='${CC}'" >> ${ENV_FILE}
+ @echo "CFLAGS='${CFLAGS}'" >> ${ENV_FILE}
+ @echo "CPP='${CPP}'" >> ${ENV_FILE}
+ @echo "CXX='${CXX}'" >> ${ENV_FILE}
+ @echo "CXXFLAGS='${CXXFLAGS}'" >> ${ENV_FILE}
+ @echo "COMPILER_FEATURES='${COMPILER_FEATURES}'" >> ${ENV_FILE}
+ @echo "COMPILER_FREEBSD_VERSION='${COMPILER_FREEBSD_VERSION}'" >> ${ENV_FILE}
+ @echo "COMPILER_TYPE='${COMPILER_TYPE}'" >> ${ENV_FILE}
+ @echo "COMPILER_VERSION='${COMPILER_VERSION}'" >> ${ENV_FILE}
+ @echo "HOST_CC='${HOST_CC}'" >> ${ENV_FILE}
+ @echo "HOST_MACHINE='${HOST_MACHINE}'" >> ${ENV_FILE}
+ @echo "HOST_OS='${HOST_OS}'" >> ${ENV_FILE}
+ @echo "HOST_OSMAJOR='${HOST_OSMAJOR}'" >> ${ENV_FILE}
+ @echo "HOST_OSTYPE='${HOST_OSTYPE}'" >> ${ENV_FILE}
+ @echo "LD='${LD}'" >> ${ENV_FILE}
+ @echo "LDFLAGS='${LDFLAGS}'" >> ${ENV_FILE}
+ @echo "MACHINE='${MACHINE}'" >> ${ENV_FILE}
+ @echo "MACHINE_ABI='${MACHINE_ABI}'" >> ${ENV_FILE}
+ @echo "MACHINE_ARCH='${MACHINE_ARCH}'" >> ${ENV_FILE}
+ @echo "MACHINE_CPU='${MACHINE_CPU}'" >> ${ENV_FILE}
+ @echo "MACHINE_CPUARCH='${MACHINE_CPUARCH}'" >> ${ENV_FILE}
+
+ci-create-meta: ci-get-env .PHONY
truncate -s 512M ${META_TAR}
tar rvf ${META_TAR} -C ${META_DIR} .
diff --git a/tests/ci/tools/freebsdci b/tests/ci/tools/freebsdci
--- a/tests/ci/tools/freebsdci
+++ b/tests/ci/tools/freebsdci
@@ -57,6 +57,27 @@
esac
}
+set_environment()
+{
+ if [ "${istar}" -eq 1 ]; then
+ rm -fr ${metadir}
+ mkdir -p ${metadir}
+ tar xvf ${tardev} -C ${metadir}
+ ci_env_file=$(set -- "${metadir}"/ci-*.env; \
+ [ "$#" -eq 1 ] && printf '%s\n' "$1")
+ if [ -z "${ci_env_file}" ]; then
+ echo "ci: No CI environment file found in ${metadir}"
+ else
+ env >> "${ci_env_file}"
+ fi
+ else
+ echo "ERROR: no device with POSIX tar archive format found."
+ # Don't shutdown because this is not run in unattended mode
+ exit 1
+ fi
+
+}
+
smoke_tests()
{
echo
@@ -72,29 +93,19 @@
echo "--------------------------------------------------------------"
echo "BOOT sequence COMPLETED"
echo "TEST sequence STARTED"
- if [ "${istar}" -eq 1 ]; then
- rm -fr ${metadir}
- mkdir -p ${metadir}
- tar xvf ${tardev} -C ${metadir}
- cd /usr/tests
- set +e
- kyua \
- -v parallelism=${parallelism} \
- test ${freebsdci_test_filters}
- rc=$?
- set -e
- if [ ${rc} -ne 0 ] && [ ${rc} -ne 1 ]; then
- exit ${rc}
- fi
- kyua report --verbose --results-filter passed,skipped,xfail,broken,failed --output test-report.txt
- kyua report-junit --output=test-report.xml
- mv test-report.* /${metadir}
- tar cvf ${tardev} -C ${metadir} .
- else
- echo "ERROR: no device with POSIX tar archive format found."
- # Don't shutdown because this is not run in unattended mode
- exit 1
+ cd /usr/tests
+ set +e
+ kyua \
+ -v parallelism=${parallelism} \
+ test ${freebsdci_test_filters}
+ rc=$?
+ set -e
+ if [ ${rc} -ne 0 ] && [ ${rc} -ne 1 ]; then
+ exit ${rc}
fi
+ kyua report --verbose --results-filter passed,skipped,xfail,broken,failed --output test-report.txt
+ kyua report-junit --output=test-report.xml
+ mv test-report.* /${metadir}
echo "TEST sequence COMPLETED"
echo "INITIATING system SHUTDOWN"
echo "--------------------------------------------------------------"
@@ -102,11 +113,13 @@
firstboot_ci_run()
{
+ set_environment
if [ "$freebsdci_type" = "smoke" ]; then
smoke_tests
elif [ "$freebsdci_type" = "full" ]; then
full_tests
fi
+ tar cvf ${tardev} -C ${metadir} .
auto_shutdown
}

File Metadata

Mime Type
text/plain
Expires
Fri, Dec 19, 9:38 PM (9 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27054993
Default Alt Text
D54247.diff (4 KB)

Event Timeline