aboutsummaryrefslogtreecommitdiff
diff options
from:
to:
context:
space:
mode:
-rwxr-xr-xkiwi-build19
1 files changed, 13 insertions, 6 deletions
diff --git a/kiwi-build b/kiwi-build
index 2d7b12d..bc0db7b 100755
--- a/kiwi-build
+++ b/kiwi-build
@@ -8,16 +8,18 @@ set -eu -o pipefail
kiwibuildsh="$(basename "$0")"
usage() {
- echo >&2 "usage: $kiwibuildsh [--kiwi-description-dir=DIR] --output-dir=DIR --image-type=TYPE --image-profile=PROFILE [--debug]"
- echo >&2 " eg: $kiwibuildsh --kiwi-description-dir=/var/tmp/desc --output-dir=/var/tmp/work --image-type=oem --image-profile=cloud --debug"
- echo >&2 " eg: $kiwibuildsh --output-dir=/var/tmp/work --image-type=oem --image-profile=cloud"
+ echo >&2 "usage: $kiwibuildsh [--kiwi-description-dir=DIR] [--isolated] --output-dir=DIR --image-type=TYPE --image-profile=PROFILE [--debug]"
+ echo >&2 " eg: $kiwibuildsh --kiwi-description-dir=/var/tmp/desc --output-dir=/var/tmp/work --image-type=oem --image-profile=Cloud-Base-Generic --debug"
+ echo >&2 " eg: $kiwibuildsh --output-dir=/var/tmp/work --image-type=oem --image-profile=Cloud-Base-Generic"
+ echo >&2 " eg: $kiwibuildsh --isolated --output-dir=/var/tmp/work --image-type=oem --image-profile=Cloud-Base-Generic"
exit 255
}
-optTemp=$(getopt --options '+k:,o:,t:,p:,d,h' --longoptions 'kiwi-description-dir:,output-dir:,image-type:,image-profile:,debug,help' --name "$kiwibuildsh" -- "$@")
+optTemp=$(getopt --options '+k:,i,o:,t:,p:,d,h' --longoptions 'isolated,kiwi-description-dir:,output-dir:,image-type:,image-profile:,debug,help' --name "$kiwibuildsh" -- "$@")
eval set -- "$optTemp"
unset optTemp
+kiwi_isolated=
kiwi_description_dir="./"
output_dir=
image_type=
@@ -26,6 +28,7 @@ debug=
while true; do
case "$1" in
+ -i|--isolated) kiwi_isolated=1; shift ;;
-k|--kiwi-description-dir) kiwi_description_dir="$2" ; shift 2 ;;
-o|--output-dir) output_dir="$2" ; shift 2 ;;
-t|--image-type) image_type="$2" ; shift 2 ;;
@@ -41,7 +44,7 @@ if [ -z "$output_dir" ] || [ -z "$image_type" ] || [ -z "$image_profile" ]; then
usage
fi
-if [ -e "/sys/fs/selinux/enforce" ]; then
+if [ ! ${kiwi_isolated} ] && [ -e "/sys/fs/selinux/enforce" ]; then
# Disable SELinux enforcement during the image build if it's enforcing
selinux_enforcing="$(cat /sys/fs/selinux/enforce)"
if [ "$selinux_enforcing" = "1" ]; then
@@ -50,11 +53,15 @@ if [ -e "/sys/fs/selinux/enforce" ]; then
fi
set +e
+if [ ! ${kiwi_isolated} ]; then
kiwi-ng ${debug} --type="${image_type}" --profile="${image_profile}" --color-output system build --description "${kiwi_description_dir}" --target-dir "${output_dir}"
+else
+kiwi-ng ${debug} --type="${image_type}" --profile="${image_profile}" --color-output system boxbuild --box universal --sshfs-sharing -- --description "${kiwi_description_dir}" --target-dir "${output_dir}"
+fi
kiwi_status=$?
set -e
-if [ -e "/sys/fs/selinux/enforce" ]; then
+if [ ! ${kiwi_isolated} ] && [ -e "/sys/fs/selinux/enforce" ]; then
# Re-enable SELinux enforcement now that image build is done
if [ "$selinux_enforcing" = "1" ]; then
setenforce 1