[Starlingx-discuss] enable pbr version
Saul Wold
sgw at linux.intel.com
Wed Apr 22 03:24:20 UTC 2020
Hi Again Yipeng,
I hope you are well, will you be able to continue working on PBR? Also
maybe you could join us at the Distro call [0] in your evening.
Sau!
[0]
https://wiki.openstack.org/wiki/Starlingx/Meetings#6am_Pacific_-_Distro_Non-OpenStack_Team_Call
On 4/14/20 9:42 AM, Saul Wold wrote:
> 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