diff --git a/.obs/workflows.yml b/.obs/workflows.yml index af47b5e2d..3d5ccc199 100644 --- a/.obs/workflows.yml +++ b/.obs/workflows.yml @@ -157,6 +157,10 @@ staging_build: source_project: home:defolos:BCI:CR:SLE-15-SP6 source_package: python-3.6-image target_project: home:defolos:BCI:CR:SLE-15-SP6:Staging + - branch_package: + source_project: home:defolos:BCI:CR:SLE-15-SP6 + source_package: sac-python-3.9-image + target_project: home:defolos:BCI:CR:SLE-15-SP6:Staging - branch_package: source_project: home:defolos:BCI:CR:SLE-15-SP6 source_package: distribution-image @@ -335,6 +339,9 @@ refresh_devel_BCI: - trigger_services: project: devel:BCI:SLE-15-SP6 package: python-3.6-image + - trigger_services: + project: devel:BCI:SLE-15-SP6 + package: sac-python-3.9-image - trigger_services: project: devel:BCI:SLE-15-SP6 package: distribution-image diff --git a/sac-python-3.9-image/Dockerfile b/sac-python-3.9-image/Dockerfile new file mode 100644 index 000000000..ab922262e --- /dev/null +++ b/sac-python-3.9-image/Dockerfile @@ -0,0 +1,58 @@ +# SPDX-License-Identifier: MIT + +# Copyright (c) 2024 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 +#!ExclusiveArch: aarch64 x86_64 +#!BuildTag: containers/python:3.9 +#!BuildTag: containers/python:3.9-%RELEASE% +#!BuildTag: containers/python:3 +#!BuildTag: containers/python:%%py39_ver%% +#!BuildName: containers-python-3.9 +#!BuildVersion: 15.6.3.9 +#!BuildRelease: 41 +FROM bci/bci-base:15.6 + +RUN set -euo pipefail; \ + zypper -n install --no-recommends python39-devel python39 python39-pip curl findutils gawk git-core procps lifecycle-data-sle-module-development-tools; \ + zypper -n clean; \ + rm -rf {/target,}/var/log/{alternatives.log,lastlog,tallylog,zypper.log,zypp/history,YaST2} + +# Define labels according to https://en.opensuse.org/Building_derived_containers +# labelprefix=com.suse.bci.python +LABEL org.opencontainers.image.title="SLE BCI Python 3.9 development" +LABEL org.opencontainers.image.description="Python 3.9 development container based on the SLE Base Container Image." +LABEL org.opencontainers.image.version="%%py39_ver%%" +LABEL org.opencontainers.image.url="https://apps.rancher.io/applications/python" +LABEL org.opencontainers.image.created="%BUILDTIME%" +LABEL org.opencontainers.image.vendor="SUSE LLC" +LABEL org.opencontainers.image.source="%SOURCEURL%" +LABEL org.opencontainers.image.ref.name="3.9-%RELEASE%" +LABEL org.opensuse.reference="dp.apps.rancher.io/containers/python:3.9-%RELEASE%" +LABEL org.openbuildservice.disturl="%DISTURL%" +LABEL com.suse.supportlevel="l3" +LABEL com.suse.supportlevel.until="2027-12-31 00:00:00" +LABEL com.suse.eula="sle-bci" +LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle#suse-linux-enterprise-server-15" +LABEL com.suse.release-stage="released" +# endlabelprefix +LABEL org.opencontainers.image.base.name="%BASE_REFNAME%" +LABEL org.opencontainers.image.base.digest="%BASE_DIGEST%" +LABEL io.artifacthub.package.readme-url="%SOURCEURL%/README.md" +ENV PYTHON_VERSION="%%py39_ver%%" +ENV PATH="$PATH:/root/.local/bin" +ENV PIP_VERSION="%%pip_ver%%" + +RUN set -euo pipefail; install -d -m 0755 /root/.local/bin; ln -s /usr/bin/python3.9 /usr/local/bin/python3; \ + ln -s /usr/bin/pydoc3.9 /usr/local/bin/pydoc diff --git a/sac-python-3.9-image/README.md b/sac-python-3.9-image/README.md new file mode 100644 index 000000000..e47e09cf8 --- /dev/null +++ b/sac-python-3.9-image/README.md @@ -0,0 +1,54 @@ +# Python 3.9 development container image + +![Redistributable](https://img.shields.io/badge/Redistributable-Yes-green)[![SLSA](https://img.shields.io/badge/SLSA_(v1.0)-Build_L3-Green)](https://documentation.suse.com/sbp/server-linux/html/SBP-SLSA4/) +[![Provenance: Available](https://img.shields.io/badge/Provenance-Available-Green)](https://documentation.suse.com/container/all/html/Container-guide/index.html#container-verify) + +## Description + +[Python](https://www.python.org/) is an interpreted, interactive, object-oriented, open-source programming language. It incorporates modules, exceptions, dynamic typing, high-level dynamic data types, and classes. It provides interfaces to many system calls, libraries, and various window systems, and it is extensible in C or C++. It is also usable as an extension language for applications that require programmable interfaces. + +## Usage + +To deploy an application, install dependencies, copy the sources, and configure the application's main script: + +```Dockerfile +FROM dp.apps.rancher.io/containers/python:3.9 + +WORKDIR /app + +COPY requirements.txt ./ +RUN pip install --no-cache-dir -r requirements.txt + +COPY . . + +CMD [ "python3", "./main-script.py" ] +``` + +Build and run the container image: + +```ShellSession +$ podman build -t my-python-app . +$ podman run -it --rm my-python-app +``` + +To run a single script inside a container, use the following command: + +```ShellSession +$ podman run --rm -v "$PWD":/app:Z -w /app dp.apps.rancher.io/containers/python:3.9 python3 script.py +``` + +## Additional tools + +The Python container image includes [pip](https://pip.pypa.io/), Python Development Headers, and Git. + +## 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 [SLE BCI](https://opensource.suse.com/bci/), a stable and redistributable foundation for software innovation. SLE BCI is enterprise-ready, and it comes with an option for support. + +See the [SLE BCI EULA](https://www.suse.com/licensing/eula/#bci) for further information. diff --git a/sac-python-3.9-image/_service b/sac-python-3.9-image/_service new file mode 100644 index 000000000..3715bf159 --- /dev/null +++ b/sac-python-3.9-image/_service @@ -0,0 +1,14 @@ + + + + + Dockerfile + %%py39_ver%% + python39-base + + + Dockerfile + %%pip_ver%% + python39-pip + + \ No newline at end of file diff --git a/sac-python-3.9-image/sac-python-3.9-image.changes b/sac-python-3.9-image/sac-python-3.9-image.changes new file mode 100644 index 000000000..8d052c195 --- /dev/null +++ b/sac-python-3.9-image/sac-python-3.9-image.changes @@ -0,0 +1,4 @@ +------------------------------------------------------------------- +Mon Sep 30 08:16:34 UTC 2024 - SUSE Update Bot + +- First version of the Python 3.9 development %%py39_ver%% BCI