summaryrefslogtreecommitdiff
path: root/meta-google/recipes-phosphor
diff options
context:
space:
mode:
authorBrandon Kim <brandonkim@google.com>2021-06-16 01:29:31 +0300
committerBrandon Kim <brandonkim@google.com>2021-06-16 01:29:31 +0300
commitbafdac1a131559e5b25c75dd43ad06457bd416fd (patch)
treeca2b88362711ac60c65b1c0b5ada68587c7b3201 /meta-google/recipes-phosphor
parent7f886a9f23c037fd57feeec585d9ba1f0061145a (diff)
downloadopenbmc-bafdac1a131559e5b25c75dd43ad06457bd416fd.tar.xz
meta-google: recipes-phosphor: initrdscripts: Import from gBMC
Initial recipes-phosphor/initrdscripts code from gBMC. Google-Bug-Id: 179618491 Upstream: 1182879e906e67ca171b21c1eaa4027f9d162e49 Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: I810f3a80d635d2c3a38fcb1db7ee4c396ae2d7bb
Diffstat (limited to 'meta-google/recipes-phosphor')
-rw-r--r--meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs.bbappend20
-rw-r--r--meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/rwfs-clean-dev.patch29
-rw-r--r--meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/whitelist6
-rw-r--r--meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/whitelist.dev1
4 files changed, 56 insertions, 0 deletions
diff --git a/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs.bbappend b/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs.bbappend
new file mode 100644
index 000000000..905a39a48
--- /dev/null
+++ b/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs.bbappend
@@ -0,0 +1,20 @@
+# This is needed to guarantee that our whitelist takes
+# precendence over the OpenBMC one
+FILESEXTRAPATHS_prepend_gbmc := "${THISDIR}/${PN}:"
+
+SRC_URI_append_gbmc_dev = " file://whitelist.dev"
+
+do_install_append_gbmc_dev() {
+ cat ${WORKDIR}/whitelist.dev >>${D}/whitelist
+}
+
+SRC_URI_append_gbmc_dev = " file://rwfs-clean-dev.patch"
+# Required for the clean-dev patch to detect version changes
+RDEPENDS_${PN}_append_gbmc_dev = " os-release"
+
+do_install_append_gbmc_prod() {
+ echo "clean-rwfs-filesystem" > ${D}/init-options-base
+ chmod 0644 ${D}/init-options-base
+}
+
+FILES_${PN}_append_gbmc_prod = " /init-options-base"
diff --git a/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/rwfs-clean-dev.patch b/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/rwfs-clean-dev.patch
new file mode 100644
index 000000000..7631c85ce
--- /dev/null
+++ b/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/rwfs-clean-dev.patch
@@ -0,0 +1,29 @@
+diff --git a/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh b/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-init.sh
+index 62be89f039..689fbea5bf 100644
+--- a/obmc-init.sh
++++ b/obmc-init.sh
+@@ -275,6 +275,14 @@ then
+ fi
+ fi
+
++# Ensure that we clean our rwfs on version change
++if mount $rwdev $rwdir -t $rwfst -o $rwopts; then
++ if ! cmp "$rwdir"/os-release /etc/os-release 2>/dev/null; then
++ echo "RWFS from older BMC version, cleaning"
++ touch $trigger
++ fi
++ umount "$rwdir"
++fi
+ if grep -w clean-rwfs-filesystem $optfile
+ then
+ echo "Cleaning of read-write overlay filesystem requested."
+@@ -399,6 +407,9 @@ HERE
+ debug_takeover "$msg"
+ fi
+
++# Keep track of the last version to use this rwfs
++cp /etc/os-release "$rwdir"/os-release
++
+ rm -rf $work
+ mkdir -p $upper $work
+
diff --git a/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/whitelist b/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/whitelist
new file mode 100644
index 000000000..a2244cca8
--- /dev/null
+++ b/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/whitelist
@@ -0,0 +1,6 @@
+/etc/dropbear/dropbear_rsa_host_key
+/etc/hostname
+/etc/machine-id
+/etc/systemd/network
+/var/google
+/var/lib/phosphor-inventory-manager
diff --git a/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/whitelist.dev b/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/whitelist.dev
new file mode 100644
index 000000000..89dd3bb6d
--- /dev/null
+++ b/meta-google/recipes-phosphor/initrdscripts/obmc-phosphor-initfs/whitelist.dev
@@ -0,0 +1 @@
+/home/root