Hi --
At this point, I thought I'd send out an email with my current understanding of the
processes we need to add to the releng scripts for ostree, as well as some questions
regarding these compose scripts, specifically:
- buildbranched [
https://git.fedorahosted.org/cgit/releng/tree/scripts/buildbranched]
- buildrawhide [
https://git.fedorahosted.org/cgit/releng/tree/scripts/buildrawhide]
Disclaimer: I have a limited understanding of releng processes, so feel free to correct me
on anything. I'm simply hoping to help move along our ostree work faster.
It seems to me that we should add in the bulk of the ostree processes after the compose
process completes, but before the rsync. In buildbranched, this is at line 180. In
buildrawhide, this is at line 172. This would be where we'd init an ostree repo
somewhere like /srv/ostree/repo, use our treefile to run the compose (which captures RPMs
to build the tree), and then generate a summary of the repo with `ostree summary -u`. For
our purposes, the summary file resulting from this process would serve a comparable
purpose as the repomd.xml file we use for our "standard" builds. My thinking is
that these scripts could easily accomplish this process, and get the summary file to where
it needs to be for use with the MirrorManager metalink business that needs to be tackled
next.
That's my perception of what needs to be done after poking around. Next, some
questions:
1. n00b question: I'm not sure how what needs to go *in* an image is decided. In order
to run the ostree compose, we need to generate a treefile that contains -- among other
things -- a list of RPMs that need to be installed. What's the best way to get content
for that list?
2. The treefile also needs a branch name for the content. Any input on the naming scheme?
3. The treefile can also take a number of optional values. I'm not sure if any are
needed for this process, but they are listed here:
https://github.com/projectatomic/rpm-ostree/blob/master/doc/treefile.md Perhaps `gpg_key`,
`boot_location`, and/or `units`?
4. What's the best way for me to test the changes I make to the scripts? Can I set up
some sort of local build environment, or get access to a testing machine? Perhaps I should
just send a patch to someone or a list?
I think that's it for now. I can pop in with MirrorManager stuff after we get this
compose process working to the point that we're getting a good summary file.
-- David