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@linux.intel.com>; Date: Wed, Apr 8, 2020 02:58 AM To: "starlingx-discuss"<starlingx-discuss@lists.starlingx.io>; "何义鹏"<yipeng.he@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@linux.intel.com>; > *Date: * Sat, Mar 28, 2020 07:02 AM > *To: * "何义鹏"<yipeng.he@jitstack.com>; "Penney, > Don"<Don.Penney@windriver.com>; "Scott > Little"<scott.little@windriver.com>; "Miller, > Frank"<Frank.Miller@windriver.com>; > *Cc: * "曹明晓"<cherish.cao@jitstack.com>; "杨永金" > <wesley.yang@jitstack.com>; "桂来军"<helen.gui@jitstack.com>; > "starlingx-discuss"<starlingx-discuss@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.h... > > > 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@windriver.com>; > > *Date: * Wed, Mar 25, 2020 10:11 PM > > *To: * "何义鹏"<yipeng.he@jitstack.com>; "Saul > > Wold(sgw@linux.intel.com)"<sgw@linux.intel.com>; > > *Cc: > > > * "'starlingx-discuss@lists.starlingx.io'(starlingx-discuss@lists.starlingx.io)"<starlingx-discuss@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@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@windriver.com>; > > > > *Date: * Wed, Mar 25, 2020 04:24 AM > > > > *To: * "Saul Wold"<sgw@linux.intel.com>; "何义鹏" > <yipeng.he@jitstack.com>; > > > > *Cc: * "桂来军"<helen.gui@jitstack.com>; "杨永金" > > <wesley.yang@jitstack.com>; "曹明晓"<cherish.cao@jitstack.com>; > > "starlingx-discuss"<starlingx-discuss@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@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@lists.starlingx.io > >> http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss > >> > > > > _______________________________________________ > > Starlingx-discuss mailing list > > Starlingx-discuss@lists.starlingx.io > > http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss > > > > > > _______________________________________________ > > Starlingx-discuss mailing list > > Starlingx-discuss@lists.starlingx.io > > http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss > > > > _______________________________________________ > Starlingx-discuss mailing list > Starlingx-discuss@lists.starlingx.io > http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss >