<div><font><br></font></div><div><font>Hi Saul,</font></div><div><font><div><br></div><div>I'm sorry it took so long to recover your mail.</div><div><br></div><div>Recently, there was a problem when I modified according to the method you provided under patch.</div></font></div><div><includetail><div>I tried to change all the versions in the patch of starlingx-starboard to pbr_version.</div><div>But the result still failed to build iso.</div><div><br></div><div>yipeng.he!</div><div> </div><div style="font:Verdana normal 14px;color:#000;"><div style="FONT-SIZE: 12px;FONT-FAMILY: Arial Narrow;padding:2px 0 2px 0;">------------------ Original ------------------</div><div style="FONT-SIZE: 12px;background:#efefef;padding:8px;"><div id="menu_sender"><b>From: </b> "Saul Wold"<sgw@linux.intel.com>;</div><div><b>Date: </b> Wed, Apr 8, 2020 02:58 AM</div><div><b>To: </b> "starlingx-discuss"<starlingx-discuss@lists.starlingx.io>; "何义鹏"<yipeng.he@jitstack.com>; <wbr></div><div></div><div><b>Subject: </b> Re: [Starlingx-discuss] enable pbr version</div></div><div> </div><div style="position:relative;"><div id="tmpcontent_res"></div><br>Hi Yipeng,<br><br>Sorry for the delay in getting back to you, I was looking into the build <br>failure and trying understand how we handle the difference between the <br>PBR SemVer [0] and PEP440 [1]. Specifically when there is a "Pre" tag <br>like rc0, b1 such as 4.0.0.rc0. When PEP440 normalizes that semver tag<br>to create the egg-info versio it comes out as 4.0.0rc0.egg-info.<br><br>So we need to also change the spec files %files section for the egg-info <br>file to wild-card that file instead of having a specific version listed.<br><br>For example in the starlingx-dashboard spec file:<br><br>diff --git a/starlingx-dashboard/centos/starlingx-dashboard.spec <br>b/starlingx-dashboard/centos/starlingx-dashboard.spec<br>index 7fbee65..399a9bd 100644<br>--- a/starlingx-dashboard/centos/starlingx-dashboard.spec<br>+++ b/starlingx-dashboard/centos/starlingx-dashboard.spec<br>@@ -62,7 +62,7 @@ rm -rf $RPM_BUILD_ROOT<br>  %files<br>  %{python2_sitelib}/%{py_pkg_name}<br><br>-%{python2_sitelib}/%{py_pkg_name}-%{version}*.egg-info<br>+%{python2_sitelib}/%{py_pkg_name}-*.egg-info<br><br>  %{enabled_dir}<br>  %{stx_themes_dir}<br><br>And as discussed in Jeremy's email we should be adding the "Sem-Ver: <br>feature" in the commit message, just once per repo. See Bin's pending <br>commit in fault [2]. You will have to back and fix fault and other <br>pending commits with the wild-card change for the egg-info file in the <br>spec file.<br><br>Finally all PBR related reviews should have a<br>Depends-On: https://review.opendev.org/#/c/691632/<br><br>So it does not get merged before the enabling code in the build tools <br>merges.<br><br>Hope this clarifies things and gets the PBR work unblocked. I am going <br>through the reviews and trying to provide some additional review comments.<br>We can also talk about this tomorrow during the Distro call [3]<br><br>Sau!<br><br><br>[0] https://docs.openstack.org/pbr/3.0.0/semver.html<br>[1] https://www.python.org/dev/peps/pep-0440/<br>[2] https://review.opendev.org/#/c/691647/<br>[3]<br>On 3/30/20 6:52 PM, 何义鹏 wrote:<br>> <br>>   Saul!<br>> <br>> Thank you for your answer! But how should I use the semMem-ver tag?<br>> ------------------ Original ------------------<br>> *From: * "Saul Wold"<sgw@linux.intel.com>;<br>> *Date: * Sat, Mar 28, 2020 07:02 AM<br>> *To: * "何义鹏"<yipeng.he@jitstack.com>; "Penney, <br>> Don"<Don.Penney@windriver.com>; "Scott <br>> Little"<scott.little@windriver.com>; "Miller, <br>> Frank"<Frank.Miller@windriver.com>;<br>> *Cc: * "曹明晓"<cherish.cao@jitstack.com>; "杨永金" <br>> <wesley.yang@jitstack.com>; "桂来军"<helen.gui@jitstack.com>; <br>> "starlingx-discuss"<starlingx-discuss@lists.starlingx.io>;<br>> *Subject: * Re: [Starlingx-discuss] enable pbr version<br>> Yipeng,<br>> <br>> <br>> I replied the other day, wanting to confirm if you have any additional<br>> changes in your local git repo? It seems that we need to consider a<br>> couple of options to possibly "pre-tag" 4.0 or use the "Sem_Ver:<br>> feature" tag in a commit to move the pbr versioning forward.<br>> <br>> BUILD Team (Don, Scott, Frank):<br>> <br>> Here's the general issue, we tag on the release branches, not master<br>> (although we have a v3.0.0.rc0 tag on master), we need to either add a<br>> Sem_Ver: feature tag to increment version's major number, or add a<br>> pre-tag of the 4.0 release.<br>> <br>> Thoughts from the build team?  I think we discussed part of the before,<br>> but want to do a quick revisit of the thread back in Nov [1], I think we<br>> had agreed to use Sem_Ver but it's not in the email thread<br>> <br>> <br>> [0]<br>> http://lists.starlingx.io/pipermail/starlingx-discuss/2019-November/006790.html<br>> <br>> <br>> On 3/26/20 7:26 PM, 何义鹏 wrote:<br>>  ><br>>  > Yes, building the rpm of the starlingx dashboard is a necessary step for<br>>  > my build-iso.<br>>  ><br>>  > Maybe Saul can respond to the question that python builds allow several<br>>  > versions of components.<br>>  ><br>> Jeremy replied to this earlier in the week, the issue appears to be the<br>> way we tagged rc0, we might need to have change our tagging.  He also<br>> stated that the number of components is not a limiting factor.<br>> <br>> Sau!<br>>  > ------------------ Original ------------------<br>>  > *From: * "Penney, Don"<Don.Penney@windriver.com>;<br>>  > *Date: * Wed, Mar 25, 2020 10:11 PM<br>>  > *To: * "何义鹏"<yipeng.he@jitstack.com>; "Saul<br>>  > Wold(sgw@linux.intel.com)"<sgw@linux.intel.com>;<br>>  > *Cc:<br>>  > <br>> * "'starlingx-discuss@lists.starlingx.io'(starlingx-discuss@lists.starlingx.io)"<starlingx-discuss@lists.starlingx.io>; <br>> <br>>  ><br>>  > *Subject: * RE: Re:RE: [Starlingx-discuss] enable pbr version<br>>  ><br>>  > Please keep starlingx-discuss on the receiver list.<br>>  ><br>>  > You had indicated build-iso was failing, but the build.log you provided<br>>  > appears to be the RPM build log for starlingx-dashboard.<br>>  ><br>>  > Processing files: starlingx-dashboard-2.9999.9999.rc1.dev23-0.tis.noarch<br>>  ><br>>  > error: File not found:<br>>  > <br>> /builddir/build/BUILDROOT/starlingx-dashboard-2.9999.9999.rc1.dev23-0.tis.x86_64/usr/lib/python2.7/site-packages/starlingx_dashboard-2.9999.9999.rc1.dev23*.egg-info<br>>  ><br>>  > RPM build errors:<br>>  ><br>>  >      File not found:<br>>  > <br>> /builddir/build/BUILDROOT/starlingx-dashboard-2.9999.9999.rc1.dev23-0.tis.x86_64/usr/lib/python2.7/site-packages/starlingx_dashboard-2.9999.9999.rc1.dev23*.egg-info<br>>  ><br>>  > Child return code was: 1<br>>  ><br>>  > EXCEPTION: [Error()]<br>>  ><br>>  > Traceback (most recent call last):<br>>  ><br>>  >    File "/usr/lib/python3.6/site-packages/mockbuild/trace_decorator.py",<br>>  > line 95, in trace<br>>  ><br>>  >      result = func(*args, **kw)<br>>  ><br>>  >    File "/usr/lib/python3.6/site-packages/mockbuild/util.py", line 746,<br>>  > in do_with_status<br>>  ><br>>  >      raise exception.Error("Command failed: \n # %s\n%s" % (command,<br>>  > output), child.returncode)<br>>  ><br>>  > mockbuild.exception.Error: Command failed:<br>>  ><br>>  >   # bash --login -c /usr/bin/rpmbuild -bb --target x86_64 --nodeps<br>>  > /builddir/build/SPECS/starlingx-dashboard.spec<br>>  ><br>>  > Looking through the build.log, I see the following:<br>>  ><br>>  > Copying starlingx_dashboard.egg-info to<br>>  > <br>> build/bdist.linux-x86_64/wheel/starlingx_dashboard-2.9999.9999rc1.dev23-py2.7.egg-info<br>>  ><br>>  > So in the build, it’s creating the egg with the version set to<br>>  > 2.9999.9999rc1.dev23, while the %files is expecting it to be<br>>  > 2.9999.9999.rc1.dev23.<br>>  ><br>>  > Looking further through the build.log, there’s the following:<br>>  ><br>>  > + /usr/bin/python2 setup.py install -O1 --skip-build --root<br>>  > <br>> /builddir/build/BUILDROOT/starlingx-dashboard-2.9999.9999.rc1.dev23-0.tis.x86_64<br>>  ><br>>  > /usr/lib/python2.7/site-packages/setuptools/dist.py:355: UserWarning:<br>>  > Normalizing '2.9999.9999.rc1.dev23' to '2.9999.9999rc1.dev23'<br>>  ><br>>  >    normalized_version,<br>>  ><br>>  > running install<br>>  ><br>>  > Maybe the python build only allows 4 version components?<br>>  ><br>>  > *From:*何义鹏[mailto:yipeng.he@jitstack.com]<br>>  > *Sent:* Tuesday, March 24, 2020 9:59 PM<br>>  > *To:* Penney, Don<br>>  > *Subject:* Re:RE: [Starlingx-discuss] enable pbr version<br>>  ><br>>  > Hi Saul,<br>>  ><br>>  > I added the error log to the attachment. Do you need other files for<br>>  > analysis?<br>>  ><br>>  > Thank you for your help.<br>>  ><br>>  >     yipeng.he!<br>>  ><br>>  > ------------------ Original ------------------<br>>  ><br>>  > *From: * "Penney, Don"<Don.Penney@windriver.com>;<br>>  ><br>>  > *Date: * Wed, Mar 25, 2020 04:24 AM<br>>  ><br>>  > *To: * "Saul Wold"<sgw@linux.intel.com>; "何义鹏" <br>> <yipeng.he@jitstack.com>;<br>>  ><br>>  > *Cc: * "桂来军"<helen.gui@jitstack.com>; "杨永金"<br>>  > <wesley.yang@jitstack.com>; "曹明晓"<cherish.cao@jitstack.com>;<br>>  > "starlingx-discuss"<starlingx-discuss@lists.starlingx.io>;<br>>  ><br>>  > *Subject: * RE: [Starlingx-discuss] enable pbr version<br>>  ><br>>  > Hi Yipeng,<br>>  ><br>>  > Can you provide more info? What was the error you saw from build-iso?<br>>  ><br>>  ><br>>  > -----Original Message-----<br>>  > From: Saul Wold [mailto:sgw@linux.intel.com]<br>>  > Sent: Monday, March 23, 2020 6:45 PM<br>>  > To: 何义鹏<br>>  > Cc: 桂来军; 杨永金; 曹明晓; starlingx-discuss<br>>  > Subject: Re: [Starlingx-discuss] enable pbr version<br>>  ><br>>  ><br>>  > Hi Yipeng,<br>>  ><br>>  > I was out last week on vacation, so I am catching up now.<br>>  ><br>>  > I think you would have to investigate build-iso and associated scripts<br>>  > and tools to see if there is an awk, sed or some other command that is<br>>  > not parsing the extended version.  I have not investigated this further,<br>>  > that's my initial assessment.<br>>  ><br>>  > Can you be more specific about what the error is or provide a log file<br>>  > of the build-iso process?<br>>  ><br>>  > Thanks for working on this project.<br>>  ><br>>  >    Sau!<br>>  ><br>>  ><br>>  ><br>>  > On 3/19/20 12:21 AM, 何义鹏wrote:<br>>  >> Hello Saul<br>>  >><br>>  >> I'm Yipeng He from JITStack, and I'm taking over the tasks of PBR.<br>>  >> I encountered the following issue when trying to build iso:<br>>  >> It fails when the suffix of the version generated by the PBR tool ended<br>>  >> with number, for instance the building fails if the version id is<br>>  >> 2.999.9999.rc1.dev23,<br>>  >> and when I replaced it with 2.999.9999.rc1.dev, the ISO building was<br>>  >> successful.<br>>  >> I don't knwo why this happens, could please support and advice the<br>>  >> solution for this issue.<br>>  >><br>>  >><br>>  >> Yipeng.He<br>>  >><br>>  >> _______________________________________________<br>>  >> Starlingx-discuss mailing list<br>>  >> Starlingx-discuss@lists.starlingx.io<br>>  >> http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss<br>>  >><br>>  ><br>>  > _______________________________________________<br>>  > Starlingx-discuss mailing list<br>>  > Starlingx-discuss@lists.starlingx.io<br>>  > http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss<br>>  ><br>>  ><br>>  > _______________________________________________<br>>  > Starlingx-discuss mailing list<br>>  > Starlingx-discuss@lists.starlingx.io<br>>  > http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss<br>>  ><br>> <br>> _______________________________________________<br>> Starlingx-discuss mailing list<br>> Starlingx-discuss@lists.starlingx.io<br>> http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss<br>> <br></div></div><!--<![endif]--></includetail></div>