<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:250967064;
        mso-list-type:hybrid;
        mso-list-template-ids:1526920660 -576572810 135004163 135004165 135004161 135004163 135004165 135004161 135004163 135004165;}
@list l0:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:-;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-font-family:Calibri;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="FR-BE" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Hello<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US">We have an issue with the order used by Pulp to publish our RPMs.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">We are using a continuous integration process where we publish a new snapshot RPM with each commit, which means we have several versions of the same binary in our repo.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Each RPM is named with the pattern <rpm name>-<version>-<build>.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Which means we produce for instance:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">myrpm-0.0.1-1.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">myrpm-0.0.1-2.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">myrpm-0.0.1-3.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">myrpm-0.0.1-4.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">in our repo<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">The problem is that the “pulp-admin rpm repo publish run” command does not respect the build number ordering.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">[root@d0puppetmaster victorbuckservices]# pwd<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">/var/www/pub/yum/http/repos/victorbuckservices<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">[root@d0puppetmaster victorbuckservices]# ls -l vbackbone-datamanager-0.2.0-*
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">lrwxrwxrwx 1 apache apache 172 Jan  8 16:29 vbackbone-datamanager-0.2.0-840.noarch.rpm -> /var/lib/pulp/content/rpm/vbackbone-datamanager/0.2.0/840/noarch/48b449d6b741f6ffa899231fbf01eb1138fa2cd8461f0f0ffeba86cfb9dbab09/vbackbone-datamanager-0.2.0-840.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">lrwxrwxrwx 1 apache apache 172 Jan  8 16:29 vbackbone-datamanager-0.2.0-833.noarch.rpm -> /var/lib/pulp/content/rpm/vbackbone-datamanager/0.2.0/833/noarch/770e94499567267a76e1237bb2f73a79767d38bd9826e72820269aefa291110a/vbackbone-datamanager-0.2.0-833.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">lrwxrwxrwx 1 apache apache 172 Jan  8 16:29 vbackbone-datamanager-0.2.0-832.noarch.rpm -> /var/lib/pulp/content/rpm/vbackbone-datamanager/0.2.0/832/noarch/ca9bf712fcf499391594877103caae1faf8428f2c58a1a59afe7324fbda6dfd8/vbackbone-datamanager-0.2.0-832.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">lrwxrwxrwx 1 apache apache 172 Jan  8 16:29 vbackbone-datamanager-0.2.0-829.noarch.rpm -> /var/lib/pulp/content/rpm/vbackbone-datamanager/0.2.0/829/noarch/9a98ff8308765ff6218d78df1a6f066c35bc32516264ce292bc2fac827a7867d/vbackbone-datamanager-0.2.0-829.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">lrwxrwxrwx 1 apache apache 172 Jan  8 16:29 vbackbone-datamanager-0.2.0-728.noarch.rpm -> /var/lib/pulp/content/rpm/vbackbone-datamanager/0.2.0/728/noarch/11874a76ddcaed2da0d87f67925f7e025a590749cd9adb1a9f8794e878acffb2/vbackbone-datamanager-0.2.0-728.noarch.rpm<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Look at the “build” part of the RPM name, ls –rtl does not order them sequentially, which means the publish command did not take in account the time at which they were uploaded.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Furthermore, I’ve been digging into the following files<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">/repodata/*-filelists.xml.gz<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">/repodata/*-other.xml.gz<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">/repodata/*-primary.xml.gz<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">/repodata/*-updateinfo.xml.gz<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">and I cannot find the latest uploaded RPM in these files.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Can you explain either:<o:p></o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><![if !supportLists]><span lang="EN-US"><span style="mso-list:Ignore">-<span style="font:7.0pt "Times New Roman"">       
</span></span></span><![endif]><span lang="EN-US">How the publish command could meet my requirement?<o:p></o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><![if !supportLists]><span lang="EN-US"><span style="mso-list:Ignore">-<span style="font:7.0pt "Times New Roman"">       
</span></span></span><![endif]><span lang="EN-US">How the repodata files are generated ?<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Many thanks for your help<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Fred<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>