*** locallycompact has quit IRC | 00:08 | |
*** locallycompact has joined #baserock | 06:42 | |
*** lachlan has joined #baserock | 07:49 | |
pedroalvarez | That error message it's very clear to me | 08:01 |
---|---|---|
pedroalvarez | xD | 08:01 |
*** franred has joined #baserock | 08:30 | |
*** paulwaters_ has joined #baserock | 08:44 | |
*** fay has joined #baserock | 09:00 | |
*** fay is now known as Guest27372 | 09:01 | |
*** lachlan has quit IRC | 09:02 | |
*** gtristan has joined #baserock | 09:13 | |
*** jonathanmaw has joined #baserock | 09:20 | |
*** jude_ has joined #baserock | 09:27 | |
paulsherwood | jjardon: blame ybd? :-) | 09:44 |
jjardon | Not this time! ;) | 09:44 |
paulsherwood | lol | 09:47 |
paulsherwood | jjardon: are you going to FOSDEM? | 09:48 |
jjardon | Nope | 09:50 |
paulsherwood | awww :) | 09:51 |
paulsherwood | me neither | 09:51 |
*** ctbruce has joined #baserock | 10:04 | |
*** ctbruce has quit IRC | 10:23 | |
paulsherwood | jjardon: do you approve of https://gitlab.com/baserock/ybd/merge_requests/300/ ? | 10:24 |
paulsherwood | it does the manifest thing, but also bumps to 7 | 10:25 |
*** gtristan has quit IRC | 10:26 | |
jjardon | Can you separate the version 7 thing in another Mr, please? | 10:31 |
jjardon | I will try that branch today | 10:32 |
jonathanmaw | continuing my conundrum on rpms, I am not sure what to do when converting a definition's system-integration commands into %post commands in an RPM. (WIP merge request at https://gitlab.com/baserock/ybd/merge_requests/289). It looks like all system-integration commands only happen if the -misc products are included in the system that's being assembled. | 10:33 |
jonathanmaw | I am unsure whether RPMs should have all system-integration commands as %post commands in all products | 10:34 |
jonathanmaw | considering that RPMs are intended to be installed onto an extant system, rather than assembled once. | 10:36 |
*** gtristan has joined #baserock | 10:55 | |
paulsherwood | jjardon: yup will do | 11:04 |
paulsherwood | jonathanmaw: bad day to ask this, i think, many folks en route to brussels | 11:05 |
paulsherwood | SotK: can you help? | 11:05 |
franred | jonathanmaw, I see system-integration commands as a modification of the chroot/image you are going to deploy in your system. Not sure how you can mock up that with rpms, unless you launch these scripts first time the system boots as one off per application, i.e. systemd-unit which runs the operation once and never again | 11:08 |
jonathanmaw | franred: rpms have a %post section which will execute those commands immediately after the rpm is installed. | 11:10 |
jonathanmaw | rpms tend to use it for running ldconfig | 11:10 |
jonathanmaw | I think I'll have them only in their corresponding product. while it's probably more sensible to have ldconfig only run for the bins and libs products, that's probably something for the definitions to define rather than an educated guess in rpm generation. | 11:13 |
jonathanmaw | plus, it's easier to have it implemented in one way and changed when that doesn't match up than philosophize about all the possibilities first. | 11:14 |
franred | jonathanmaw, that makes sense to me | 11:16 |
* gtristan back... reading backlog... lets talk rpms a bit :) | 11:21 | |
jonathanmaw | ok, gtristan, what have I missed? | 11:21 |
gtristan | So, few problem off the top of my head for using system-integration commands for %post... one minor thing is we lack the ldconfig system-integration command (probably belongs with glibc) | 11:27 |
gtristan | Another is that various system integration commands are written with the intention of being run after depending components are installed | 11:28 |
gtristan | So for instance, we're gonna run things like fc-cache once when installing fontconfig, that's the natural way to do it with system-integration commands | 11:28 |
gtristan | but for an rpm, you want to do it with every font package you install/uninstall | 11:29 |
gtristan | Another problem is that we miss out %postun entirely | 11:29 |
gtristan | Ignoring the %postun cases (which are probably quite important especially for services, for instance when you want to upgrade your system to use a new service which replaces a different one, your old uninstalled service may leave symlink traces in the init system | 11:31 |
gtristan | ) | 11:31 |
gtristan | Ignoring that... one might be able to safely compound all of the system-integration commands from chunks one depends on... and say that "Everything I depend on must run system integration commands when I'm installed" | 11:32 |
gtristan | at the expense of some flash wear (redundant running of system integration commands) | 11:33 |
gtristan | jonathanmaw, but most safe I think, is to port over %post/%postun commands from existing spec files and encode them as separate metadata as system integration commands | 11:34 |
gtristan | while making a statement that system-integration commands are the minimum needed for a deployment of an atomically updating system (with reboots) | 11:34 |
*** squirrelking has joined #baserock | 11:39 | |
jonathanmaw | gtristan: ok. | 11:39 |
*** squirrelking has left #baserock | 11:39 | |
jonathanmaw | I'll summarise this conversation in the merge request and then I'm off for lunch | 11:39 |
*** jude_ has quit IRC | 12:11 | |
*** jude_ has joined #baserock | 12:25 | |
*** ctbruce has joined #baserock | 12:38 | |
*** gtristan has quit IRC | 13:19 | |
jonathanmaw | I guess I should have expected changing the definitions format to have changed all the cache keys (adding rpm-post-install and rpm-post-uninstall fields to chunk definitions). Oh well, time to write the bit that actually uses that information. | 14:17 |
jonathanmaw | hrm, looks like it wasn't a full rebuild. Don't know if I'm relieved or disappointed. | 14:47 |
paulsherwood | jonathanmaw: did you add these fields in *commands, or somewhere else? | 15:32 |
paulsherwood | cache-key is not psychic - it only includes commands specified in DEFAULTS iirc | 15:32 |
jonathanmaw | paulsherwood: I added them in the morph-fields section, instead of build-steps | 15:33 |
* paulsherwood wonders what morph-fields is | 15:33 | |
jonathanmaw | since they're not just a list of commands, they also specify which product those commands apply to | 15:34 |
jonathanmaw | so they're more like the system-integration field. | 15:34 |
paulsherwood | ack. i fear cache-key doesn't notice | 15:34 |
jonathanmaw | paulsherwood: it looks that way | 15:34 |
paulsherwood | :/ | 15:34 |
jonathanmaw | paulsherwood: chunks should be fine, and in this case the system artifact is fine, too (since it doesn't write the rpms inside the system artifact) | 15:55 |
jonathanmaw | I haven't looked, but perhaps it might be worth checking whether the system-integration commands are included in the system's cache key | 15:56 |
jonathanmaw | also, \o/ http://paste.baserock.org/qicejoleva | 15:56 |
jonathanmaw | postinstall and postuninstall added to the rpms | 15:57 |
paulsherwood | w00t! | 16:06 |
jonathanmaw | hrm, I'd like to make the rpm assembly fail early and gracefully if it doesn't have both `rpm` and `rpmbuild` in the target sysroot` Looking at sandbox.run_sandboxed(), I don't see how I can get it to inform me on whether `which rpm` failed | 16:07 |
jonathanmaw | it doesn't return anything, and looks like it swallows any exceptions that come from executing the command in the sandbox | 16:08 |
jonathanmaw | is there another command I should use? | 16:08 |
jonathanmaw | or would I be better off searching for the files in the chroot? | 16:08 |
* paulsherwood is thinking | 16:13 | |
*** jjardon_ has joined #baserock | 16:39 | |
*** ctbruce has quit IRC | 16:41 | |
*** franred has quit IRC | 16:46 | |
*** locallycompact has quit IRC | 17:11 | |
*** Guest27372 has quit IRC | 17:21 | |
*** jonathanmaw has quit IRC | 17:29 | |
*** cyndis has quit IRC | 17:56 | |
*** cyndis has joined #baserock | 17:56 | |
*** tiagogomes has quit IRC | 18:36 | |
*** gtristan has joined #baserock | 19:20 | |
*** gtristan has quit IRC | 22:32 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!