-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build_sysext script to enable sysext builds in the OS image build process #920
Conversation
A problem with installing regular packages is that in many cases the software won't correctly work because only Edit: A great use case for this would be to build a Docker and containerd sysext to replace torcx. |
Build action triggered: https://github.com/flatcar/scripts/actions/runs/5424483460 |
3b88463
to
aa1a662
Compare
3ac90c4
to
f786da5
Compare
@krishjainx Please try running the build two times in a row to make sure things don't break when this is done. |
Could you also make the script executable with |
This and squash the commits |
I'd like to make a review before merging this, please. |
I think this should be addressed to some degree by the |
5590451
to
7fdeb7d
Compare
Squashed 🐛 s and squashed commits |
I'm currently trying to use this script to build OEM sysexts, just to see if we can do it. I think I'll want more changes, mostly related to the BUILD_DIR stuff. You can see my branch here: https://github.com/flatcar/scripts/commits/krnowak/test-new-oem-script (ignore the fact that the commits are made by Flatcar Buildbot, apparently I messed up my git config :) ). The changes in the script that I have made are here: 72d2b62 |
Ok cool. Just these changes?
…On Fri, Jun 30, 2023, 5:05 PM Krzesimir Nowak ***@***.***> wrote:
I'm currently trying to use this script to build OEM sysexts, just to see
if we can do it. I think I'll want more changes, mostly related to the
BUILD_DIR stuff. You can see my branch here:
https://github.com/flatcar/scripts/commits/krnowak/test-new-oem-script
(ignore the fact that the commits are made by Flatcar Buildbot, apparently
I messed up my git config :) ). The changes in the script that I have made
are here: 72d2b62
<72d2b62>
—
Reply to this email directly, view it on GitHub
<#920 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AR4RDLIP2WY6QE6Z6TYZ5GLXN3TL5ANCNFSM6AAAAAAZGUVG34>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I think I'll let you know on Monday - the build is currently running on our Jenkins instance. |
cool :)
…On Fri, Jun 30, 2023, 5:23 PM Krzesimir Nowak ***@***.***> wrote:
Ok cool. Just these changes?
I think I'll let you know on Monday - the build is currently running on
our Jenkins instance.
—
Reply to this email directly, view it on GitHub
<#920 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AR4RDLLO3KTSYPQZNR7GATDXN3VPBANCNFSM6AAAAAAZGUVG34>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
bb0f930
to
eef4391
Compare
Included a script to enable generating systemd-sysexts. Successfully tested sysext generation with a fresh Flatcar image (e.g., Python and Neofetch system extension). Part of my internship work. The current OS images we provide are not OK as base for flatcar specific sysext images: it lacks the package metadata and portage configuration, in order to keep end user OS image clean. This script retains this information and allows you to produce systemd-sysexts to extend the system. This script can be used to build a Flatcar sysext image. Recommended to run from image build folder. Signed-off-by: Krish Jain <kjain7@u.rochester.edu>
80b84be
to
6380a43
Compare
Build_sysext script to enable sysext builds in the OS image build process
Included a script to enable generating systemd-sysexts. Successfully tested sysext generation (manually; script refinement in progress) with a fresh Flatcar image (e.g., Python and Neofetch system extension). Part of my internship work.
Link to the related issue: Flatcar Issue #1052.
How to use
The current OS images we provide are not OK as base for flatcar specific sysext images: it lacks the package metadata and portage configuration, in order to keep end user OS image clean. This script retains this information and allows you to produce systemd-sysexts to extend the system. This script can be used to build a Flatcar sysext image. Recommended to run from image build folder.
Testing done
I have built multiple sysext images using the script and have been able to successfully extend a fresh upstream Flatcar image with packages such as Python, Neofetch, etc. I provided a Butane configuration similar to the one below, transpiled it to Ignition, and booted with it. I received a review and advice on how to make the script more robust and meet the demands of the Flatcar team.
Notes:
"I think this should be addressed to some degree by the --manglefs_script option" - @krnowak
Edit: A great use case for this would be to build a Docker and containerd sysext to replace torcx.