[Starlingx-discuss] enable pbr version

Saul Wold sgw at linux.intel.com
Tue Apr 14 16:42:30 UTC 2020


Yipeng,

I hope you can join the Distro meeting in your evening tomorrow and we 
can disuses this issue.

Thanks

   Sau!


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



More information about the Starlingx-discuss mailing list