Add Ubuntu based isogen
CR made over debian-isogen for minimizing size and diff Late, it should move to "ubuntu-isogen" folder Change-Id: I44e9e55a1fa51e5ebba9ea80f189d793584ec646
This commit is contained in:
parent
eec2dc44e0
commit
3ca141f151
@ -12,7 +12,7 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
ARG FROM=debian:stable
|
ARG FROM=ubuntu:latest
|
||||||
|
|
||||||
FROM ${FROM}
|
FROM ${FROM}
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ IMAGE_NAME ?= isogen
|
|||||||
DOCKER_REGISTRY ?= quay.io
|
DOCKER_REGISTRY ?= quay.io
|
||||||
IMAGE_PREFIX ?= airshipit
|
IMAGE_PREFIX ?= airshipit
|
||||||
IMAGE_TAG ?= latest
|
IMAGE_TAG ?= latest
|
||||||
DISTRO ?= debian_stable
|
DISTRO ?= ubuntu_focal
|
||||||
IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${IMAGE_NAME}:${IMAGE_TAG}-${DISTRO}
|
IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${IMAGE_NAME}:${IMAGE_TAG}-${DISTRO}
|
||||||
SH_TO_CHECK := $(wildcard files/*.sh )
|
SH_TO_CHECK := $(wildcard files/*.sh )
|
||||||
PROXY ?= http://proxy.foo.com:8000
|
PROXY ?= http://proxy.foo.com:8000
|
||||||
|
@ -25,8 +25,6 @@ _debootstrap
|
|||||||
|
|
||||||
chroot "${CHROOT}" < "${BASEDIR}/packages_install.sh"
|
chroot "${CHROOT}" < "${BASEDIR}/packages_install.sh"
|
||||||
|
|
||||||
_use_ubuntu_net_device_names
|
|
||||||
|
|
||||||
mkdir -p "${CLOUD_DATA_LATEST}"
|
mkdir -p "${CLOUD_DATA_LATEST}"
|
||||||
cp "${BASEDIR}/meta_data.json" "${CLOUD_DATA_LATEST}"
|
cp "${BASEDIR}/meta_data.json" "${CLOUD_DATA_LATEST}"
|
||||||
cp "${USER_DATA}" "${CLOUD_DATA_LATEST}/user_data"
|
cp "${USER_DATA}" "${CLOUD_DATA_LATEST}/user_data"
|
||||||
|
@ -18,19 +18,11 @@ function _debootstrap (){
|
|||||||
debootstrap \
|
debootstrap \
|
||||||
--arch=amd64 \
|
--arch=amd64 \
|
||||||
--variant=minbase \
|
--variant=minbase \
|
||||||
buster \
|
--foreign \
|
||||||
|
focal \
|
||||||
"${HOME}"/LIVE_BOOT/chroot \
|
"${HOME}"/LIVE_BOOT/chroot \
|
||||||
http://ftp.debian.org/debian/
|
http://archive.ubuntu.com/ubuntu/
|
||||||
}
|
chroot "${HOME}"/LIVE_BOOT/chroot /debootstrap/debootstrap --second-stage
|
||||||
|
|
||||||
function _use_ubuntu_net_device_names (){
|
|
||||||
# this prioritizes the path policy over slot
|
|
||||||
# giving ubuntu compatible interface names
|
|
||||||
cat <<EOF>"${HOME}"/LIVE_BOOT/chroot/usr/lib/systemd/network/99-default.link
|
|
||||||
[Link]
|
|
||||||
NamePolicy=kernel database onboard path slot
|
|
||||||
MACAddressPolicy=persistent
|
|
||||||
EOF
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function _make_kernel(){
|
function _make_kernel(){
|
||||||
@ -49,7 +41,7 @@ function _make_kernel(){
|
|||||||
function _grub_install (){
|
function _grub_install (){
|
||||||
cp /builder/grub.conf "${HOME}"/LIVE_BOOT/scratch/grub.cfg
|
cp /builder/grub.conf "${HOME}"/LIVE_BOOT/scratch/grub.cfg
|
||||||
|
|
||||||
touch "${HOME}/LIVE_BOOT/image/DEBIAN_CUSTOM"
|
touch "${HOME}/LIVE_BOOT/image/UBUNTU_FOCAL_CUSTOM"
|
||||||
|
|
||||||
grub-mkstandalone \
|
grub-mkstandalone \
|
||||||
--format=i386-pc \
|
--format=i386-pc \
|
||||||
@ -79,14 +71,14 @@ function _make_iso(){
|
|||||||
-boot-load-size 4 \
|
-boot-load-size 4 \
|
||||||
-boot-info-table \
|
-boot-info-table \
|
||||||
--eltorito-catalog boot/grub/boot.cat \
|
--eltorito-catalog boot/grub/boot.cat \
|
||||||
-output "/config/debian-custom.iso" \
|
-output "/config/ubuntu-focal.iso" \
|
||||||
-graft-points \
|
-graft-points \
|
||||||
"${HOME}/LIVE_BOOT/image" \
|
"${HOME}/LIVE_BOOT/image" \
|
||||||
/boot/grub/bios.img="${HOME}/LIVE_BOOT/scratch/bios.img"
|
/boot/grub/bios.img="${HOME}/LIVE_BOOT/scratch/bios.img"
|
||||||
}
|
}
|
||||||
|
|
||||||
function _make_metadata(){
|
function _make_metadata(){
|
||||||
echo "bootImagePath: ${2:?}/debian-custom.iso" > "${1:?}"
|
echo "bootImagePath: ${2:?}/ubuntu-focal.iso" > "${1:?}"
|
||||||
}
|
}
|
||||||
|
|
||||||
function _check_input_data_set_vars(){
|
function _check_input_data_set_vars(){
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
search --set=root --file /DEBIAN_CUSTOM
|
search --set=root --file /UBUNTU_FOCAL_CUSTOM
|
||||||
|
|
||||||
insmod all_video
|
insmod all_video
|
||||||
|
|
||||||
set default="0"
|
set default="0"
|
||||||
set timeout=1
|
set timeout=1
|
||||||
|
|
||||||
menuentry "Debian Live" {
|
menuentry "Ubuntu Focal Live" {
|
||||||
linux /vmlinuz boot=live nomodeset ip=frommedia gfxpayload=text overlay-size=70% cpu_init_udelay=10000 console=ttyS0,115200 verbose
|
linux /vmlinuz boot=live nomodeset ip=frommedia gfxpayload=text overlay-size=70% cpu_init_udelay=10000 console=ttyS0,115200 verbose
|
||||||
initrd /initrd
|
initrd /initrd
|
||||||
}
|
}
|
||||||
|
@ -14,12 +14,12 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
set -xe
|
set -xe
|
||||||
echo "debian-live" > /etc/hostname
|
echo "ubuntu-live" > /etc/hostname
|
||||||
echo "127.0.0.1 localhost" > /etc/hosts
|
echo "127.0.0.1 localhost" > /etc/hosts
|
||||||
|
echo "deb http://archive.ubuntu.com/ubuntu focal universe" >> /etc/apt/sources.list
|
||||||
apt-get update && apt-get install -y --no-install-recommends \
|
apt-get update && apt-get install -y --no-install-recommends \
|
||||||
linux-image-amd64 \
|
linux-generic \
|
||||||
live-boot \
|
live-boot \
|
||||||
cloud-init \
|
|
||||||
systemd-sysv \
|
systemd-sysv \
|
||||||
apt-transport-https \
|
apt-transport-https \
|
||||||
openssh-server \
|
openssh-server \
|
||||||
@ -30,10 +30,20 @@ apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
bridge-utils \
|
bridge-utils \
|
||||||
tcpdump \
|
tcpdump \
|
||||||
iputils-ping \
|
iputils-ping \
|
||||||
vlan
|
vlan \
|
||||||
|
locales \
|
||||||
|
lsb-release \
|
||||||
|
ebtables
|
||||||
|
|
||||||
# ensure we support bonding and 802.1q
|
# ensure we support bonding and 802.1q
|
||||||
echo 'bonding' >> /etc/modules
|
echo 'bonding' >> /etc/modules
|
||||||
echo '8021q' >> /etc/modules
|
echo '8021q' >> /etc/modules
|
||||||
|
|
||||||
|
locale-gen en_US.UTF-8
|
||||||
|
systemctl enable systemd-networkd
|
||||||
|
echo 'br_netfilter' >> /etc/modules
|
||||||
|
|
||||||
|
apt-get install -y --no-install-recommends \
|
||||||
|
cloud-init
|
||||||
|
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user