Message ID | 20220106111614.218823-2-alice.ferrazzi@miraclelinux.com (mailing list archive) |
---|---|
State | Handled Elsewhere |
Headers | show |
Series | Add cip-core-image-kernelci building and uploading system | expand |
On 06.01.22 12:16, Alice Ferrazzi wrote: > This image is currently used by KernelCI production for testing purpose. > The purpose of this image is that KernelCI need to be able to autologin > without password and to detect the login shell using special characters. > Currently added are the default settings used by KernelCI images. > > Signed-off-by: Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > --- > kas/opt/kernelci.yml | 16 +++++++++ > .../images/cip-core-image-kernelci.bb | 16 +++++++++ > .../files/99-silent-printk.conf | 1 + > .../kernelci-customizations/files/ethernet | 23 +++++++++++++ > .../kernelci-customizations/files/postinst | 34 +++++++++++++++++++ > .../kernelci-customizations.bb | 34 +++++++++++++++++++ > 6 files changed, 124 insertions(+) > create mode 100644 kas/opt/kernelci.yml > create mode 100644 recipes-core/images/cip-core-image-kernelci.bb > create mode 100644 recipes-core/kernelci-customizations/files/99-silent-printk.conf > create mode 100644 recipes-core/kernelci-customizations/files/ethernet > create mode 100644 recipes-core/kernelci-customizations/files/postinst > create mode 100644 recipes-core/kernelci-customizations/kernelci-customizations.bb > > diff --git a/kas/opt/kernelci.yml b/kas/opt/kernelci.yml > new file mode 100644 > index 0000000..9c67864 > --- /dev/null > +++ b/kas/opt/kernelci.yml > @@ -0,0 +1,16 @@ > +# > +# CIP Core, generic profile > +# > +# Copyright (c) Toshiba Corporation, 2020 > +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 > +# > +# Authors: > +# Venkata Pyla <venkata.pyla@toshiba-tsip.com> > +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > +# > +# SPDX-License-Identifier: MIT > +# > +header: > + version: 10 > + > +target: cip-core-image-kernelci > diff --git a/recipes-core/images/cip-core-image-kernelci.bb b/recipes-core/images/cip-core-image-kernelci.bb > new file mode 100644 > index 0000000..479c14c > --- /dev/null > +++ b/recipes-core/images/cip-core-image-kernelci.bb > @@ -0,0 +1,16 @@ > +# > +# A reference image for KernelCI > +# > +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 > +# > +# Authors: > +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > +# > +# SPDX-License-Identifier: MIT > +# > + > +inherit image > + > +DESCRIPTION = "CIP Core image for KernelCI" > + > +IMAGE_INSTALL += "kernelci-customizations" > diff --git a/recipes-core/kernelci-customizations/files/99-silent-printk.conf b/recipes-core/kernelci-customizations/files/99-silent-printk.conf > new file mode 100644 > index 0000000..ad24d3a > --- /dev/null > +++ b/recipes-core/kernelci-customizations/files/99-silent-printk.conf > @@ -0,0 +1 @@ > +kernel.printk = 3 4 1 3 > diff --git a/recipes-core/kernelci-customizations/files/ethernet b/recipes-core/kernelci-customizations/files/ethernet > new file mode 100644 > index 0000000..fa47d1a > --- /dev/null > +++ b/recipes-core/kernelci-customizations/files/ethernet > @@ -0,0 +1,23 @@ > +# > +# CIP Core, generic profile > +# > +# Copyright (c) Siemens AG, 2019 > +# > +# Authors: > +# Jan Kiszka <jan.kiszka@siemens.com> > +# > +# SPDX-License-Identifier: MIT > +# > + > +allow-hotplug eth0 > +allow-hotplug enp0s2 > +allow-hotplug enp2s0 > + > +# used on BBB > +iface eth0 inet dhcp > + > +# used on qemu-amd64 > +iface enp0s2 inet dhcp > + > +# used on simatic-ipc227e > +iface enp2s0 inet dhcp > diff --git a/recipes-core/kernelci-customizations/files/postinst b/recipes-core/kernelci-customizations/files/postinst > new file mode 100644 > index 0000000..7ae30e8 > --- /dev/null > +++ b/recipes-core/kernelci-customizations/files/postinst > @@ -0,0 +1,34 @@ > +#!/bin/sh > +# > +# CIP Core, generic profile > +# > +# Copyright (c) Siemens AG, 2019 > +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 > +# > +# Authors: > +# Jan Kiszka <jan.kiszka@siemens.com> > +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > +# > +# SPDX-License-Identifier: MIT > +# > + > +echo "CIP Core Demo & Test Image" > /etc/issue > + > +# permit root login without password > +echo "PermitRootLogin yes" >> /etc/ssh/sshd_config > +echo "PermitEmptyPasswords yes" >> /etc/ssh/sshd_config > +passwd root -d > + > +# serial getty service for autologin > +mkdir -p /etc/systemd/system/serial-getty@.service.d/ > +echo "[Service]" > /etc/systemd/system/serial-getty@.service.d/override.conf > +echo "ExecStart=" >> /etc/systemd/system/serial-getty@.service.d/override.conf > +echo "ExecStart=-/sbin/agetty --autologin root --keep-baud 115200,38400,9600 %I $TERM" >> /etc/systemd/system/serial-getty@.service.d/override.conf > + > +# set the profile for KernelCI > +echo "PS1='\$(pwd) # '" > /root/.profile > +echo "cd /" >> /root/.profile > + > +HOSTNAME=demo > +echo "$HOSTNAME" > /etc/hostname > +echo "127.0.0.1 $HOSTNAME" >> /etc/hosts > diff --git a/recipes-core/kernelci-customizations/kernelci-customizations.bb b/recipes-core/kernelci-customizations/kernelci-customizations.bb > new file mode 100644 > index 0000000..dca0891 > --- /dev/null > +++ b/recipes-core/kernelci-customizations/kernelci-customizations.bb > @@ -0,0 +1,34 @@ > +# > +# CIP Core, generic profile > +# > +# Copyright (c) Siemens AG, 2019 > +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 > +# > +# Authors: > +# Jan Kiszka <jan.kiszka@siemens.com> > +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > +# > +# SPDX-License-Identifier: MIT > +# > + > +inherit dpkg-raw > + > +DESCRIPTION = "CIP Core image demo & customizations" > + > +SRC_URI = " \ > + file://postinst \ > + file://ethernet \ > + file://99-silent-printk.conf" > + > +DEPENDS += "sshd-regen-keys" > + > +DEBIAN_DEPENDS = " \ > + ifupdown, isc-dhcp-client, net-tools, iputils-ping, ssh, sshd-regen-keys" > + > +do_install() { > + install -v -d ${D}/etc/network/interfaces.d > + install -v -m 644 ${WORKDIR}/ethernet ${D}/etc/network/interfaces.d/ > + > + install -v -d ${D}/etc/sysctl.d > + install -v -m 644 ${WORKDIR}/99-silent-printk.conf ${D}/etc/sysctl.d/ > +} This is duplicating the default customization package, IIUC, for the purpose of adding further things. And you already miss some things due to this (WIRELESS_FIRMWARE_PACKAGE, INSTALL_WIRELESS_TOOLS). How about installing both and carrying in kernelci-customization only the delta? Or at least reuse artifacts from customizations package, e.g. via symlinks? Jan
On Thu, Jan 6, 2022 at 11:01 PM Jan Kiszka <jan.kiszka@siemens.com> wrote: > > On 06.01.22 12:16, Alice Ferrazzi wrote: > > This image is currently used by KernelCI production for testing purpose. > > The purpose of this image is that KernelCI need to be able to autologin > > without password and to detect the login shell using special characters. > > Currently added are the default settings used by KernelCI images. > > > > Signed-off-by: Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > > --- > > kas/opt/kernelci.yml | 16 +++++++++ > > .../images/cip-core-image-kernelci.bb | 16 +++++++++ > > .../files/99-silent-printk.conf | 1 + > > .../kernelci-customizations/files/ethernet | 23 +++++++++++++ > > .../kernelci-customizations/files/postinst | 34 +++++++++++++++++++ > > .../kernelci-customizations.bb | 34 +++++++++++++++++++ > > 6 files changed, 124 insertions(+) > > create mode 100644 kas/opt/kernelci.yml > > create mode 100644 recipes-core/images/cip-core-image-kernelci.bb > > create mode 100644 recipes-core/kernelci-customizations/files/99-silent-printk.conf > > create mode 100644 recipes-core/kernelci-customizations/files/ethernet > > create mode 100644 recipes-core/kernelci-customizations/files/postinst > > create mode 100644 recipes-core/kernelci-customizations/kernelci-customizations.bb > > > > diff --git a/kas/opt/kernelci.yml b/kas/opt/kernelci.yml > > new file mode 100644 > > index 0000000..9c67864 > > --- /dev/null > > +++ b/kas/opt/kernelci.yml > > @@ -0,0 +1,16 @@ > > +# > > +# CIP Core, generic profile > > +# > > +# Copyright (c) Toshiba Corporation, 2020 > > +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 > > +# > > +# Authors: > > +# Venkata Pyla <venkata.pyla@toshiba-tsip.com> > > +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > > +# > > +# SPDX-License-Identifier: MIT > > +# > > +header: > > + version: 10 > > + > > +target: cip-core-image-kernelci > > diff --git a/recipes-core/images/cip-core-image-kernelci.bb b/recipes-core/images/cip-core-image-kernelci.bb > > new file mode 100644 > > index 0000000..479c14c > > --- /dev/null > > +++ b/recipes-core/images/cip-core-image-kernelci.bb > > @@ -0,0 +1,16 @@ > > +# > > +# A reference image for KernelCI > > +# > > +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 > > +# > > +# Authors: > > +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > > +# > > +# SPDX-License-Identifier: MIT > > +# > > + > > +inherit image > > + > > +DESCRIPTION = "CIP Core image for KernelCI" > > + > > +IMAGE_INSTALL += "kernelci-customizations" > > diff --git a/recipes-core/kernelci-customizations/files/99-silent-printk.conf b/recipes-core/kernelci-customizations/files/99-silent-printk.conf > > new file mode 100644 > > index 0000000..ad24d3a > > --- /dev/null > > +++ b/recipes-core/kernelci-customizations/files/99-silent-printk.conf > > @@ -0,0 +1 @@ > > +kernel.printk = 3 4 1 3 > > diff --git a/recipes-core/kernelci-customizations/files/ethernet b/recipes-core/kernelci-customizations/files/ethernet > > new file mode 100644 > > index 0000000..fa47d1a > > --- /dev/null > > +++ b/recipes-core/kernelci-customizations/files/ethernet > > @@ -0,0 +1,23 @@ > > +# > > +# CIP Core, generic profile > > +# > > +# Copyright (c) Siemens AG, 2019 > > +# > > +# Authors: > > +# Jan Kiszka <jan.kiszka@siemens.com> > > +# > > +# SPDX-License-Identifier: MIT > > +# > > + > > +allow-hotplug eth0 > > +allow-hotplug enp0s2 > > +allow-hotplug enp2s0 > > + > > +# used on BBB > > +iface eth0 inet dhcp > > + > > +# used on qemu-amd64 > > +iface enp0s2 inet dhcp > > + > > +# used on simatic-ipc227e > > +iface enp2s0 inet dhcp > > diff --git a/recipes-core/kernelci-customizations/files/postinst b/recipes-core/kernelci-customizations/files/postinst > > new file mode 100644 > > index 0000000..7ae30e8 > > --- /dev/null > > +++ b/recipes-core/kernelci-customizations/files/postinst > > @@ -0,0 +1,34 @@ > > +#!/bin/sh > > +# > > +# CIP Core, generic profile > > +# > > +# Copyright (c) Siemens AG, 2019 > > +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 > > +# > > +# Authors: > > +# Jan Kiszka <jan.kiszka@siemens.com> > > +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > > +# > > +# SPDX-License-Identifier: MIT > > +# > > + > > +echo "CIP Core Demo & Test Image" > /etc/issue > > + > > +# permit root login without password > > +echo "PermitRootLogin yes" >> /etc/ssh/sshd_config > > +echo "PermitEmptyPasswords yes" >> /etc/ssh/sshd_config > > +passwd root -d > > + > > +# serial getty service for autologin > > +mkdir -p /etc/systemd/system/serial-getty@.service.d/ > > +echo "[Service]" > /etc/systemd/system/serial-getty@.service.d/override.conf > > +echo "ExecStart=" >> /etc/systemd/system/serial-getty@.service.d/override.conf > > +echo "ExecStart=-/sbin/agetty --autologin root --keep-baud 115200,38400,9600 %I $TERM" >> /etc/systemd/system/serial-getty@.service.d/override.conf > > + > > +# set the profile for KernelCI > > +echo "PS1='\$(pwd) # '" > /root/.profile > > +echo "cd /" >> /root/.profile > > + > > +HOSTNAME=demo > > +echo "$HOSTNAME" > /etc/hostname > > +echo "127.0.0.1 $HOSTNAME" >> /etc/hosts > > diff --git a/recipes-core/kernelci-customizations/kernelci-customizations.bb b/recipes-core/kernelci-customizations/kernelci-customizations.bb > > new file mode 100644 > > index 0000000..dca0891 > > --- /dev/null > > +++ b/recipes-core/kernelci-customizations/kernelci-customizations.bb > > @@ -0,0 +1,34 @@ > > +# > > +# CIP Core, generic profile > > +# > > +# Copyright (c) Siemens AG, 2019 > > +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 > > +# > > +# Authors: > > +# Jan Kiszka <jan.kiszka@siemens.com> > > +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> > > +# > > +# SPDX-License-Identifier: MIT > > +# > > + > > +inherit dpkg-raw > > + > > +DESCRIPTION = "CIP Core image demo & customizations" > > + > > +SRC_URI = " \ > > + file://postinst \ > > + file://ethernet \ > > + file://99-silent-printk.conf" > > + > > +DEPENDS += "sshd-regen-keys" > > + > > +DEBIAN_DEPENDS = " \ > > + ifupdown, isc-dhcp-client, net-tools, iputils-ping, ssh, sshd-regen-keys" > > + > > +do_install() { > > + install -v -d ${D}/etc/network/interfaces.d > > + install -v -m 644 ${WORKDIR}/ethernet ${D}/etc/network/interfaces.d/ > > + > > + install -v -d ${D}/etc/sysctl.d > > + install -v -m 644 ${WORKDIR}/99-silent-printk.conf ${D}/etc/sysctl.d/ > > +} > > This is duplicating the default customization package, IIUC, for the > purpose of adding further things. And you already miss some things due > to this (WIRELESS_FIRMWARE_PACKAGE, INSTALL_WIRELESS_TOOLS). > > How about installing both and carrying in kernelci-customization only > the delta? Or at least reuse artifacts from customizations package, e.g. > via symlinks? KernelCI enviroment and gitlab-ci eviroment are mostly different. Changes on the symlink could possibly broke the KernelCI testing image or the gitlab-ci image. KernelCI working workflow is to have different files and porting changes manually so that we can be sure it doesn't create problems and revert on necessity. Thanks, Alicef
diff --git a/kas/opt/kernelci.yml b/kas/opt/kernelci.yml new file mode 100644 index 0000000..9c67864 --- /dev/null +++ b/kas/opt/kernelci.yml @@ -0,0 +1,16 @@ +# +# CIP Core, generic profile +# +# Copyright (c) Toshiba Corporation, 2020 +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 +# +# Authors: +# Venkata Pyla <venkata.pyla@toshiba-tsip.com> +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> +# +# SPDX-License-Identifier: MIT +# +header: + version: 10 + +target: cip-core-image-kernelci diff --git a/recipes-core/images/cip-core-image-kernelci.bb b/recipes-core/images/cip-core-image-kernelci.bb new file mode 100644 index 0000000..479c14c --- /dev/null +++ b/recipes-core/images/cip-core-image-kernelci.bb @@ -0,0 +1,16 @@ +# +# A reference image for KernelCI +# +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 +# +# Authors: +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> +# +# SPDX-License-Identifier: MIT +# + +inherit image + +DESCRIPTION = "CIP Core image for KernelCI" + +IMAGE_INSTALL += "kernelci-customizations" diff --git a/recipes-core/kernelci-customizations/files/99-silent-printk.conf b/recipes-core/kernelci-customizations/files/99-silent-printk.conf new file mode 100644 index 0000000..ad24d3a --- /dev/null +++ b/recipes-core/kernelci-customizations/files/99-silent-printk.conf @@ -0,0 +1 @@ +kernel.printk = 3 4 1 3 diff --git a/recipes-core/kernelci-customizations/files/ethernet b/recipes-core/kernelci-customizations/files/ethernet new file mode 100644 index 0000000..fa47d1a --- /dev/null +++ b/recipes-core/kernelci-customizations/files/ethernet @@ -0,0 +1,23 @@ +# +# CIP Core, generic profile +# +# Copyright (c) Siemens AG, 2019 +# +# Authors: +# Jan Kiszka <jan.kiszka@siemens.com> +# +# SPDX-License-Identifier: MIT +# + +allow-hotplug eth0 +allow-hotplug enp0s2 +allow-hotplug enp2s0 + +# used on BBB +iface eth0 inet dhcp + +# used on qemu-amd64 +iface enp0s2 inet dhcp + +# used on simatic-ipc227e +iface enp2s0 inet dhcp diff --git a/recipes-core/kernelci-customizations/files/postinst b/recipes-core/kernelci-customizations/files/postinst new file mode 100644 index 0000000..7ae30e8 --- /dev/null +++ b/recipes-core/kernelci-customizations/files/postinst @@ -0,0 +1,34 @@ +#!/bin/sh +# +# CIP Core, generic profile +# +# Copyright (c) Siemens AG, 2019 +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 +# +# Authors: +# Jan Kiszka <jan.kiszka@siemens.com> +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> +# +# SPDX-License-Identifier: MIT +# + +echo "CIP Core Demo & Test Image" > /etc/issue + +# permit root login without password +echo "PermitRootLogin yes" >> /etc/ssh/sshd_config +echo "PermitEmptyPasswords yes" >> /etc/ssh/sshd_config +passwd root -d + +# serial getty service for autologin +mkdir -p /etc/systemd/system/serial-getty@.service.d/ +echo "[Service]" > /etc/systemd/system/serial-getty@.service.d/override.conf +echo "ExecStart=" >> /etc/systemd/system/serial-getty@.service.d/override.conf +echo "ExecStart=-/sbin/agetty --autologin root --keep-baud 115200,38400,9600 %I $TERM" >> /etc/systemd/system/serial-getty@.service.d/override.conf + +# set the profile for KernelCI +echo "PS1='\$(pwd) # '" > /root/.profile +echo "cd /" >> /root/.profile + +HOSTNAME=demo +echo "$HOSTNAME" > /etc/hostname +echo "127.0.0.1 $HOSTNAME" >> /etc/hosts diff --git a/recipes-core/kernelci-customizations/kernelci-customizations.bb b/recipes-core/kernelci-customizations/kernelci-customizations.bb new file mode 100644 index 0000000..dca0891 --- /dev/null +++ b/recipes-core/kernelci-customizations/kernelci-customizations.bb @@ -0,0 +1,34 @@ +# +# CIP Core, generic profile +# +# Copyright (c) Siemens AG, 2019 +# Copyright (c) Cybertrust Japan Co., Ltd., 2021 +# +# Authors: +# Jan Kiszka <jan.kiszka@siemens.com> +# Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> +# +# SPDX-License-Identifier: MIT +# + +inherit dpkg-raw + +DESCRIPTION = "CIP Core image demo & customizations" + +SRC_URI = " \ + file://postinst \ + file://ethernet \ + file://99-silent-printk.conf" + +DEPENDS += "sshd-regen-keys" + +DEBIAN_DEPENDS = " \ + ifupdown, isc-dhcp-client, net-tools, iputils-ping, ssh, sshd-regen-keys" + +do_install() { + install -v -d ${D}/etc/network/interfaces.d + install -v -m 644 ${WORKDIR}/ethernet ${D}/etc/network/interfaces.d/ + + install -v -d ${D}/etc/sysctl.d + install -v -m 644 ${WORKDIR}/99-silent-printk.conf ${D}/etc/sysctl.d/ +}
This image is currently used by KernelCI production for testing purpose. The purpose of this image is that KernelCI need to be able to autologin without password and to detect the login shell using special characters. Currently added are the default settings used by KernelCI images. Signed-off-by: Alice Ferrazzi <alice.ferrazzi@miraclelinux.com> --- kas/opt/kernelci.yml | 16 +++++++++ .../images/cip-core-image-kernelci.bb | 16 +++++++++ .../files/99-silent-printk.conf | 1 + .../kernelci-customizations/files/ethernet | 23 +++++++++++++ .../kernelci-customizations/files/postinst | 34 +++++++++++++++++++ .../kernelci-customizations.bb | 34 +++++++++++++++++++ 6 files changed, 124 insertions(+) create mode 100644 kas/opt/kernelci.yml create mode 100644 recipes-core/images/cip-core-image-kernelci.bb create mode 100644 recipes-core/kernelci-customizations/files/99-silent-printk.conf create mode 100644 recipes-core/kernelci-customizations/files/ethernet create mode 100644 recipes-core/kernelci-customizations/files/postinst create mode 100644 recipes-core/kernelci-customizations/kernelci-customizations.bb