flatcar-scripts/build_library
Kai Lueke b723d2f15a Ship /etc from /usr through an overlay mount
The existing tmpfile logic took care of folders that the ebuild keepdir
directive wanted to exist on the OS. However, files and symlinks were
not created, causing them to be missing if we didn't explicitly modify
the ebuild files in coreos-overlay to use tmpfiles or patching of
paths to be in /usr. We need a logic to provide /etc files from the
current /usr partition without getting stale. This can be done best
with an overlay mount which requires to keep the original /etc files
under /usr.
Move the final /etc folder of the image build to /usr/share/flatcar/etc
to serve as lower layer in the overlay. Also remove any state from the
rootfs to make sure that we don't rely on it when testing our images
before the release. What we get with an overlay mount is essentially a
similar behavior to a 3-way merge because as long as the user didn't
change the files, the old version is replaced with the new version and
as soon as the user did changes, that file is frozen and wins over the
provided old (in case of a rollback) or new versions from /usr. It does
not work on file lines but on whole file contents, yet that is also
what rpm-ostree does to my knowledge. Also, run tmpfiles once and do
the SELinux labeling to prevent files being created in the upperdir
because they were missing in the lowerdir, or because they had missing
SELinux labels.
2023-02-24 18:41:53 +09:00
..
board_options.sh build_library/board_options: Fix pkg_version function 2021-09-28 16:32:30 +02:00
build_image_util.sh Ship /etc from /usr through an overlay mount 2023-02-24 18:41:53 +09:00
catalyst_sdk.sh build_library/catalyst_sdk.sh: Try different way of picking python as default intepreter 2021-12-10 20:06:40 +01:00
catalyst_toolchains.sh catalyst_toolchains: don't touch the SDK 2021-06-25 10:37:21 +02:00
catalyst.sh *: Make catalyst and emerge verbose by default 2023-02-16 13:57:05 +01:00
check_root build_library/check_root: Print a target of the dangling symlink 2023-01-12 08:37:57 +01:00
configure_bootloaders.sh 2317.0.1 2019-11-07 19:40:01 +01:00
cros_vm_constants.sh Move cros_vm_constants to build_library 2021-08-27 14:20:54 +02:00
dev_container_util.sh build_library/dev_container_util.sh: Fix setting up portage 2023-02-21 08:43:14 +01:00
disk_layout.json Revert "Revert "disk_layout: use btrfs for the OEM partition"" 2021-08-03 10:50:06 +02:00
disk_util build_library/disk_util: use byte array for conversion 2021-08-27 17:25:34 +02:00
ebuild_aci_manifest.in Initial checkin of docker-aci build script 2017-03-01 14:59:43 -08:00
ebuild_aci_util.sh build_library: Enhance license info and store it on the image 2020-06-09 21:09:44 +02:00
extract-initramfs-from-vmlinuz.sh build_library: Generate content files for initrd too 2023-02-01 14:43:24 +01:00
gen_tmpfiles.py build_library: Convert python2 scripts to python3 2021-08-18 18:56:48 +02:00
generate_au_zip.py generate_au_zip: Remove useless line 2021-08-24 16:08:15 +02:00
generate_grub_hashes.py build_library: Fix getting integer from string 2021-08-18 19:01:51 +02:00
generate_kernel_hash.py build_library: Fix python script extension 2021-08-18 18:57:04 +02:00
grub_install.sh *: Make catalyst and emerge verbose by default 2023-02-16 13:57:05 +01:00
grub.cfg Use new website flatcar.org 2022-09-14 14:32:49 +02:00
menu.lst grub: the one bootloader to rule them all 2014-12-05 16:51:11 -08:00
modify_image_util.sh Allow specifying multiple compression formats 2022-03-07 12:01:21 +00:00
niftycloud_ovf.sh vm_image_util: changed niftycloud format to ovf 2014-12-18 17:22:51 +09:00
oem_aci_util.sh build_library: Enhance license info and store it on the image 2020-06-09 21:09:44 +02:00
parallels_pvs.sh build_library: set parallels build scripts as executable 2016-10-27 13:27:30 -07:00
prod_image_util.sh *: Make catalyst and emerge verbose by default 2023-02-16 13:57:05 +01:00
qemu_template.sh Make qemu_template.sh work on MacOS 2022-06-22 15:18:09 +02:00
release_util.sh ci-automation: Only store compressed images 2022-07-05 16:13:22 +02:00
set_lsb_release Use new website flatcar.org 2022-09-14 14:32:49 +02:00
template_interoute.ovf init commit of interoute oem build 2015-09-05 00:32:50 +01:00
template_vmware.ovf build_library/template_vmware.ovf: Newer OS type and hardware version 2020-07-09 12:19:23 +02:00
test_build_root fix(test_image_content): Improve /usr symlink and conflict tests. 2013-12-09 19:32:54 -08:00
test_image_content.sh build_library: remove GLSA 202105-22 from GLSA_ALLOWLIST 2022-11-24 09:16:43 +01:00
test_oem_pkgs *: Make catalyst and emerge verbose by default 2023-02-16 13:57:05 +01:00
toolchain_util.sh *: Drop the use of deprecated PORTDIR and PORTDIR_OVERLAY env vars 2023-02-20 17:10:26 +01:00
torcx_manifest.sh build_library/torcx_manifest.sh: list all component pkgs in sources_on_disk() 2022-01-14 16:00:51 +00:00
update_chroot_util.sh *: Expand short emerge flags and use bash arrays 2023-02-16 13:57:05 +01:00
virtualbox_ovf.sh virtualbox_ovf.sh: use virtio network interfaces 2014-11-07 16:16:03 -07:00
vm_image_util.sh *: Make catalyst and emerge verbose by default 2023-02-16 13:57:05 +01:00
write_hdd.sh build_library: set parallels build scripts as executable 2016-10-27 13:27:30 -07:00