Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ruby-4.0-image for openSUSE:Factory
checked in at 2026-09-16 17:44:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ruby-4.0-image (Old)
and /work/SRC/openSUSE:Factory/.ruby-4.0-image.new.383539 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ruby-4.0-image"
Wed Sep 16 17:44:12 2026 rev:7 rq:1378212 version:unknown
Changes:
--------
--- /work/SRC/openSUSE:Factory/ruby-4.0-image/ruby-4.0-image.changes
2026-08-29 17:43:14.121898785 +0200
+++
/work/SRC/openSUSE:Factory/.ruby-4.0-image.new.383539/ruby-4.0-image.changes
2026-09-16 17:48:08.792561386 +0200
@@ -1,0 +2,5 @@
+Tue Sep 15 17:40:03 UTC 2026 - SUSE Update Bot <[email protected]>
+
+- Split the image into base and micro variants
+
+-------------------------------------------------------------------
Old:
----
README.md
New:
----
Dockerfile.base
Dockerfile.micro
README.base.md
README.micro.md
_multibuild
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ Dockerfile ++++++
--- /var/tmp/diff_new_pack.eGv0sg/_old 2026-09-16 17:48:10.148618023 +0200
+++ /var/tmp/diff_new_pack.eGv0sg/_new 2026-09-16 17:48:10.158618440 +0200
@@ -1,61 +1,5 @@
-# SPDX-License-Identifier: MIT
+#!ExclusiveArch: do-not-build
+#!ForceMultiVersion
-# Copyright (c) 2026 SUSE LLC
-
-# All modifications and additions to the file contributed by third parties
-# remain the property of their copyright owners, unless otherwise agreed
-# upon.
-
-# The content of THIS FILE IS AUTOGENERATED and should not be manually
modified.
-# It is maintained by the BCI team and generated by
-# https://github.com/SUSE/BCI-dockerfile-generator
-
-# Please submit bugfixes or comments via https://bugs.opensuse.org/
-# You can contact the BCI team via https://github.com/SUSE/bci/discussions
-
-#!UseOBSRepositories
-
-#!BuildTag: opensuse/bci/ruby:4.0-%RELEASE%
-#!BuildTag: opensuse/bci/ruby:4.0
-#!BuildTag: opensuse/bci/ruby:4
-#!BuildTag: opensuse/bci/ruby:latest
-
-FROM opensuse/tumbleweed:latest
-
-RUN set -euo pipefail; \
- zypper -n install --no-recommends ruby4.0 ruby4.0-rubygem-bundler
ruby4.0-devel ruby4.0-rubygem-gem2rpm util-linux gcc-c++ sqlite3-devel make
timezone xz libexslt0 curl findutils gawk git-core procps util-linux
-
-# cleanup logs and temporary files
-RUN set -euo pipefail; zypper -n clean -a; \
- rm -rf
{/target,}/var/log/{alternatives.log,lastlog,suseconnect.log,tallylog,zypper.log,zypp/history,YaST2};
\
- rm -rf {/target,}/run/{zypp.pid,regenerate-initrd,systemd}; \
- rm -f {/target,}/etc/{shadow-,group-,passwd-,.pwd.lock}; \
- rm -f {/target,}/usr/lib/sysimage/rpm/.rpm.lock; \
- rm -f {/target,}/var/lib/zypp/AnonymousUniqueId; \
- rm -f {/target,}/var/lib/zypp/AutoInstalled; \
- rm -f {/target,}/var/cache/ldconfig/aux-cache
-
-# set the day of last password change to empty
-RUN set -euo pipefail; sed -i 's/^\([^:]*:[^:]*:\)[^:]*\(:.*\)$/\1\2/'
/etc/shadow
-
-# Define labels according to
https://en.opensuse.org/Building_derived_containers
-# labelprefix=org.opensuse.bci.ruby
-LABEL org.opencontainers.image.title="openSUSE Tumbleweed BCI Ruby 4.0"
-LABEL org.opencontainers.image.description="Ruby 4.0 container based on the
openSUSE Tumbleweed Base Container Image."
-LABEL org.opencontainers.image.version="4.0"
-LABEL org.opencontainers.image.url="https://www.opensuse.org"
-LABEL org.opencontainers.image.created="%BUILDTIME%"
-LABEL org.opencontainers.image.vendor="openSUSE Project"
-LABEL org.opencontainers.image.source="%SOURCEURL%"
-LABEL org.opencontainers.image.ref.name="4.0-%RELEASE%"
-LABEL
org.opensuse.reference="registry.opensuse.org/opensuse/bci/ruby:4.0-%RELEASE%"
-LABEL org.openbuildservice.disturl="%DISTURL%"
-LABEL
org.opensuse.lifecycle-url="https://en.opensuse.org/Lifetime#openSUSE_BCI"
-LABEL org.opensuse.release-stage="released"
-# endlabelprefix
-LABEL io.artifacthub.package.readme-url="%SOURCEURL_WITH(README.md)%"
-ENV LANG="C.UTF-8"
-ENV RUBY_MAJOR="%%rb_maj%%"
-ENV RUBY_VERSION="%%rb_ver%%"
-RUN set -euo pipefail; sed -i 's/--format-executable/--no-format-executable/'
/etc/gemrc
+# For this container we only build the Dockerfile.$flavor builds.
++++++ Dockerfile.base ++++++
# SPDX-License-Identifier: MIT
# Copyright (c) 2026 SUSE LLC
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon.
# The content of THIS FILE IS AUTOGENERATED and should not be manually modified.
# It is maintained by the BCI team and generated by
# https://github.com/SUSE/BCI-dockerfile-generator
# Please submit bugfixes or comments via https://bugs.opensuse.org/
# You can contact the BCI team via https://github.com/SUSE/bci/discussions
#!UseOBSRepositories
#!BuildTag: opensuse/bci/ruby:4.0-base-%RELEASE%
#!BuildTag: opensuse/bci/ruby:4.0-base
#!BuildTag: opensuse/bci/ruby:4
#!BuildTag: opensuse/bci/ruby:latest
#!BcntSyncTag: ruby-4.0-image
FROM opensuse/tumbleweed:latest
RUN set -euo pipefail; \
zypper -n install --no-recommends curl findutils gawk gcc-c++ git-core
libexslt0 make procps ruby4.0 ruby4.0-devel ruby4.0-rubygem-bundler
ruby4.0-rubygem-gem2rpm sed sqlite3-devel timezone util-linux util-linux xz
# cleanup logs and temporary files
RUN set -euo pipefail; zypper -n clean -a; \
rm -rf
{/target,}/var/log/{alternatives.log,lastlog,suseconnect.log,tallylog,zypper.log,zypp/history,YaST2};
\
rm -rf {/target,}/run/{zypp.pid,regenerate-initrd,systemd}; \
rm -f {/target,}/etc/{shadow-,group-,passwd-,.pwd.lock}; \
rm -f {/target,}/usr/lib/sysimage/rpm/.rpm.lock; \
rm -f {/target,}/var/lib/zypp/AnonymousUniqueId; \
rm -f {/target,}/var/lib/zypp/AutoInstalled; \
rm -f {/target,}/var/cache/ldconfig/aux-cache
# set the day of last password change to empty
RUN set -euo pipefail; sed -i 's/^\([^:]*:[^:]*:\)[^:]*\(:.*\)$/\1\2/'
/etc/shadow
# Define labels according to https://en.opensuse.org/Building_derived_containers
# labelprefix=org.opensuse.bci.ruby
LABEL org.opencontainers.image.title="openSUSE Tumbleweed BCI Ruby 4.0
development"
LABEL org.opencontainers.image.description="Ruby 4.0 development container
based on the openSUSE Tumbleweed Base Container Image."
LABEL org.opencontainers.image.version="4.0"
LABEL org.opencontainers.image.url="https://www.opensuse.org"
LABEL org.opencontainers.image.created="%BUILDTIME%"
LABEL org.opencontainers.image.vendor="openSUSE Project"
LABEL org.opencontainers.image.source="%SOURCEURL%"
LABEL org.opencontainers.image.ref.name="4.0-base-%RELEASE%"
LABEL
org.opensuse.reference="registry.opensuse.org/opensuse/bci/ruby:4.0-base-%RELEASE%"
LABEL org.openbuildservice.disturl="%DISTURL%"
LABEL org.opensuse.lifecycle-url="https://en.opensuse.org/Lifetime#openSUSE_BCI"
LABEL org.opensuse.release-stage="released"
# endlabelprefix
LABEL io.artifacthub.package.readme-url="%SOURCEURL_WITH(README.base.md)%"
ENV LANG="C.UTF-8"
ENV RUBY_MAJOR="%%rb_maj%%"
ENV RUBY_VERSION="%%rb_ver%%"
RUN set -euo pipefail; sed -i 's/--format-executable/--no-format-executable/'
/etc/gemrc
++++++ Dockerfile.micro ++++++
# SPDX-License-Identifier: MIT
# Copyright (c) 2026 SUSE LLC
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon.
# The content of THIS FILE IS AUTOGENERATED and should not be manually modified.
# It is maintained by the BCI team and generated by
# https://github.com/SUSE/BCI-dockerfile-generator
# Please submit bugfixes or comments via https://bugs.opensuse.org/
# You can contact the BCI team via https://github.com/SUSE/bci/discussions
#!UseOBSRepositories
#!BuildTag: opensuse/bci/ruby:4.0-micro-%RELEASE%
#!BuildTag: opensuse/bci/ruby:4.0-micro
#!BcntSyncTag: ruby-4.0-image
#!FilterBaseContainerPkgs
FROM opensuse/bci/bci-micro:latest AS target
FROM opensuse/tumbleweed:latest AS builder
COPY --from=target / /target
RUN set -euo pipefail; \
export PERMCTL_ALLOW_INSECURE_MODE_IF_NO_PROC=1 SOURCE_DATE_EPOCH=0; \
zypper -n --installroot /target --gpg-auto-import-keys install
--no-recommends libexslt0 ruby4.0 ruby4.0-rubygem-gem2rpm sed timezone
util-linux xz
# cleanup logs and temporary files
RUN set -euo pipefail; zypper -n --installroot /target clean -a; \
t=$(mktemp -d); mv /target/usr/lib/sysimage/rpm/Packages.db $t; rpmdb
--rebuilddb --dbpath=$t; \
rm /target/usr/lib/sysimage/rpm/*.db && install -m 0644 $t/Packages.db
/target/usr/lib/sysimage/rpm/; \
rm -rf
{/target,}/var/log/{alternatives.log,lastlog,suseconnect.log,tallylog,zypper.log,zypp/history,YaST2};
\
rm -rf {/target,}/run/{zypp.pid,regenerate-initrd,systemd}; \
rm -f {/target,}/etc/{shadow-,group-,passwd-,.pwd.lock}; \
rm -f {/target,}/usr/lib/sysimage/rpm/.rpm.lock; \
rm -f {/target,}/var/lib/zypp/AnonymousUniqueId; \
rm -f {/target,}/var/lib/zypp/AutoInstalled; \
rm -f {/target,}/var/cache/ldconfig/aux-cache
# set the day of last password change to empty
RUN set -euo pipefail; sed -i 's/^\([^:]*:[^:]*:\)[^:]*\(:.*\)$/\1\2/'
/target/etc/shadow
FROM opensuse/bci/bci-micro:latest
COPY --from=builder /target /
# Define labels according to https://en.opensuse.org/Building_derived_containers
# labelprefix=org.opensuse.bci.ruby
LABEL org.opencontainers.image.title="openSUSE Tumbleweed BCI Ruby 4.0 micro
runtime"
LABEL org.opencontainers.image.description="Ruby 4.0 micro runtime container
based on the openSUSE Tumbleweed Base Container Image."
LABEL org.opencontainers.image.version="4.0"
LABEL org.opencontainers.image.url="https://www.opensuse.org"
LABEL org.opencontainers.image.created="%BUILDTIME%"
LABEL org.opencontainers.image.vendor="openSUSE Project"
LABEL org.opencontainers.image.source="%SOURCEURL%"
LABEL org.opencontainers.image.ref.name="4.0-micro-%RELEASE%"
LABEL
org.opensuse.reference="registry.opensuse.org/opensuse/bci/ruby:4.0-micro-%RELEASE%"
LABEL org.openbuildservice.disturl="%DISTURL%"
LABEL org.opensuse.lifecycle-url="https://en.opensuse.org/Lifetime#openSUSE_BCI"
LABEL org.opensuse.release-stage="released"
# endlabelprefix
LABEL io.artifacthub.package.readme-url="%SOURCEURL_WITH(README.micro.md)%"
ENV LANG="C.UTF-8"
ENV RUBY_MAJOR="%%rb_maj%%"
ENV RUBY_VERSION="%%rb_ver%%"
RUN set -euo pipefail; sed -i 's/--format-executable/--no-format-executable/'
/etc/gemrc
++++++ README.base.md ++++++
# Ruby 4.0 development Container Image

## Description
[Ruby](https://www.ruby-lang.org/) is a dynamic, reflective, object-oriented,
general-purpose, open source programming language. It supports multiple
programming paradigms, including functional, object-oriented, and imperative.
It also has a dynamic type system and automatic memory management.
## Usage
To deploy an application, install dependencies, copy the sources, and configure
the application's main script:
```Dockerfile
FROM registry.opensuse.org/opensuse/bci/ruby:4.0-base
# displays an error message if Gemfile and Gemfile.lock are not in sync
RUN bundle config --global frozen 1
WORKDIR /app
COPY Gemfile Gemfile.lock ./
RUN bundle install
COPY . .
CMD [ "ruby", "./main-script.rb" ]
```
Build and run the container image:
```ShellSession
$ podman build -t my-ruby-app .
$ podman run -it --rm my-ruby-app
```
The example above assumes that there is a `Gemfile.lock` file in the
application directory.
To generate a `Gemfile.lock` file, use the following command:
```ShellSession
$ podman run --rm -v "$PWD":/app:Z -w /app
registry.opensuse.org/opensuse/bci/ruby:4.0-base bundle lock
```
To run a single script inside a container, use the following command:
```ShellSession
$ podman run --rm -v "$PWD":/app:Z -w /app
registry.opensuse.org/opensuse/bci/ruby:4.0-base ruby script.rb
```
## Encoding
The Ruby image sets the locale environment variable `LANG` to `C.UTF-8`.
## Additional tools
In addition to the standard openSUSE BCI development packages the following
additional tools are included in the image:
- gcc-c++
- make
- sqlite3-devel
- timezone
## Licensing
`SPDX-License-Identifier: MIT`
This documentation and the build recipe are licensed as MIT.
The container itself contains various software components under various open
source licenses listed in the associated
Software Bill of Materials (SBOM).
This image is based on [openSUSE
Tumbleweed](https://get.opensuse.org/tumbleweed/).
++++++ README.micro.md ++++++
# Ruby 4.0 micro runtime Container Image

## Description
[Ruby](https://www.ruby-lang.org/) is a dynamic, reflective, object-oriented,
general-purpose, open source programming language. It supports multiple
programming paradigms, including functional, object-oriented, and imperative.
It also has a dynamic type system and automatic memory management.
## Usage
To deploy an application, install dependencies, copy the sources, and configure
the application's main script:
```Dockerfile
FROM registry.opensuse.org/opensuse/bci/ruby:4.0-micro
# displays an error message if Gemfile and Gemfile.lock are not in sync
RUN bundle config --global frozen 1
WORKDIR /app
COPY Gemfile Gemfile.lock ./
RUN bundle install
COPY . .
CMD [ "ruby", "./main-script.rb" ]
```
Build and run the container image:
```ShellSession
$ podman build -t my-ruby-app .
$ podman run -it --rm my-ruby-app
```
The example above assumes that there is a `Gemfile.lock` file in the
application directory.
To generate a `Gemfile.lock` file, use the following command:
```ShellSession
$ podman run --rm -v "$PWD":/app:Z -w /app
registry.opensuse.org/opensuse/bci/ruby:4.0-micro bundle lock
```
To run a single script inside a container, use the following command:
```ShellSession
$ podman run --rm -v "$PWD":/app:Z -w /app
registry.opensuse.org/opensuse/bci/ruby:4.0-micro ruby script.rb
```
## Encoding
The Ruby image sets the locale environment variable `LANG` to `C.UTF-8`.
## Additional tools
In addition to the standard openSUSE BCI development packages the following
additional tools are included in the image:
- gcc-c++
- make
- sqlite3-devel
- timezone
## Licensing
`SPDX-License-Identifier: MIT`
This documentation and the build recipe are licensed as MIT.
The container itself contains various software components under various open
source licenses listed in the associated
Software Bill of Materials (SBOM).
This image is based on [openSUSE
Tumbleweed](https://get.opensuse.org/tumbleweed/).
++++++ _multibuild ++++++
<multibuild>
<package>base</package>
<package>micro</package>
</multibuild>
(No newline at EOF)
++++++ _service ++++++
--- /var/tmp/diff_new_pack.eGv0sg/_old 2026-09-16 17:48:10.373627420 +0200
+++ /var/tmp/diff_new_pack.eGv0sg/_new 2026-09-16 17:48:10.377627587 +0200
@@ -2,12 +2,23 @@
<service mode="buildtime" name="docker_label_helper"/>
<service mode="buildtime" name="kiwi_metainfo_helper"/>
<service mode="buildtime" name="replace_using_package_version">
- <param name="file">Dockerfile</param>
+ <param name="file">Dockerfile.base</param>
<param name="regex">%%rb_ver%%</param>
<param name="package">ruby4.0</param>
</service>
<service mode="buildtime" name="replace_using_package_version">
- <param name="file">Dockerfile</param>
+ <param name="file">Dockerfile.base</param>
+ <param name="regex">%%rb_maj%%</param>
+ <param name="package">ruby4.0</param>
+ <param name="parse-version">minor</param>
+ </service>
+ <service mode="buildtime" name="replace_using_package_version">
+ <param name="file">Dockerfile.micro</param>
+ <param name="regex">%%rb_ver%%</param>
+ <param name="package">ruby4.0</param>
+ </service>
+ <service mode="buildtime" name="replace_using_package_version">
+ <param name="file">Dockerfile.micro</param>
<param name="regex">%%rb_maj%%</param>
<param name="package">ruby4.0</param>
<param name="parse-version">minor</param>