Providing the script in a zip file for anyone who couldn’t see the original shell script file attachment.
As a side note: I started following the README in stx-tools to try out the download utility, to hopefully glean a little more info about the LST files on my own. I setup a fresh repo yesterday afternoon, then
setup and launched the docker image this morning. The download fails:
done!!
finish 1st round of RPM downloading successfully!
ERROR: -------RPMs missing 4 in yumdownloader with L1 match ---------------
The failed RPMs are recorded:
$ cat centos_rpms_missing_L1.txt
epel-rpm-macros-7-18.noarch.rpm
python2-rpm-macros-3-18.el7.noarch.rpm
python-rpm-macros-3-18.el7.noarch.rpm
python-srpm-macros-3-18.el7.noarch.rpm
Seems odd to fail on these… so a repoquery to check:
$ repoquery -c StarlingX.repo --quiet epel-rpm-macros python2-rpm-macros python-rpm-macros python-srpm-macros
epel-rpm-macros-0:7-19.noarch
python-rpm-macros-0:3-21.el7.noarch
python-srpm-macros-0:3-21.el7.noarch
python2-rpm-macros-0:3-21.el7.noarch
Yep… versions don’t match. So these pkgs have been upversioned in the repos, and the older versions are not maintained in the repos. So the LST files would seem to be quickly out of date.
From: Penney, Don [mailto:Don.Penney@windriver.com]
Sent: Monday, July 16, 2018 2:22 PM
To: 'starlingx-discuss@lists.starlingx.io'
Subject: [Starlingx-discuss] Adding packages to build .lst files
Hi folks,
We’ve got some packages to add to the build, and I’m wondering if there’s some description of the various .lst files in stxtools/centos-mirror-tools. For example, how do you decide whether a package is listed in rpms_from_centos_repo.lst
vs rpms_from_centos_3rd_parties.lst?
I started writing a script to pull together a list of the dependencies based on Requires and BuildRequires. As I understand it, we need to add all such dependencies, recursively, to these .lst files. Using the StarlingX.repo config file
as an arg to repoquery, I get some packages overlapping with rpms_from_centos_3rd_parties.lst, however, so I’m hoping there’s some clear direction with these files. My script is finding hundreds of rpms to add to rpms_from_centos_repo.lst with its calls to
repoquery to resolve the dependencies, so either I’ve got lots of overlap and many of these need to go to the 3rdparty file, my repoquery approach for automating this is completely wrong, or these new packages are using a completely different set of dependencies
for the builds than anything else we’ve got.
I’ve attached the first draft of my script for anyone that’s curious.
Thanks,
Don.
Don Penney, Developer,
Wind River