*** persia has quit IRC | 02:52 | |
*** persia has joined #baserock | 02:58 | |
perryl | vgrade: i'm hoping your issue was resolved, but i'll make sure to update the README with instructions for using a dummy cache server, sorry about that! | 06:51 |
---|---|---|
*** toscalix has joined #baserock | 07:17 | |
*** ctbruce has joined #baserock | 07:27 | |
*** fay_ has joined #baserock | 07:27 | |
*** jonathanmaw has joined #baserock | 07:43 | |
*** rdale has joined #baserock | 07:55 | |
*** rdale has quit IRC | 07:59 | |
*** anahuelamo has joined #baserock | 08:02 | |
*** persia has quit IRC | 08:19 | |
*** rdale has joined #baserock | 08:25 | |
*** persia has joined #baserock | 08:32 | |
*** CTtpollard has joined #baserock | 08:48 | |
*** persia has quit IRC | 08:53 | |
*** vgrade_w has joined #baserock | 08:55 | |
vgrade_w | perryl: yes, was able to setup the pipeline an view it in the browser | 08:57 |
*** persia has joined #baserock | 08:57 | |
vgrade_w | perryl: next step is to see if I can get it to run. Am planning to run through the tutorial first though | 08:58 |
*** edcragg has joined #baserock | 09:01 | |
*** rdale has quit IRC | 09:02 | |
perryl | vgrade_w: awesome! hope it all goes well :) | 09:03 |
*** ssam2 has joined #baserock | 09:13 | |
*** ChanServ sets mode: +v ssam2 | 09:13 | |
*** rdale has joined #baserock | 09:17 | |
*** locallycompact has joined #baserock | 09:23 | |
*** locallycompact has quit IRC | 09:27 | |
*** locallycompact has joined #baserock | 09:43 | |
*** toscalix has quit IRC | 09:45 | |
*** tiagogomes has joined #baserock | 09:51 | |
*** tiagogomes has quit IRC | 09:56 | |
*** toscalix has joined #baserock | 10:21 | |
*** anahuelamo has quit IRC | 10:27 | |
*** anahuelamo has joined #baserock | 10:28 | |
*** toscalix has quit IRC | 10:32 | |
*** ssam2 has quit IRC | 10:39 | |
paulsherwood | edcragg: i'm not meaning to be awkward on this manifest thing... | 11:31 |
paulsherwood | but if pedroalvarez has a usecase where the build-tool is not giving him what he needs, the build-tool could and should be changed imo | 11:31 |
edcragg | paulsherwood: both build tools? | 11:32 |
paulsherwood | pedroalvarez identified some problems in *ybd*, iiuc | 11:32 |
paulsherwood | i want them fixed | 11:32 |
paulsherwood | but i'm still unclear about what a system manifest actually is | 11:32 |
paulsherwood | can you paste an example output from the script you created, please? | 11:33 |
edcragg | paulsherwood: http://paste.ubuntu.com/16047176/ | 11:40 |
edcragg | lhs is cache-key, notice also appended version numbers in first column | 11:41 |
paulsherwood | cache-key is morph specific | 11:42 |
edcragg | that's the output of the original script, the output of the script in this change is identical | 11:42 |
edcragg | besides 0s for cache key | 11:42 |
paulsherwood | the original script is morph-specific | 11:42 |
edcragg | it was written into morph, yes | 11:43 |
paulsherwood | the cache-key your script is referring to/generating is morph-specific | 11:44 |
paulsherwood | it's no use for a build generated by ybd | 11:44 |
edcragg | ybd does have cache keys... | 11:45 |
edcragg | or you mean the format isn't compatible? | 11:45 |
paulsherwood | different format, different algorithm | 11:45 |
edcragg | yep | 11:45 |
paulsherwood | please, abandon your patch | 11:45 |
edcragg | i believe that is the best solution, for the problem that was given to me | 11:46 |
paulsherwood | i think you've misunderstood the problem, but i'm failing to explain that to you | 11:47 |
paulsherwood | maybe 'the problem that was given' was incorrectly specified | 11:47 |
*** toscalix has joined #baserock | 11:48 | |
pedroalvarez | I don't get it, so I won't be able to generate that manifest with ybd? | 11:48 |
pedroalvarez | I don't see why it's morph specific | 11:49 |
pedroalvarez | it's just stating: this artifact, comes from this repository, from this ref | 11:49 |
pedroalvarez | ybd has artifacts, and publish them, right? | 11:50 |
paulsherwood | yup | 11:50 |
paulsherwood | edcragg: please show an output from your script, that generates a manifest containing YBD artifacts | 11:50 |
paulsherwood | if it can do that, i'm the one who is misunderstanding what you've done | 11:50 |
* paulsherwood wonders how the script could possibly do this, without understanding ybd's cache-key calculation | 11:51 | |
paulsherwood | pedroalvarez: is it clear now? | 11:53 |
pedroalvarez | I get that point, yes | 11:54 |
edcragg | paulsherwood: http://paste.ubuntu.com/16047339/ | 11:54 |
paulsherwood | edcragg: everything in the ARTIFACT column is morph-specific. | 11:54 |
paulsherwood | pedroalvarez: while you're on, please can you point me to your original critique of the things you couldn't achieve with ybd for a release? | 11:55 |
paulsherwood | edcragg: 0000000.stratum.bsp-armv8l64-generic-devel is a morph-specific name | 11:55 |
edcragg | it's generated from YBD formatted metadata. the 0000000 can be omitted if needed | 11:56 |
paulsherwood | NO | 11:57 |
pedroalvarez | ... | 11:59 |
pedroalvarez | this is the email: https://listmaster.pepperfish.net/pipermail/baserock-dev-baserock.org/2016-March/013542.html | 11:59 |
pedroalvarez | edcragg: I think paul's point is that ybd puts the cache-key at the end of the artifact name? but i may be wrong on understanding this nonsense | 11:59 |
*** pedroalvarez has left #baserock | 12:00 | |
*** pedroalvarez has joined #baserock | 13:07 | |
*** ChanServ sets mode: +v pedroalvarez | 13:07 | |
paulsherwood | edcragg: ybd .meta files include cache-key as of artifact-version: 2 (https://github.com/devcurmudgeon/ybd/commit/e36be257df8b4a2e233c61a9d7dd8b64646f6273) | 13:09 |
paulsherwood | edcragg: i propose to make ybd generate a manifest at the same time as it does cache-keys | 13:12 |
paulsherwood | but as you say, there is some value in being able to generate the manifest *from* artifacts too | 13:13 |
paulsherwood | i think that's a different use-case | 13:13 |
edcragg | paulsherwood: i thought that was precisely this use case | 13:17 |
paulsherwood | edcragg: well, doing a release involves running a build... so if the build creates the manifest, the use-case seems to be satisfied, for me | 13:18 |
paulsherwood | the use-case of 'i have an artifact... what's in it' is more widely applicalbe than release | 13:19 |
edcragg | surely that is the information metadata is supposed to provide | 13:19 |
edcragg | the very information, in fact | 13:20 |
paulsherwood | ok... so why would anyone want to generate a 'manifest' except at release time, then? | 13:20 |
edcragg | because genivi required it at some point, in a form accessible to non baserock programmers | 13:21 |
paulsherwood | only for releases, iirc | 13:21 |
edcragg | yes | 13:22 |
edcragg | in that case the answer is, none that i know of | 13:22 |
edcragg | i misread | 13:22 |
rdale | the .meta files in a system in /baserock have all the info you need as far as i can see - you just need to read each .meta | 13:26 |
edcragg | rdale: yes, the script accesses this and converts it to a manifest | 13:26 |
rdale | in ybd? | 13:27 |
edcragg | build-system agnostically | 13:27 |
edcragg | (it converts both formats to a common one) | 13:27 |
rdale | i see | 13:27 |
* edcragg lunches | 13:30 | |
*** anahuelamo has quit IRC | 13:31 | |
*** toscalix has quit IRC | 13:34 | |
*** anahuelamo has joined #baserock | 13:36 | |
*** toscalix has joined #baserock | 13:56 | |
*** locallycompact has quit IRC | 14:12 | |
*** locallycompact has joined #baserock | 14:12 | |
*** astrophys has joined #baserock | 14:23 | |
*** locallycompact has quit IRC | 14:24 | |
*** locallycompact has joined #baserock | 14:25 | |
persia | The main reason I would want to generate a manifest for a non-release is to find out what is on some arbitrary system in the field, probably because I want to generate a development environment that would allow me to modify it safely. | 14:32 |
*** toscalix has quit IRC | 14:35 | |
edcragg | yep, a use case for the conversion script | 14:47 |
paulsherwood | persia: and you don't think that the metafiles in the baserock directory are sufficient? | 14:48 |
persia | The information is present, but not in consumable overview form. Creating a special tool to generate manifests from /baserock metadata is hard to remember as a user, so requires extra docs. | 14:51 |
persia | Therefore I want a build tool flag that generates the manifest. Extra points for being able to generate the development environment I need. | 14:51 |
paulsherwood | i'm seeing something odd on a project using ybd... | 14:52 |
paulsherwood | IOError: Source directory tree has file where directory expected: usr/share/groff/current | 14:52 |
paulsherwood | which is code taken from morph originally iirc... | 14:53 |
paulsherwood | https://github.com/devcurmudgeon/ybd/blob/master/ybd/utils.py#L175 | 14:53 |
paulsherwood | maybe not... i can't find anything like that in morph | 14:55 |
pedroalvarez | blame blames nowster | 14:56 |
paulsherwood | yup... but the weird thing is groff has been building fine for ages | 14:57 |
pedroalvarez | what change triggered this error? | 14:57 |
paulsherwood | if only it were that simple :) this is a ci system... seems the build works outside it, not inside it | 15:00 |
pedroalvarez | odd | 15:03 |
paulsherwood | yup... i'll let you know if/when we figure it out | 15:03 |
*** toscalix has joined #baserock | 15:28 | |
*** toscalix has quit IRC | 15:50 | |
*** vgrade_w has quit IRC | 15:57 | |
*** cosm has joined #baserock | 16:08 | |
*** ctbruce has quit IRC | 16:22 | |
*** jonathanmaw has quit IRC | 16:30 | |
*** CTtpollard has quit IRC | 16:32 | |
*** toscalix has joined #baserock | 16:58 | |
*** toscalix has quit IRC | 16:59 | |
*** anahuelamo has quit IRC | 17:03 | |
*** edcragg has quit IRC | 17:07 | |
*** locallycompact has quit IRC | 17:30 | |
*** cosm has quit IRC | 17:32 | |
*** gtristan has quit IRC | 17:39 | |
*** cosm has joined #baserock | 17:48 | |
*** gtristan has joined #baserock | 18:04 | |
*** rdale has quit IRC | 18:10 | |
*** edcragg has joined #baserock | 19:36 | |
*** edcragg has quit IRC | 19:47 | |
paulsherwood | 0 lrwxrwxrwx 1 root root 6 Apr 20 18:07 current -> 1.22.3 | 19:52 |
paulsherwood | so yup... usr/share/groff/current is a file... a link pointing to a directory | 19:52 |
paulsherwood | i wonder if the behaviour for this can be different in an x86_32 vm... | 19:59 |
paulsherwood | os.lstat(path): Perform the equivalent of an lstat() system call on the given path. Similar to stat(), but does not follow symbolic links. | 20:05 |
paulsherwood | On platforms that do not support symbolic links, this is an alias for stat() | 20:06 |
mwilliams_ct | Any way to check if your platform supports symlinks and get upset if not? | 20:07 |
mwilliams_ct | (I am missing much contextr) | 20:07 |
*** gtristan has quit IRC | 20:08 | |
paulsherwood | >>> os.lstat('./current') | 20:09 |
paulsherwood | posix.stat_result(st_mode=41471, st_ino=395140L, st_dev=11009, st_nlink=1, st_uid=0, st_gid=0, st_size=6L, st_atime=1461614803, st_mtime=1457820845, st_ctime=1461614780) | 20:09 |
paulsherwood | >>> os.stat('./current') | 20:09 |
paulsherwood | posix.stat_result(st_mode=16877, st_ino=394863L, st_dev=11009, st_nlink=6, st_uid=0, st_gid=0, st_size=4096L, st_atime=1461614780, st_mtime=1321009871, st_ctime=1461614780) | 20:10 |
paulsherwood | >>> import stat | 20:10 |
paulsherwood | >>> stat.S_ISDIR(41471) | 20:10 |
paulsherwood | False | 20:10 |
paulsherwood | >>> stat.S_ISDIR(16877) | 20:10 |
*** gtristan has joined #baserock | 20:11 | |
paulsherwood | the system supports symlinks, for sure | 20:13 |
mwilliams_ct | ack, seemed a bit ludicrous to think otherwise | 20:15 |
mwilliams_ct | I have to leg it, good luck | 20:15 |
paulsherwood | thanks ;) | 20:18 |
*** edcragg has joined #baserock | 20:34 | |
*** edcragg has quit IRC | 20:40 | |
rjek | Are you building on a file system that doesn't support symbolic links? | 20:46 |
*** tiagogomes has joined #baserock | 20:46 | |
paulsherwood | rjek: how would i know that? | 20:51 |
rjek | Which file system is it? | 20:51 |
rjek | :-) | 20:51 |
paulsherwood | how do i tell that? | 20:51 |
rjek | mount | 20:51 |
rjek | Perhaps previously the symlink was being dereferenced by another step and expanded into a real directory? | 20:54 |
rjek | But stat should follow the symlink and report the data for the node it points to | 20:55 |
*** gtristan has quit IRC | 20:56 | |
paulsherwood | http://paste.baserock.org/jehotipako | 20:57 |
paulsherwood | https://github.com/devcurmudgeon/ybd/commit/bd04031f3f558e49fe50f479fe05f2d2505d2fef seems to have got the build past the issue | 20:58 |
rjek | I assume you're building on one of the ext4 ones? | 21:00 |
rjek | Your fix is a bit unclear. You are calling lstat, which doesn't follow symlinks, and then assuming that if it is a link file, it will always point to a directory. | 21:03 |
rjek | Why not just use stat and have the issue disappear? | 21:03 |
rjek | Or am I missing something? | 21:03 |
rjek | (the problem is more complex than either of us give it credit here, as even though stat will follow the symlink and return data about what it points to rather than the link itself, there is also a race condition here that might be important from a security and reproducabilty standpoint) | 21:06 |
rjek | I don't know where in the build this is happening, but what if something changes where the link points to between you statting it and then acting? | 21:07 |
paulsherwood | nothing should change the link | 21:16 |
paulsherwood | this is the process of building system image from unpacked component iiuc | 21:17 |
* paulsherwood didn't write the code, and is assuming that nowster had some reason for using lstat rather than stat | 21:18 | |
paulsherwood | that may be a bad assumption of course | 21:18 |
rjek | You should ask him then :-) | 21:18 |
rjek | And demand more commentary in your review process, of course! | 21:19 |
paulsherwood | i would, but he's not here | 21:19 |
rjek | From what I've read of the ybd source it is often obvious what is being done, but the why can baffle. | 21:19 |
paulsherwood | maybe nowster decided to set the level of bafflement in his contributions, based on what he found in mine :) | 21:21 |
rjek | That matches his MO | 21:21 |
*** gtristan has joined #baserock | 21:21 | |
paulsherwood | gtristan: biff | 22:34 |
*** tiagogomes has quit IRC | 22:57 | |
gtristan | paulsherwood, ummm what happened ? | 23:00 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!