Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package obs-service-kiwi_metainfo_helper for
openSUSE:Factory checked in at 2022-01-20 00:12:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/obs-service-kiwi_metainfo_helper (Old)
and /work/SRC/openSUSE:Factory/.obs-service-kiwi_metainfo_helper.new.1892
(New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "obs-service-kiwi_metainfo_helper"
Thu Jan 20 00:12:01 2022 rev:10 rq:946926 version:0.4
Changes:
--------
---
/work/SRC/openSUSE:Factory/obs-service-kiwi_metainfo_helper/obs-service-kiwi_metainfo_helper.changes
2021-06-24 18:22:35.800917714 +0200
+++
/work/SRC/openSUSE:Factory/.obs-service-kiwi_metainfo_helper.new.1892/obs-service-kiwi_metainfo_helper.changes
2022-01-20 00:12:33.690590157 +0100
@@ -1,0 +2,13 @@
+Mon Jan 17 09:57:02 UTC 2022 - Fabian Vogt <[email protected]>
+
+- Add test suite (test.sh, sles-release-15.4-150400.32.2.x86_64.rpm)
+- Fix SOURCEURL for multibuild DISTURLs
+- Set SOURCEURL also in chroot builds
+
+-------------------------------------------------------------------
+Thu Jan 13 09:32:09 UTC 2022 - Frederic Crozat <[email protected]>
+
+- Generate SOURCEURL based on DISTURL.
+- Bump version to 0.4
+
+-------------------------------------------------------------------
New:
----
sles-release-15.4-150400.32.2.x86_64.rpm
test.sh
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ obs-service-kiwi_metainfo_helper.spec ++++++
--- /var/tmp/diff_new_pack.xrRAk4/_old 2022-01-20 00:12:34.234590597 +0100
+++ /var/tmp/diff_new_pack.xrRAk4/_new 2022-01-20 00:12:34.242590603 +0100
@@ -1,7 +1,7 @@
#
# spec file for package obs-service-kiwi_metainfo_helper
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: obs-service-kiwi_metainfo_helper
-Version: 0.3
+Version: 0.4
Release: 0
Summary: Service for substituting various variables in build recipes
License: GPL-2.0-or-later
@@ -26,6 +26,10 @@
Source0: kiwi_metainfo_helper.service
Source1: kiwi_metainfo_helper
Source2: README
+# For %%check
+Source3: test.sh
+Source4: sles-release-15.4-150400.32.2.x86_64.rpm
+BuildRequires: diffutils
Requires: /usr/bin/find
Requires: /usr/bin/grep
Requires: /usr/bin/sed
@@ -42,10 +46,12 @@
%build
%install
+mkdir -p %{buildroot}%{_prefix}/lib/obs/service/
+install -m 0644 %{SOURCE0} %{buildroot}%{_prefix}/lib/obs/service/
+install -m 0755 %{SOURCE1} %{buildroot}%{_prefix}/lib/obs/service/
-mkdir -p %{buildroot}%{_prefix}/lib/obs/service
-install -m 0644 %{SOURCE0} %{buildroot}%{_prefix}/lib/obs/service
-install -m 0755 %{SOURCE1} %{buildroot}%{_prefix}/lib/obs/service
+%check
+sh %{SOURCE3}
%files
%doc README
++++++ README ++++++
--- /var/tmp/diff_new_pack.xrRAk4/_old 2022-01-20 00:12:34.306590655 +0100
+++ /var/tmp/diff_new_pack.xrRAk4/_new 2022-01-20 00:12:34.314590661 +0100
@@ -5,16 +5,18 @@
build recipe (.kiwi, Dockerfile, Chart.yaml) to replace placeholders with
build-specific metainfo.
-| Placeholder | Value
| Example
|
-|--------------------------------------|-----------------------------------------------
|------------------------------------------------------------------------------------------------|
-| %DISTURL% | The OBS dist url
|
obs://build.suse.de/SUSE:SLE-15:Update:CR/images/2951b67133dd6384cacb28203174e030-sles15-image
|
-| %RELEASE% | The OBS release number
(<cicnt\>.<bldcnt\>) | 4.2
|
-| %BUILDTIME% | $(date --utc +%FT%T.%NZ)
| 2018-10-30T09:19:02.074934628Z
|
-| %OS_VERSION_ID% | VERSION_ID in the os-release file
| 15
|
-| %OS_VERSION_ID_SP% | Like VERSION_ID, but with SP (SLE
only) | 15.0
|
-| %OS_PRETTY_NAME% | PRETTY_NAME in the os-release file
| SUSE Linux Enterprise Server 15 SP3 (Snapshot16)
|
-| %OS_VENDOR% | PRETTY_NAME up to first space
character | SUSE
|
-| %OS_PRETTY_NAME_DASHED% | PRETTY_NAME with dashes in place of
spaces | SUSE-Linux-Enterprise-Server-15-SP3-Snapshot-16
|
-| %OS_PRETTY_NAME_BEFORE_PAREN% | PRETTY_NAME up to the first open
parentheses | SUSE Linux Enterprise Server 15 SP3
|
-| %OS_PRETTY_NAME_BEFORE_PAREN_DASHED% | PRETTY_NAME up to first open paren
with dashes | SUSE-Linux-Enterprise-Server-15-SP3
|
+| Placeholder | Value
| Example
|
+|--------------------------------------|-----------------------------------------------
|-------------------------------------------------------------------------------------------------------------------------|
+| %DISTURL% | The OBS dist url
|
obs://build.opensuse.org/openSUSE:Factory/images/0f40c57dd619e1dff9e512949b6bca09-opensuse-tumbleweed-image
|
+| %SOURCEURL% | Source url for container recipe (OBS)
|
https://build.opensuse.org/package/show/openSUSE:Factory/opensuse-tumbleweed-image?rev=0f40c57dd619e1dff9e512949b6bca09
|
+| %SOURCEURL% | Source url for container recipe (IBS)
|
https://sources.suse.com/SUSE:SLE-15:Update:CR/sles15-image/2951b67133dd6384cacb28203174e030/
|
+| %RELEASE% | The OBS release number
(<cicnt\>.<bldcnt\>) | 4.2
|
+| %BUILDTIME% | $(date --utc +%FT%T.%NZ)
| 2018-10-30T09:19:02.074934628Z
|
+| %OS_VERSION_ID% | VERSION_ID in the os-release file
| 15
|
+| %OS_VERSION_ID_SP% | Like VERSION_ID, but with SP (SLE
only) | 15.0
|
+| %OS_PRETTY_NAME% | PRETTY_NAME in the os-release file
| SUSE Linux Enterprise Server 15 SP3 (Snapshot16)
|
+| %OS_VENDOR% | PRETTY_NAME up to first space
character | SUSE
|
+| %OS_PRETTY_NAME_DASHED% | PRETTY_NAME with dashes in place of
spaces | SUSE-Linux-Enterprise-Server-15-SP3-Snapshot-16
|
+| %OS_PRETTY_NAME_BEFORE_PAREN% | PRETTY_NAME up to the first open
parentheses | SUSE Linux Enterprise Server 15 SP3
|
+| %OS_PRETTY_NAME_BEFORE_PAREN_DASHED% | PRETTY_NAME up to first open paren
with dashes | SUSE-Linux-Enterprise-Server-15-SP3
|
++++++ kiwi_metainfo_helper ++++++
--- /var/tmp/diff_new_pack.xrRAk4/_old 2022-01-20 00:12:34.334590678 +0100
+++ /var/tmp/diff_new_pack.xrRAk4/_new 2022-01-20 00:12:34.338590680 +0100
@@ -34,6 +34,17 @@
fi
fi
+# generate %SOURCEURL% based on DISTURL with a special case for build.suse.de
+prj=$(echo ${DISTURL} | cut -d/ -f4)
+localpath=$(echo ${DISTURL} | cut -d/ -f6-)
+rev=$(echo ${localpath} | cut -d- -f1)
+packagename=$(echo ${localpath} | cut -d- -f2- | cut -d: -f1)
+if [[ "${DISTURL}" == obs://build.suse.de/* ]]; then
+ SOURCEURL="https://sources.suse.com/${prj}/${packagename}/${rev}/"
+else
+ SOURCEURL="https://$(echo ${DISTURL} | cut -d/
-f3)/package/show/${prj}/${packagename}?rev=${rev}"
+fi
+
# Print all rpm files which contain os-release
find_release_rpms() {
find ./repos -name \*-release\*.rpm | while read rpm; do
@@ -112,6 +123,7 @@
sed -i"" \
-e "s#%DISTURL%#${DISTURL}#g" \
+ -e "s#%SOURCEURL%#${SOURCEURL}#g" \
-e "s/%RELEASE%/${RELEASE}/g" \
-e "s/%BUILDTIME%/$(date --utc +%FT%T.%NZ)/g" "${files[@]}"
++++++ test.sh ++++++
#!/bin/sh
set -eu
tmpdir=$(mktemp -d)
trap 'rm -rf ${tmpdir}' EXIT
sourcedir="$(realpath "$(dirname $0)")"
script="${sourcedir}/kiwi_metainfo_helper"
cd $tmpdir
# Setup environment
mkdir -p ${tmpdir}/repos/
cp "${sourcedir}/sles-release-15.4-150400.32.2.x86_64.rpm" ${tmpdir}/repos/
# Mock "date"
export PATH=${tmpdir}:$PATH
cat >${tmpdir}/date <<'EOF'
#!/bin/sh
exec /usr/bin/date -d "2018-10-30T09:19:02.074934628Z" "$@"
EOF
chmod a+x ${tmpdir}/date
cat >.data <<EOF
DISTURL="obs://build.opensuse.org/openSUSE:Factory/images/0f40c57dd619e1dff9e512949b6bca09-opensuse-tumbleweed-image:docker"
RELEASE=4.2
RECIPEFILE=_service:foobar:Dockerfile
EOF
export BUILD_DIST=.dist
cat >Dockerfile <<EOF
DISTURL=%DISTURL%
SOURCEURL=%SOURCEURL%
RELEASE=%RELEASE%
BUILDTIME=%BUILDTIME%
OS_VERSION_ID=%OS_VERSION_ID%
OS_VERSION_ID_SP=%OS_VERSION_ID_SP%
OS_PRETTY_NAME=%OS_PRETTY_NAME%
OS_VENDOR=%OS_VENDOR%
OS_PRETTY_NAME_DASHED=%OS_PRETTY_NAME_DASHED%
OS_PRETTY_NAME_BEFORE_PAREN=%OS_PRETTY_NAME_BEFORE_PAREN%
OS_PRETTY_NAME_BEFORE_PAREN_DASHED=%OS_PRETTY_NAME_BEFORE_PAREN_DASHED%
EOF
bash "${script}"
diff -u Dockerfile - <<EOF
DISTURL=obs://build.opensuse.org/openSUSE:Factory/images/0f40c57dd619e1dff9e512949b6bca09-opensuse-tumbleweed-image:docker
SOURCEURL=https://build.opensuse.org/package/show/openSUSE:Factory/opensuse-tumbleweed-image?rev=0f40c57dd619e1dff9e512949b6bca09
RELEASE=4.2
BUILDTIME=2018-10-30T09:19:02.074934628Z
OS_VERSION_ID=15.4
OS_VERSION_ID_SP=15.4
OS_PRETTY_NAME=SUSE Linux Enterprise Server 15 SP4
OS_VENDOR=SUSE
OS_PRETTY_NAME_DASHED=SUSE-Linux-Enterprise-Server-15-SP4
OS_PRETTY_NAME_BEFORE_PAREN=SUSE Linux Enterprise Server 15 SP4
OS_PRETTY_NAME_BEFORE_PAREN_DASHED=SUSE-Linux-Enterprise-Server-15-SP4
EOF
# Now with a build.suse.de DISTURL
cat >.data <<EOF
DISTURL="obs://build.suse.de/SUSE:SLE-15-SP3:Update:CR/images/5f0a221b7877396cbf977205e64690d2-sles15-image"
RELEASE=4.2
RECIPEFILE=_service:foobar:Dockerfile
EOF
cat >Dockerfile <<EOF
DISTURL=%DISTURL%
SOURCEURL=%SOURCEURL%
EOF
bash "${script}"
diff -u Dockerfile - <<EOF
DISTURL=obs://build.suse.de/SUSE:SLE-15-SP3:Update:CR/images/5f0a221b7877396cbf977205e64690d2-sles15-image
SOURCEURL=https://sources.suse.com/SUSE:SLE-15-SP3:Update:CR/sles15-image/5f0a221b7877396cbf977205e64690d2/
EOF
# Now test without build data (osc chroot build) and that without %OS_*% it
doesn't need a release RPM
rm -r ./.data ./repos/
cat >Dockerfile <<EOF
DISTURL=%DISTURL%
SOURCEURL=%SOURCEURL%
RELEASE=%RELEASE%
BUILDTIME=%BUILDTIME%
EOF
bash "${script}"
diff -u Dockerfile - <<EOF
DISTURL=local
SOURCEURL=https://local/package/show/local/local?rev=local
RELEASE=0
BUILDTIME=2018-10-30T09:19:02.074934628Z
EOF