debian: Add debian packaging for installer/pxe-network-installer
This update adds debian packaging to the pxe-network-installer package. This includes a set of release based bios and uefi grub menus and a modification to the pxeboot-update.sh script to support creating debian grub files based on host mac address. Test Plan: PASS: Verify package build, image build and pxeboot install PASS: Verify package install directory structure layout PASS: Verify packaging of new debian /var/pxeboot/pxelinux.cfg.files PASS: Verify platform release variable substitution in new grub files PASS: Verify pxeboot-update.sh script changes produce both bios & efi variable substituted mac based grub file for a provisioned host Regression: PASS: Verify CentOS build and system install Story: 2009101 Task: 44677 Signed-off-by: Eric MacDonald <eric.macdonald@windriver.com> Change-Id: I69f735ef45bf0e0ecd612f5d7a8f1fcf6e51ca88
This commit is contained in:
parent
9af975fbdb
commit
cddb4fc6dd
@ -1,3 +1,4 @@
|
||||
installer/pxe-network-installer
|
||||
mtce
|
||||
mtce-common
|
||||
mtce-compute
|
||||
|
@ -0,0 +1,5 @@
|
||||
pxe-network-installer (2.0-1) unstable; urgency=medium
|
||||
|
||||
* Initial release.
|
||||
|
||||
-- Eric MacDonald <eric.macdonald@windriver.com> Wed, 10 Mar 2022 13:01:55 +0000
|
16
installer/pxe-network-installer/debian/deb_folder/control
Normal file
16
installer/pxe-network-installer/debian/deb_folder/control
Normal file
@ -0,0 +1,16 @@
|
||||
Source: pxe-network-installer
|
||||
Section: admin
|
||||
Priority: optional
|
||||
Maintainer: StarlingX Developers <starlingx-discuss@lists.starlingx.io>
|
||||
Homepage: https://www.starlingx.io
|
||||
Standards-Version: 4.5.1
|
||||
Build-Depends: debhelper-compat (= 13),
|
||||
build-info-dev,
|
||||
grub2,
|
||||
syslinux-common
|
||||
|
||||
Package: pxe-network-installer
|
||||
Architecture: all
|
||||
Depends: ${misc:Depends}
|
||||
Description: System node pxe boot installer
|
||||
System node pxe boot installer templates, utils and objects
|
43
installer/pxe-network-installer/debian/deb_folder/copyright
Normal file
43
installer/pxe-network-installer/debian/deb_folder/copyright
Normal file
@ -0,0 +1,43 @@
|
||||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Contact: StarlingX Developers <starlingx-discuss@lists.starlingx.io>
|
||||
Upstream-Name: pxe-network-installer
|
||||
Source: https://opendev.org/starlingx/metal
|
||||
|
||||
Files: *
|
||||
Copyright: (c) 2013-2022 Wind River Systems, Inc
|
||||
(c) Others (See individual files for more details)
|
||||
License: Apache-2
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
.
|
||||
https://www.apache.org/licenses/LICENSE-2.0
|
||||
.
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
.
|
||||
On Debian-based systems the full text of the Apache version 2.0 license
|
||||
can be found in `/usr/share/common-licenses/Apache-2.0'.
|
||||
|
||||
# If you want to use GPL v2 or later for the /debian/* files use
|
||||
# the following clauses, or change it to suit. Delete these two lines
|
||||
Files: debian/*
|
||||
Copyright: 2021 Wind River Systems, Inc
|
||||
License: Apache-2
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
.
|
||||
https://www.apache.org/licenses/LICENSE-2.0
|
||||
.
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
.
|
||||
On Debian-based systems the full text of the Apache version 2.0 license
|
||||
can be found in `/usr/share/common-licenses/Apache-2.0'.
|
@ -0,0 +1,2 @@
|
||||
var/pxeboot
|
||||
usr/sbin
|
48
installer/pxe-network-installer/debian/deb_folder/rules
Normal file
48
installer/pxe-network-installer/debian/deb_folder/rules
Normal file
@ -0,0 +1,48 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
# export DH_VERBOSE = 1
|
||||
export ROOT=$(CURDIR)/debian/tmp
|
||||
export platform_release="$(shell grep SW_VERSION /usr/include/build_info.h | cut -d ' ' -f 3)"
|
||||
|
||||
%:
|
||||
dh $@
|
||||
|
||||
override_dh_auto_configure:
|
||||
sed -i "s/xxxSW_VERSIONxxx/${platform_release}/g" debian-pxe-* efi-debian-pxe-*
|
||||
dh_auto_configure
|
||||
|
||||
override_dh_install:
|
||||
install -v -d -m 755 $(ROOT)/usr/bin
|
||||
install -v -d -m 755 $(ROOT)/var/pxeboot/pxelinux.cfg
|
||||
install -v -d -m 755 $(ROOT)/var/pxeboot/pxelinux.cfg.files
|
||||
install -v -d -m 755 $(ROOT)/var/pxeboot/rel-${platform_release}
|
||||
install -v -d -m 755 $(ROOT)/usr/share/licenses/pxe-network-installer-1.0.0
|
||||
|
||||
# Review Note: The actual kernel and initrd files will be added later
|
||||
# Pull in the kernel and initrd and add installer links.
|
||||
ln -sf bzImage $(ROOT)/var/pxeboot/rel-${platform_release}/installer-bzImage
|
||||
ln -sf initrd $(ROOT)/var/pxeboot/rel-${platform_release}/installer-initrd
|
||||
|
||||
# Add grub links
|
||||
install -v -m 644 default $(ROOT)/var/pxeboot/pxelinux.cfg.files/default
|
||||
install -v -m 644 default.static $(ROOT)/var/pxeboot/pxelinux.cfg.files/default.static
|
||||
install -v -m 644 pxe-grub.cfg $(ROOT)/var/pxeboot/pxelinux.cfg.files/grub.cfg
|
||||
install -v -m 644 pxe-grub.cfg.static $(ROOT)/var/pxeboot/pxelinux.cfg.files/grub.cfg.static
|
||||
install -p -D -m 700 pxeboot-update.sh $(ROOT)/usr/sbin/pxeboot-update-${platform_release}.sh
|
||||
|
||||
# Legacy BIOS System Node Install grub menus
|
||||
install -p -D -m 700 debian-pxe-controller-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/pxe-controller-install-${platform_release}
|
||||
install -p -D -m 700 debian-pxe-smallsystem-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/pxe-smallsystem-install-${platform_release}
|
||||
install -p -D -m 700 debian-pxe-storage-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/pxe-storage-install-${platform_release}
|
||||
install -p -D -m 700 debian-pxe-worker-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/pxe-worker-install-${platform_release}
|
||||
install -p -D -m 700 debian-pxe-worker_lowlatency-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/pxe-worker_lowlatency-install-${platform_release}
|
||||
install -p -D -m 700 debian-pxe-smallsystem_lowlatency-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/pxe-smallsystem_lowlatency-install-${platform_release}
|
||||
|
||||
# UEFI System Node Install grub menus
|
||||
install -p -D -m 700 efi-debian-pxe-controller-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/efi-pxe-controller-install-${platform_release}
|
||||
install -p -D -m 700 efi-debian-pxe-smallsystem-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/efi-pxe-smallsystem-install-${platform_release}
|
||||
install -p -D -m 700 efi-debian-pxe-storage-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/efi-pxe-storage-install-${platform_release}
|
||||
install -p -D -m 700 efi-debian-pxe-worker-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/efi-pxe-worker-install-${platform_release}
|
||||
install -p -D -m 700 efi-debian-pxe-worker_lowlatency-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/efi-pxe-worker_lowlatency-install-${platform_release}
|
||||
install -p -D -m 700 efi-debian-pxe-smallsystem_lowlatency-install $(ROOT)/var/pxeboot/pxelinux.cfg.files/efi-pxe-smallsystem_lowlatency-install-${platform_release}
|
||||
dh_install
|
7
installer/pxe-network-installer/debian/meta_data.yaml
Normal file
7
installer/pxe-network-installer/debian/meta_data.yaml
Normal file
@ -0,0 +1,7 @@
|
||||
---
|
||||
debname: pxe-network-installer
|
||||
debver: 2.0-1
|
||||
src_path: pxe-network-installer
|
||||
revision:
|
||||
dist: $STX_DIST
|
||||
PKG_GITREVCOUNT: true
|
@ -0,0 +1,26 @@
|
||||
SERIAL 0 115200
|
||||
TIMEOUT 50
|
||||
DEFAULT menu.c32
|
||||
|
||||
# Menu Configuration
|
||||
MENU WIDTH 80
|
||||
MENU MARGIN 10
|
||||
MENU PASSWORDMARGIN 3
|
||||
MENU ROWS 12
|
||||
MENU TABMSGROW 18
|
||||
MENU CMDLINEROW 18
|
||||
MENU ENDROW 24
|
||||
MENU PASSWORDROW 11
|
||||
MENU TIMEOUTROW 20
|
||||
|
||||
PROMPT 0
|
||||
NOESCAPE 1
|
||||
NOCOMPLETE 1
|
||||
ALLOWOPTIONS 0
|
||||
|
||||
LABEL 1
|
||||
MENU LABEL ^1) Standard Controller
|
||||
MENU DEFAULT
|
||||
KERNEL rel-xxxSW_VERSIONxxx/installer-bzImage
|
||||
APPEND initrd=rel-xxxSW_VERSIONxxx/installer-initrd rdinit=/install traits=controller instname=debian instsh=0 instab=0 instw=10 instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
IPAPPEND 2
|
@ -0,0 +1,26 @@
|
||||
SERIAL 0 115200
|
||||
TIMEOUT 50
|
||||
DEFAULT menu.c32
|
||||
|
||||
# Menu Configuration
|
||||
MENU WIDTH 80
|
||||
MENU MARGIN 10
|
||||
MENU PASSWORDMARGIN 3
|
||||
MENU ROWS 12
|
||||
MENU TABMSGROW 18
|
||||
MENU CMDLINEROW 18
|
||||
MENU ENDROW 24
|
||||
MENU PASSWORDROW 11
|
||||
MENU TIMEOUTROW 20
|
||||
|
||||
PROMPT 0
|
||||
NOESCAPE 1
|
||||
NOCOMPLETE 1
|
||||
ALLOWOPTIONS 0
|
||||
|
||||
LABEL 1
|
||||
MENU LABEL ^1) All-in-one
|
||||
MENU DEFAULT
|
||||
KERNEL rel-xxxSW_VERSIONxxx/installer-bzImage
|
||||
APPEND initrd=rel-xxxSW_VERSIONxxx/installer-initrd rdinit=/install traits=controller,worker instname=debian instsh=0 instab=0 instw=10 instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
IPAPPEND 2
|
@ -0,0 +1,26 @@
|
||||
SERIAL 0 115200
|
||||
TIMEOUT 50
|
||||
DEFAULT menu.c32
|
||||
|
||||
# Menu Configuration
|
||||
MENU WIDTH 80
|
||||
MENU MARGIN 10
|
||||
MENU PASSWORDMARGIN 3
|
||||
MENU ROWS 12
|
||||
MENU TABMSGROW 18
|
||||
MENU CMDLINEROW 18
|
||||
MENU ENDROW 24
|
||||
MENU PASSWORDROW 11
|
||||
MENU TIMEOUTROW 20
|
||||
|
||||
PROMPT 0
|
||||
NOESCAPE 1
|
||||
NOCOMPLETE 1
|
||||
ALLOWOPTIONS 0
|
||||
|
||||
LABEL 1
|
||||
MENU LABEL ^1) All-in-one (lowlatency)
|
||||
MENU DEFAULT
|
||||
KERNEL rel-xxxSW_VERSIONxxx/installer-bzImage
|
||||
APPEND initrd=rel-xxxSW_VERSIONxxx/installer-initrd rdinit=/install traits=controller,worker,lowlatency instname=debian instsh=0 instab=0 instw=10 instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
IPAPPEND 2
|
@ -0,0 +1,26 @@
|
||||
SERIAL 0 115200
|
||||
TIMEOUT 50
|
||||
DEFAULT menu.c32
|
||||
|
||||
# Menu Configuration
|
||||
MENU WIDTH 80
|
||||
MENU MARGIN 10
|
||||
MENU PASSWORDMARGIN 3
|
||||
MENU ROWS 12
|
||||
MENU TABMSGROW 18
|
||||
MENU CMDLINEROW 18
|
||||
MENU ENDROW 24
|
||||
MENU PASSWORDROW 11
|
||||
MENU TIMEOUTROW 20
|
||||
|
||||
PROMPT 0
|
||||
NOESCAPE 1
|
||||
NOCOMPLETE 1
|
||||
ALLOWOPTIONS 0
|
||||
|
||||
LABEL 1
|
||||
MENU LABEL ^1) Storage
|
||||
MENU DEFAULT
|
||||
KERNEL rel-xxxSW_VERSIONxxx/installer-bzImage
|
||||
APPEND initrd=rel-xxxSW_VERSIONxxx/installer-initrd rdinit=/install traits=storage instname=debian instsh=0 instab=0 instw=10 instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
IPAPPEND 2
|
@ -0,0 +1,26 @@
|
||||
SERIAL 0 115200
|
||||
TIMEOUT 50
|
||||
DEFAULT menu.c32
|
||||
|
||||
# Menu Configuration
|
||||
MENU WIDTH 80
|
||||
MENU MARGIN 10
|
||||
MENU PASSWORDMARGIN 3
|
||||
MENU ROWS 12
|
||||
MENU TABMSGROW 18
|
||||
MENU CMDLINEROW 18
|
||||
MENU ENDROW 24
|
||||
MENU PASSWORDROW 11
|
||||
MENU TIMEOUTROW 20
|
||||
|
||||
PROMPT 0
|
||||
NOESCAPE 1
|
||||
NOCOMPLETE 1
|
||||
ALLOWOPTIONS 0
|
||||
|
||||
LABEL 1
|
||||
MENU LABEL ^1) Worker
|
||||
MENU DEFAULT
|
||||
KERNEL rel-xxxSW_VERSIONxxx/installer-bzImage
|
||||
APPEND initrd=rel-xxxSW_VERSIONxxx/installer-initrd rdinit=/install traits=worker instname=debian instsh=0 instab=0 instw=10 instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
IPAPPEND 2
|
@ -0,0 +1,26 @@
|
||||
SERIAL 0 115200
|
||||
TIMEOUT 50
|
||||
DEFAULT menu.c32
|
||||
|
||||
# Menu Configuration
|
||||
MENU WIDTH 80
|
||||
MENU MARGIN 10
|
||||
MENU PASSWORDMARGIN 3
|
||||
MENU ROWS 12
|
||||
MENU TABMSGROW 18
|
||||
MENU CMDLINEROW 18
|
||||
MENU ENDROW 24
|
||||
MENU PASSWORDROW 11
|
||||
MENU TIMEOUTROW 20
|
||||
|
||||
PROMPT 0
|
||||
NOESCAPE 1
|
||||
NOCOMPLETE 1
|
||||
ALLOWOPTIONS 0
|
||||
|
||||
LABEL 1
|
||||
MENU LABEL ^1) Lowlatency Worker
|
||||
MENU DEFAULT
|
||||
KERNEL rel-xxxSW_VERSIONxxx/installer-bzImage
|
||||
APPEND initrd=rel-xxxSW_VERSIONxxx/installer-initrd rdinit=/install traits=worker,lowlatency instname=debian instsh=0 instab=0 instw=10 instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
IPAPPEND 2
|
@ -0,0 +1,8 @@
|
||||
default=0
|
||||
timeout=10
|
||||
GRUB_HIDDEN_TIMEOUT=0
|
||||
GRUB_TIMEOUT_STYLE='countdown'
|
||||
|
||||
menuentry '1) UEFI Standard Controller' {
|
||||
linuxefi rel-xxxSW_VERSIONxxx/installer-bzImage rdinit=/install traits=controller instname=debian instsh=0 instab=0 instw=10 BOOTIF=$net_default_mac instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
initrdefi rel-xxxSW_VERSIONxxx/installer-initrd
|
@ -0,0 +1,8 @@
|
||||
default=0
|
||||
timeout=10
|
||||
GRUB_HIDDEN_TIMEOUT=0
|
||||
GRUB_TIMEOUT_STYLE='countdown'
|
||||
|
||||
menuentry '1) UEFI All-in-one' {
|
||||
linuxefi rel-xxxSW_VERSIONxxx/installer-bzImage rdinit=/install traits=controller,worker instname=debian instsh=0 instab=0 instw=10 BOOTIF=$net_default_mac instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
initrdefi rel-xxxSW_VERSIONxxx/installer-initrd
|
@ -0,0 +1,8 @@
|
||||
default=0
|
||||
timeout=10
|
||||
GRUB_HIDDEN_TIMEOUT=0
|
||||
GRUB_TIMEOUT_STYLE='countdown'
|
||||
|
||||
menuentry '1) UEFI All-in-one (lowlatency)' {
|
||||
linuxefi rel-xxxSW_VERSIONxxx/installer-bzImage rdinit=/install traits=controller,worker,lowlatency instname=debian instsh=0 instab=0 instw=10 BOOTIF=$net_default_mac instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
initrdefi rel-xxxSW_VERSIONxxx/installer-initrd
|
@ -0,0 +1,8 @@
|
||||
default=0
|
||||
timeout=10
|
||||
GRUB_HIDDEN_TIMEOUT=0
|
||||
GRUB_TIMEOUT_STYLE='countdown'
|
||||
|
||||
menuentry '1) UEFI Storage' {
|
||||
linuxefi rel-xxxSW_VERSIONxxx/installer-bzImage rdinit=/install traits=storage instname=debian instsh=0 instab=0 instw=10 BOOTIF=$net_default_mac instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
initrdefi rel-xxxSW_VERSIONxxx/installer-initrd
|
@ -0,0 +1,8 @@
|
||||
default=0
|
||||
timeout=10
|
||||
GRUB_HIDDEN_TIMEOUT=0
|
||||
GRUB_TIMEOUT_STYLE='countdown'
|
||||
|
||||
menuentry '1) UEFI Worker' {
|
||||
linuxefi rel-xxxSW_VERSIONxxx/installer-bzImage rdinit=/install traits=worker instname=debian instsh=0 instab=0 instw=10 BOOTIF=$net_default_mac instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
initrdefi rel-xxxSW_VERSIONxxx/installer-initrd
|
@ -0,0 +1,10 @@
|
||||
default=0
|
||||
timeout=10
|
||||
GRUB_HIDDEN_TIMEOUT=0
|
||||
GRUB_TIMEOUT_STYLE='countdown'
|
||||
|
||||
menuentry '1) UEFI lowlatency Worker' {
|
||||
linuxefi rel-xxxSW_VERSIONxxx/installer-bzImage rdinit=/install traits=worker,lowlatency instname=debian instsh=0 instab=0 instw=10 BOOTIF=$net_default_mac instbr=starlingx ks=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/kickstart.cfg insturl=xxxBASE_URLxxx/feed/rel-xxxSW_VERSIONxxx/ostree_repo console=ttyS0,115200 console=tty1 biosdevname=0 net.ifnames=0 biosplusefi=1 xxxAPPEND_OPTIONSxxx
|
||||
initrdefi rel-xxxSW_VERSIONxxx/installer-initrd
|
||||
}
|
||||
|
@ -31,6 +31,7 @@ Arguments:
|
||||
-T <tboot value> : Specify whether or not to use tboot (optional)
|
||||
-k <kernel args> : Specify any extra kernel boot arguments (optional)
|
||||
-l <base url> : Specify installer base URL
|
||||
-d : Update Debian grub menus ; rather than centos menus
|
||||
|
||||
EOF
|
||||
}
|
||||
@ -67,8 +68,9 @@ function generate_config {
|
||||
|
||||
parms=$@
|
||||
logger -t $0 " $parms"
|
||||
debian_menus=false
|
||||
|
||||
while getopts "i:o:tgc:b:r:u:s:T:k:l:h" opt
|
||||
while getopts "i:o:tgc:b:r:u:s:T:k:l:h:d" opt
|
||||
do
|
||||
case $opt in
|
||||
i)
|
||||
@ -91,6 +93,9 @@ do
|
||||
c)
|
||||
console=$OPTARG
|
||||
;;
|
||||
d)
|
||||
debian_menus=true
|
||||
;;
|
||||
b)
|
||||
boot_device=$OPTARG
|
||||
;;
|
||||
@ -101,10 +106,10 @@ do
|
||||
tisnotify=$OPTARG
|
||||
;;
|
||||
s)
|
||||
security_profile=$OPTARG
|
||||
logger "security_profile is no longer supported ; ignoring"
|
||||
;;
|
||||
T)
|
||||
tboot=$OPTARG
|
||||
logger "tboot is no longer supported ; ignoring"
|
||||
;;
|
||||
k)
|
||||
kernal_extra_args=$OPTARG
|
||||
@ -123,6 +128,29 @@ do
|
||||
esac
|
||||
done
|
||||
|
||||
# handle debian.
|
||||
# Support the validation check below by forcing
|
||||
# boot and rootfs device to be set equal.
|
||||
if [ ${debian_menus} = true ] ; then
|
||||
if [ "${boot_device}" != "" ] ; then
|
||||
instdev=${boot_device}
|
||||
rootfs_device=${boot_device}
|
||||
elif [ "${rootfs_device}" != "" ] ; then
|
||||
instdev=${rootfs_device}
|
||||
boot_device=${rootfs_device}
|
||||
else
|
||||
logger --stderr -t $0 "Error: Failed to supply an install device: $@"
|
||||
usage
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$input_file" == "$output_file" ] ; then
|
||||
logger --stderr -t $0 "Error: Input template and Output file must be different"
|
||||
usage
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Validate parameters
|
||||
if [ -z "$input_file" \
|
||||
-o -z "$input_file_efi" \
|
||||
@ -135,30 +163,30 @@ if [ -z "$input_file" \
|
||||
exit 1
|
||||
fi
|
||||
|
||||
APPEND_OPTIONS="boot_device=$boot_device rootfs_device=$rootfs_device"
|
||||
if [ "${debian_menus}" = true ] ; then
|
||||
APPEND_OPTIONS="instdev=$instdev"
|
||||
else
|
||||
APPEND_OPTIONS="boot_device=$boot_device rootfs_device=$rootfs_device"
|
||||
|
||||
if [ -n "$text_install" ]; then
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS $text_install"
|
||||
if [ -n "$text_install" ]; then
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS $text_install"
|
||||
fi
|
||||
|
||||
# We now require GPT partitions for all disks regardless of size
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS inst.gpt"
|
||||
|
||||
if [ -n "$tisnotify" ]; then
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS tisnotify=$tisnotify"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$console" ]; then
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS console=$console"
|
||||
fi
|
||||
|
||||
if [ -n "$tisnotify" ]; then
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS tisnotify=$tisnotify"
|
||||
fi
|
||||
|
||||
# We now require GPT partitions for all disks regardless of size
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS inst.gpt"
|
||||
|
||||
# Add k8s support for namespaces
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS user_namespace.enable=1"
|
||||
|
||||
if [ -n "$security_profile" ]; then
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS security_profile=$security_profile"
|
||||
fi
|
||||
|
||||
if [ -n "$kernal_extra_args" ]; then
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS $kernal_extra_args"
|
||||
fi
|
||||
@ -166,13 +194,6 @@ fi
|
||||
BASE_URL=$base_url
|
||||
|
||||
generate_config $input_file $output_file
|
||||
|
||||
# for extended security profile UEFI boot only,
|
||||
# a tboot option will be passed to target boot option menu
|
||||
if [ "$security_profile" == "extended" -a -n "$tboot" ]; then
|
||||
APPEND_OPTIONS="$APPEND_OPTIONS tboot=$tboot"
|
||||
fi
|
||||
|
||||
generate_config $input_file_efi $output_file_efi
|
||||
|
||||
exit 0
|
||||
|
Loading…
x
Reference in New Issue
Block a user