[CentOS-devel] Building a downstream CentOS Atomic Host

Tue May 5 12:31:23 UTC 2015
Ian McLeod <imcleod at redhat.com>

On 05/05/2015 03:00 AM, Karanbir Singh wrote:
> On 05/05/15 04:08, Ian McLeod wrote:
>> Apologies for the delayed progress here.  Some details below.
>>
>> On 04/22/2015 04:56 AM, Karanbir Singh wrote:
>>> On 04/17/2015 02:16 PM, Ian McLeod wrote:
>>>> https://github.com/imcleod/sig-atomic-buildscripts/tree/scratch/rhel-snapshot/rhel-scratch-snapshot
>>>>
>>>> Prior to the full RPM source drop being available, I'd like to at least
>>>> try some initial smoke test tree composes using the SIG content in CBS.
>>>>  I will attempt to start on this early next week.
>>>
>>> Johnny is going to work on the rpms today, we should have a repo with
>>> the binary built atomic branch content soon.
>>>
>>> With that in mind, do you have any thoughts on how best to setup the
>>> rest of the pipeline to get the lorax build run and then the actual box
>>> images and isos ?
>>>
>>> I was hoping to use the recently setup scripts and replace the repo
>>> configs to point at this new rpms content + base OS + Updates + Extras (
>>> so as to consume the upstream docker and deps ).
>>
>> I and jbrooks have both had success generating a working tree using the
>> JSON in the "downstream" branch of the SIG repo.  I've done this using
>> only the Base, updates, extras and the "cah" rebuild repo that Johnny
>> produced.  I'll PR these changes shortly.
>>
>> The only snag I'm encountering has to do with the version of anaconda
>> pulled into the installer.  The 7.1.1 Atomic install media is based on
>> an Anaconda version that is older than the RHEL 7.1 release Anaconda.
>>
>> Internally we generated installer media by pointing lorax at a repo that
>> intentionally masked out the 7.1 anaconda packages while preserving the
>> remainder of the 7.1 updates.  I've duplicated this locally using
>> reposync to produce an appropriate repo for lorax.  It seems to work.
> 
> cool!
> 
>> However, this temporary intermediate lorax repo step doesn't fit very
>> cleanly into the script workflow in the SIG repo, nor is it something
>> that needs to be done on an ongoing basis.  With this in mind, I wanted
>> to see if perhaps I could work with someone from the core team to spin
>> the 7.1.1 install media by hand and then focus on a merged/automated
>> approach going forward.
> 
> is that not achieved with just an exclude= in the repo def's ? if we
> need to run a createrepo with an -x to exclude from the repo side, we
> can do that as well. Typically, we snapshot the tree that goes into a
> build anyway.

I will doublecheck with Colin on this, but as best I can tell, the
"rpm-ostree-toolbox installer" input allows only repo URLs and package
name based excludes.  For example:

https://github.com/CentOS/sig-atomic-buildscripts/blob/master/config.ini#L52

If I can bend this to exclude just the newer anaconda, that would be ideal.

If not, as you say, creating an alternative view of the Base repo that
exludes them seems to work as well.

> 
> regards
>