Conversation
85a2e8e to
c7bf150
Compare
|
current status:
|
8d8f7e1 to
8803ab4
Compare
|
Blocked by |
901feb1 to
2cd1c0f
Compare
8ba23b5 to
fb28ee3
Compare
fb28ee3 to
3f2870f
Compare
310d675 to
d1775d0
Compare
802ceb3 to
46c5728
Compare
3f6d0e2 to
611a240
Compare
2d0706d to
6a732b5
Compare
Totktonada
left a comment
There was a problem hiding this comment.
Now I more or less understood what is going on with the package naming, thanks!
I pushed the fixup commit in order to clarify why extra care is needed for SuSE. I didn't verify it, so, please, test it thoroughly.
I tried to keep Release: 1%{dist} for usual distros, because this way RPM specs within source RPM packages are the same. This fact is not used anywhere, but maybe we'll deploy one source package and many per-distro built packages for one tarantool version to safe some disk space and network traffic. Have practically same source packages looks as the good property.
The only thing that I don't understand is how the Release: xxx spec: yyy syntax works. I simplified it to Release: yyy in the comment, because the observable behaviour (a package name that rpmbuild produces) looks the same if Release: yyy would be set. I decided to don't try to explain this part in the comment, because it is not clear for me and the description would be not clear so.
Please, also double-read each sentence of the commit message: whether they are actual. I see that even header 'Add zypper makefile for SuSE' is not actual anymore: we don't add any makefile here, right? Update commit message and PR header / description.
8b9e587 to
566d641
Compare
It is not accurate. In fact, it checks ID field within this file. |
566d641 to
a1c3111
Compare
Right, I've corrected the commit message. |
3edda3e to
4bad436
Compare
Implemented ability to build openSuSE using pack/rpm.mk makefile.
openSuSE detects by checking of ID field equal to 'opensuse-leap'
within "/etc/os-release" file.
Usual 'Release' RPM spec directive:
RPMRELEASE := $(RELEASE)%{dist}
where $(RELEASE) is '1' value and %{dist} is like '.el8' or '.fc31'.
Open Build Service (openSUSE) does not follow the usual approach - its
'Release' is like 'lp152.1.1', where:
- 'lp152' value is the SuSE OS name: 'lp' - opensuse-leap w/ version;
- the first '1' is $(RELEASE) value;
- the second '1' is the number of rebuilds.
We follow OBS way for openSUSE, because there is no %{dist} macro
defined and there are no recommendations for packaging w/o OBS:
RPMRELEASE := $(RPMDIST).$(RELEASE).1
where $(RPMDIST) sets according to "%{sle_version}" macro, like when
%{sle_version} equal to '150200' then RPMDIST is 'lp152', check:
https://en.opensuse.org/openSUSE:Packaging_for_Leap#RPM_Distro_Version_Macros
Added prebuild cleanup target rule to fix the issue with
broken repositories in zypper cache:
Media source 'http://download.opensuse.org/distribution/leap/15.2/repo/oss/' does not contain the desired medium
It refreshes zypper cache.
Also SuSE uses build tool:
"zypper source-install --build-deps-only --force-resolution --recommends"
Part of tarantool/tarantool#4562
Co-authored-by: Alexander Turenko <alexander.turenko@tarantool.org>
4bad436 to
4827a49
Compare
Implemented ability to build openSuSE using pack/rpm.mk makefile.
openSuSE detects by checking of ID field equal to 'opensuse-leap'
within "/etc/os-release" file.
Usual 'Release' RPM spec directive:
where $(RELEASE) is '1' value and %{dist} is like '.el8' or '.fc31'.
Open Build Service (openSUSE) does not follow the usual approach - its
'Release' is like 'lp152.1.1', where:
We follow OBS way for openSUSE, because there is no %{dist} macro
defined and there are no recommendations for packaging w/o OBS:
where $(RPMDIST) sets according to "%{sle_version}" macro, like when
%{sle_version} equal to '150200' then RPMDIST is 'lp152', check:
https://en.opensuse.org/openSUSE:Packaging_for_Leap#RPM_Distro_Version_Macros
Added prebuild cleanup target rule to fix the issue with
broken repositories in zypper cache:
Media source 'http://download.opensuse.org/distribution/leap/15.2/repo/oss/' does not contain the desired medium
It refreshes zypper cache.
Also SuSE uses build tool:
"zypper source-install --build-deps-only --force-resolution --recommends"
Part of tarantool/tarantool#4562
Co-authored-by: Alexander Turenko alexander.turenko@tarantool.org