summaryrefslogtreecommitdiff
path: root/usr/src/tools/scripts/nightly
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/tools/scripts/nightly')
-rwxr-xr-xusr/src/tools/scripts/nightly38
1 files changed, 29 insertions, 9 deletions
diff --git a/usr/src/tools/scripts/nightly b/usr/src/tools/scripts/nightly
index f6b536c924..760b549231 100755
--- a/usr/src/tools/scripts/nightly
+++ b/usr/src/tools/scripts/nightly
@@ -27,9 +27,9 @@
# Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
# Copyright (c) 2017 by Delphix. All rights reserved.
# Copyright 2020 Joyent, Inc.
-# Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
# Copyright 2019 Peter Trible.
# Copyright 2020 Oxide Computer Company
+# Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
#
# Based on the nightly script from the integration folks,
# Mostly modified and owned by mike_s.
@@ -509,6 +509,7 @@ NIGHTLY_OPTIONS variable in the <env_file> as follows:
-F do _not_ do a non-DEBUG build
-G gate keeper default group of options (-au)
-I integration engineer default group of options (-ampu)
+ -L do not run pkglint
-M do not run pmodes (safe file permission checker)
-N do not run protocmp
-R default group of options for building a release (-mp)
@@ -539,6 +540,7 @@ D_FLAG=n
F_FLAG=n
f_FLAG=n
i_FLAG=n; i_CMD_LINE_FLAG=n
+L_FLAG=n
M_FLAG=n
m_FLAG=n
N_FLAG=n
@@ -718,7 +720,7 @@ check_closed_bins
#
NIGHTLY_OPTIONS=-${NIGHTLY_OPTIONS#-}
OPTIND=1
-while getopts +ABCDdFfGIiMmNnpRrtUuwW FLAG $NIGHTLY_OPTIONS
+while getopts +ABCDdFfGIiLMmNnpRrtUuwW FLAG $NIGHTLY_OPTIONS
do
case $FLAG in
A ) A_FLAG=y
@@ -741,6 +743,8 @@ do
;;
i ) i_FLAG=y
;;
+ L ) L_FLAG=y
+ ;;
M ) M_FLAG=y
;;
m ) m_FLAG=y
@@ -1974,17 +1978,17 @@ if [ "$CHECK_PATHS" = y -a "$N_FLAG" != y ]; then
fi
fi
+abspkg=
+for d in $abssrcdirs; do
+ if [ -d "$d/pkg" ]; then
+ abspkg="$abspkg $d"
+ fi
+done
+
if [ "$M_FLAG" != "y" -a "$build_ok" = y ]; then
echo "\n==== Impact on file permissions ====\n" \
>> $mail_msg_file
- abspkg=
- for d in $abssrcdirs; do
- if [ -d "$d/pkg" ]; then
- abspkg="$abspkg $d"
- fi
- done
-
if [ -n "$abspkg" ]; then
for d in "$abspkg"; do
( cd $d/pkg ; $MAKE -e pmodes ) >> $mail_msg_file
@@ -1992,6 +1996,22 @@ if [ "$M_FLAG" != "y" -a "$build_ok" = y ]; then
fi
fi
+if [ "$L_FLAG" != "y" -a "$build_ok" = y ]; then
+ echo "\n==== Linting packages ====\n" | \
+ tee -a $LOGFILE >> $mail_msg_file
+
+ if [ -n "$abspkg" ]; then
+ for d in "$abspkg"; do
+ ( cd $d/pkg ; $MAKE -e pkglint ) | \
+ tee -a $LOGFILE | \
+ egrep -v 'Lint engine setup|Starting lint run'
+ done 2>&1 | tee $TMPDIR/pkglint_noise >> $mail_msg_file
+ if [[ -s $TMPDIR/pkglint_noise ]]; then
+ build_extras_ok=n
+ fi
+ fi
+fi
+
if [ "$w_FLAG" = "y" -a "$build_ok" = "y" ]; then
if [[ "$MULTI_PROTO" = no || "$D_FLAG" = y ]]; then
do_wsdiff DEBUG $ROOT.prev $ROOT