Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
isv:Rancher:Elemental:Staging
SL-Micro-rt-container
elemental-2.1.1.obscpio
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File elemental-2.1.1.obscpio of Package SL-Micro-rt-container
07070100000000000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000001500000000elemental-2.1.1/.obs07070100000001000081A40000000000000000000000016617A205000001CE000000000000000000000000000000000000001F00000000elemental-2.1.1/.obs/README.md# Open Build Service integration files This folder includes specific files to integrate with the [Open Build Service](https://build.opensuse.org) (OBS) by [openSUSE](https://www.opensuse.org). Includes the workflows definition file (`workflows.yml`) that defines actions for pull request, push tag and commit events. In addition it also includes any required spec file or Dockerfile, usually these are adapted to OBS and can't be used outside the OBS context. 07070100000002000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000002000000000elemental-2.1.1/.obs/dockerfile07070100000003000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000003400000000elemental-2.1.1/.obs/dockerfile/micro-baremetal-iso07070100000004000081A40000000000000000000000016617A20500000869000000000000000000000000000000000000003F00000000elemental-2.1.1/.obs/dockerfile/micro-baremetal-iso/Dockerfile# SPDX-License-Identifier: Apache-2.0 #!BuildName: build-baremetal-iso-image #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/baremetal-iso-image:latest #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/baremetal-iso-image:%VERSION% #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/baremetal-iso-image:%VERSION%-%RELEASE% #!BuildConstraint: hardware:disk:size unit=G 10 #!BuildConstraint: hardware:memory:size unit=G 16 #!UseOBSRepositories ARG SLMICRO_VERSION FROM suse/sl-micro/${SLMICRO_VERSION}/baremetal-os-container:latest AS os FROM suse/sl-micro/${SLMICRO_VERSION}/baremetal-os-container:latest AS builder WORKDIR /iso COPY manifest.yaml manifest.yaml COPY --from=os / rootfs # Prepare a busybox base RUN mkdir -p /busybox && rpm --initdb --root /busybox RUN zypper --installroot /busybox in --no-recommends -y busybox # Version value is taken form the elemental repository tags # Release value of this image and os image are unrelated # must be ...<flavor>.<arch>... for OBS RUN elemental --debug --config-dir . build-iso -o /output -n "sl-micro-%%SLMICRO_VERSION%%-baremetal.$(uname -m)-%VERSION%-Build%RELEASE%" dir:rootfs # Only keep the ISO as a result and busybox FROM scratch COPY --from=builder /busybox / COPY --from=builder /output /elemental-iso ARG SLMICRO_VERSION ARG BUILD_REPO=%%IMG_REPO%% ARG IMAGE_REPO=$BUILD_REPO/suse/sl-micro/%%SLMICRO_VERSION%%/baremetal-iso-image ARG IMAGE_TAG=%VERSION%-%RELEASE% # Define labels according to https://en.opensuse.org/Building_derived_containers # labelprefix=com.suse.sl.micro LABEL org.opencontainers.image.title="SUSE Linux Micro baremetal ISO" LABEL org.opencontainers.image.description="Includes the SUSE Linux Micro baremetal ISO" LABEL org.opencontainers.image.version="${IMAGE_TAG}" LABEL org.opencontainers.image.url="https://github.com/rancher/elemental" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opensuse.reference="${IMAGE_REPO}:${IMAGE_TAG}" LABEL org.openbuildservice.disturl="%DISTURL%" LABEL com.suse.supportlevel="l3" # endlabelprefix # By default run a shell ENTRYPOINT ["/usr/bin/busybox"] CMD ["sh"] 07070100000005000081A40000000000000000000000016617A20500000052000000000000000000000000000000000000004200000000elemental-2.1.1/.obs/dockerfile/micro-baremetal-iso/manifest.yamliso: bootloader-in-rootfs: true grub-entry-name: "SL Micro Baremetal Install" 07070100000006000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000003300000000elemental-2.1.1/.obs/dockerfile/micro-baremetal-os07070100000007000081A40000000000000000000000016617A20500000EB8000000000000000000000000000000000000003E00000000elemental-2.1.1/.obs/dockerfile/micro-baremetal-os/Dockerfile# SPDX-License-Identifier: Apache-2.0 # Define the names/tags of the container #!BuildName: SL-Micro-container #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/baremetal-os-container:latest #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/baremetal-os-container:%VERSION% #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/baremetal-os-container:%VERSION%-%RELEASE% #!BuildConstraint: hardware:disk:size unit=G 8 #!UseOBSRepositories ARG SLMICRO_VERSION FROM suse/sl-micro/${SLMICRO_VERSION}/base-os-container:latest # dummy zypper call to get elemental into the build context and extract %VERSION% from it via _service RUN zypper in --no-recommends -y systemd-presets-branding-Elemental elemental # extend -base with baremetal and usability packages RUN zypper in --no-recommends -y procps openssh openssh-server \ vim-small less kernel-firmware-all NetworkManager-wwan cryptsetup \ \ avahi bash-completion catatonit cni cni-plugins conmon conntrack-tools \ container-selinux ethtool fuse-overlayfs hdparm hostname iptables \ issue-generator jq keyutils lshw lsof lsscsi mdadm multipath-tools \ netcat-openbsd net-tools nfs-client \ nss-mdns open-iscsi open-vm-tools pciutils pciutils-ids podman policycoreutils \ procmail psmisc rpcbind runc selinux-policy selinux-policy-targeted \ selinux-tools slirp4netns strace sudo sysstat system-user-nobody \ timezone traceroute xtables-plugins ARG SLMICRO_VERSION ARG BUILD_REPO=%%IMG_REPO%% ARG IMAGE_REPO=$BUILD_REPO/suse/sl-micro/%%SLMICRO_VERSION%%/baremetal-os-container ARG IMAGE_TAG=%VERSION%-%RELEASE% # IMPORTANT: Setup elemental-release used for versioning/upgrade. The # values here should reflect the tag of the image being built # Also used by elemental-populate-labels RUN grep -v "IMAGE_REPO\|IMAGE_TAG\|IMAGE=\|TIMESTAMP\|GRUB_ENTRY_NAME" /etc/os-release > /tmp/os-release RUN mv /tmp/os-release /etc/os-release RUN echo IMAGE_REPO=\"${IMAGE_REPO}\" >> /etc/os-release && \ echo IMAGE_TAG=\"${IMAGE_TAG}\" >> /etc/os-release && \ echo IMAGE=\"${IMAGE_REPO}:${IMAGE_TAG}\" >> /etc/os-release && \ echo TIMESTAMP="`date +'%Y%m%d%H%M%S'`" >> /etc/os-release && \ echo GRUB_ENTRY_NAME=\"SUSE Linux Micro\" >> /etc/os-release # Define labels according to https://en.opensuse.org/Building_derived_containers # labelprefix=com.suse.sl.micro LABEL org.opencontainers.image.title="SUSE Linux Micro Baremetal OS Container" LABEL org.opencontainers.image.description="SUSE Linux Micro Baremetal OS - a containerized OS layer for Kubernetes." LABEL org.opencontainers.image.version="${IMAGE_TAG}" LABEL org.opencontainers.image.url="https://www.suse.com/products/micro/" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opencontainers.image.source="%SOURCEURL%" LABEL org.opensuse.reference="${IMAGE_REPO}:${IMAGE_TAG}" LABEL org.openbuildservice.disturl="%DISTURL%" LABEL com.suse.supportlevel="l3" LABEL com.suse.eula="sle-eula" LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle#suse-linux-enterprise-micro" LABEL com.suse.image-type="sl-micro" LABEL com.suse.release-stage="beta" # endlabelprefix # Ensure /tmp is mounted as tmpfs by default RUN if [ -e /usr/share/systemd/tmp.mount ]; then \ cp /usr/share/systemd/tmp.mount /etc/systemd/system; \ fi # Save some space RUN if [ -f /usr/bin/zypper ]; then zypper clean --all; fi # Save more space RUN rm -rf /var/log/update* && \ >/var/log/lastlog && \ rm -rf /boot/vmlinux* # Rebuild initrd to setup dracut with the boot configurations RUN elemental init --force elemental-rootfs,elemental-sysroot,grub-config,dracut-config,cloud-config-essentials,elemental-setup,boot-assessment 07070100000008000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000002F00000000elemental-2.1.1/.obs/dockerfile/micro-base-iso07070100000009000081A40000000000000000000000016617A2050000083C000000000000000000000000000000000000003A00000000elemental-2.1.1/.obs/dockerfile/micro-base-iso/Dockerfile# SPDX-License-Identifier: Apache-2.0 #!BuildName: build-base-iso-image #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/base-iso-image:latest #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/base-iso-image:%VERSION% #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/base-iso-image:%VERSION%-%RELEASE% #!BuildConstraint: hardware:disk:size unit=G 10 #!BuildConstraint: hardware:memory:size unit=G 16 #!UseOBSRepositories ARG SLMICRO_VERSION FROM suse/sl-micro/${SLMICRO_VERSION}/base-os-container:latest AS os FROM suse/sl-micro/${SLMICRO_VERSION}/baremetal-os-container:latest AS builder WORKDIR /iso COPY manifest.yaml manifest.yaml COPY --from=os / rootfs # Prepare a busybox base RUN mkdir -p /busybox && rpm --initdb --root /busybox RUN zypper --installroot /busybox in --no-recommends -y busybox # Version value is taken form the elemental repository tags # Release value of this image and os image are unrelated # must be ...<flavor>.<arch>... for OBS RUN elemental --debug --config-dir . build-iso -o /output -n "sl-micro-%%SLMICRO_VERSION%%-base.$(uname -m)-%VERSION%-Build%RELEASE%" dir:rootfs # Only keep the ISO as a result and busybox FROM scratch COPY --from=builder /busybox / COPY --from=builder /output /elemental-iso ARG SLMICRO_VERSION ARG BUILD_REPO=%%IMG_REPO%% ARG IMAGE_REPO=$BUILD_REPO/suse/sl-micro/%%SLMICRO_VERSION%%/base-iso-image ARG IMAGE_TAG=%VERSION%-%RELEASE% # Define labels according to https://en.opensuse.org/Building_derived_containers # labelprefix=com.suse.sl.micro LABEL org.opencontainers.image.title="SUSE Linux Micro base-ISO" LABEL org.opencontainers.image.description="Includes the SUSE Linux Micro base-ISO" LABEL org.opencontainers.image.version="${IMAGE_TAG}" LABEL org.opencontainers.image.url="https://github.com/rancher/elemental" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opensuse.reference="${IMAGE_REPO}:${IMAGE_TAG}" LABEL org.openbuildservice.disturl="%DISTURL%" LABEL com.suse.supportlevel="l3" # endlabelprefix # By default run a shell ENTRYPOINT ["/usr/bin/busybox"] CMD ["sh"] 0707010000000A000081A40000000000000000000000016617A2050000004D000000000000000000000000000000000000003D00000000elemental-2.1.1/.obs/dockerfile/micro-base-iso/manifest.yamliso: bootloader-in-rootfs: true grub-entry-name: "SL Micro Base Install" 0707010000000B000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000002E00000000elemental-2.1.1/.obs/dockerfile/micro-base-os0707010000000C000081A40000000000000000000000016617A2050000112E000000000000000000000000000000000000003900000000elemental-2.1.1/.obs/dockerfile/micro-base-os/Dockerfile# SPDX-License-Identifier: Apache-2.0 # Define the names/tags of the container #!BuildName: SL-Micro-base-container #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/base-os-container:latest #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/base-os-container:%VERSION% #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/base-os-container:%VERSION%-%RELEASE% #!BuildConstraint: hardware:disk:size unit=G 8 #!UseOBSRepositories ARG SLMICRO_VERSION FROM suse/sl-micro/${SLMICRO_VERSION}/toolbox:latest as host MAINTAINER SUSE LLC (https://www.suse.com/) RUN mkdir /osimage RUN rpm --initdb --root /osimage RUN zypper --installroot /osimage in --no-recommends -y filesystem # make system bootable # iputils: https://github.com/rancher/elemental/issues/1138 RUN zypper --installroot /osimage in --no-recommends -y grub2 shim dracut iputils kernel-default systemd bash #!ArchExclusiveLine: x86_64 RUN if [ `uname -m` = "x86-64" ]; then zypper --installroot /osimage in --no-recommends -y syslinux grub2-i386-pc grub2-x86_64-efi; fi # make dracut happy RUN zypper --installroot /osimage in --no-recommends -y squashfs NetworkManager-branding-SLE NetworkManager device-mapper iproute2 tar curl ca-certificates ca-certificates-mozilla # make ARM happy #!ArchExclusiveLine: aarch64 RUN if [ `uname -m` = "aarch64" ]; then zypper --installroot /osimage in -y grub2-arm64-efi raspberrypi-firmware raspberrypi-firmware-config raspberrypi-firmware-dt u-boot-rpiarm64; fi # bsc#1215134 #!ArchExclusiveLine: aarch64 RUN if [ `uname -m` = "aarch64" ]; then zypper --installroot /osimage in -y wireless-regdb; fi # make SUSE happy RUN zypper --installroot /osimage in --no-recommends -y SL-Micro-release systemd-presets-branding-Elemental btrfsmaintenance audit # make elemental-register happy RUN zypper --installroot /osimage in --no-recommends -y dmidecode lvm2 openssl # add elemental RUN zypper --installroot /osimage in --no-recommends -y elemental # end of mandatory package installs for SUSE Linux Micro # make derived containers possible RUN zypper --installroot /osimage in --no-recommends -y zypper FROM scratch as osimage COPY --from=host /osimage / ARG SLMICRO_VERSION ARG BUILD_REPO=%%IMG_REPO%% ARG IMAGE_REPO=$BUILD_REPO/suse/sl-micro/%%SLMICRO_VERSION%%/base-os-container ARG IMAGE_TAG=%VERSION%-%RELEASE% # IMPORTANT: Setup elemental-release used for versioning/upgrade. The # values here should reflect the tag of the image being built # Also used by elemental-populate-labels RUN echo IMAGE_REPO=\"${IMAGE_REPO}\" >> /etc/os-release && \ echo IMAGE_TAG=\"${IMAGE_TAG}\" >> /etc/os-release && \ echo IMAGE=\"${IMAGE_REPO}:${IMAGE_TAG}\" >> /etc/os-release && \ echo TIMESTAMP="`date +'%Y%m%d%H%M%S'`" >> /etc/os-release && \ echo GRUB_ENTRY_NAME=\"SUSE Linux Micro\" >> /etc/os-release # Define labels according to https://en.opensuse.org/Building_derived_containers # labelprefix=com.suse.sl.micro LABEL org.opencontainers.image.title="SUSE Linux Micro Base OS Container" LABEL org.opencontainers.image.description="Container image for SUSE Linux Micro Base - a containerized OS layer for Kubernetes." LABEL org.opencontainers.image.version="${IMAGE_TAG}" LABEL org.opencontainers.image.url="https://www.suse.com/products/micro/" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opencontainers.image.source="%SOURCEURL%" LABEL org.opensuse.reference="${IMAGE_REPO}:${IMAGE_TAG}" LABEL org.openbuildservice.disturl="%DISTURL%" LABEL com.suse.supportlevel="l3" LABEL com.suse.eula="sle-eula" LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle#suse-linux-enterprise-micro" LABEL com.suse.image-type="sl-micro" LABEL com.suse.release-stage="beta" # endlabelprefix # Make sure trusted certificates are properly generated RUN /usr/sbin/update-ca-certificates # Ensure /tmp is mounted as tmpfs by default RUN if [ -e /usr/share/systemd/tmp.mount ]; then \ cp /usr/share/systemd/tmp.mount /etc/systemd/system; \ fi # Save some space RUN zypper clean --all && \ rm -rf /var/log/update* && \ >/var/log/lastlog && \ rm -rf /boot/vmlinux* # Rebuild initrd to setup dracut with the boot configurations RUN elemental init --force elemental-rootfs,elemental-sysroot,grub-config,dracut-config,cloud-config-essentials,elemental-setup,boot-assessment 0707010000000D000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000002E00000000elemental-2.1.1/.obs/dockerfile/micro-kvm-iso0707010000000E000081A40000000000000000000000016617A20500000833000000000000000000000000000000000000003900000000elemental-2.1.1/.obs/dockerfile/micro-kvm-iso/Dockerfile# SPDX-License-Identifier: Apache-2.0 #!BuildName: build-kvm-iso-image #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/kvm-iso-image:latest #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/kvm-iso-image:%VERSION% #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/kvm-iso-image:%VERSION%-%RELEASE% #!BuildConstraint: hardware:disk:size unit=G 10 #!BuildConstraint: hardware:memory:size unit=G 16 #!UseOBSRepositories ARG SLMICRO_VERSION FROM suse/sl-micro/${SLMICRO_VERSION}/kvm-os-container:latest AS os FROM suse/sl-micro/${SLMICRO_VERSION}/baremetal-os-container:latest AS builder WORKDIR /iso COPY manifest.yaml manifest.yaml COPY --from=os / rootfs # Prepare a busybox base RUN mkdir -p /busybox && rpm --initdb --root /busybox RUN zypper --installroot /busybox in --no-recommends -y busybox # Version value is taken form the elemental repository tags # Release value of this image and os image are unrelated # must be ...<flavor>.<arch>... for OBS RUN elemental --debug --config-dir . build-iso -o /output -n "sl-micro-%%SLMICRO_VERSION%%-kvm.$(uname -m)-%VERSION%-Build%RELEASE%" dir:rootfs # Only keep the ISO as a result and busybox FROM scratch COPY --from=builder /busybox / COPY --from=builder /output /elemental-iso ARG SLMICRO_VERSION ARG BUILD_REPO=%%IMG_REPO%% ARG IMAGE_REPO=$BUILD_REPO/suse/sl-micro/%%SLMICRO_VERSION%%/kvm-iso-image ARG IMAGE_TAG=%VERSION%-%RELEASE% # Define labels according to https://en.opensuse.org/Building_derived_containers # labelprefix=com.suse.sl.micro LABEL org.opencontainers.image.title="SUSE Linux Micro kvm ISO" LABEL org.opencontainers.image.description="Includes the SUSE Linux Micro kvm ISO" LABEL org.opencontainers.image.version="${IMAGE_TAG}" LABEL org.opencontainers.image.url="https://github.com/rancher/elemental" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opensuse.reference="${IMAGE_REPO}:${IMAGE_TAG}" LABEL org.openbuildservice.disturl="%DISTURL%" LABEL com.suse.supportlevel="l3" # endlabelprefix # By default run a shell ENTRYPOINT ["/usr/bin/busybox"] CMD ["sh"] 0707010000000F000081A40000000000000000000000016617A20500000056000000000000000000000000000000000000003C00000000elemental-2.1.1/.obs/dockerfile/micro-kvm-iso/manifest.yamliso: bootloader-in-rootfs: true grub-entry-name: "SL Micro Virtual Image Install" 07070100000010000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000002D00000000elemental-2.1.1/.obs/dockerfile/micro-kvm-os07070100000011000081A40000000000000000000000016617A20500000B2C000000000000000000000000000000000000003800000000elemental-2.1.1/.obs/dockerfile/micro-kvm-os/Dockerfile# SPDX-License-Identifier: Apache-2.0 # Define the names/tags of the container #!BuildName: SL-Micro-kvm-container #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/kvm-os-container:latest #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/kvm-os-container:%VERSION% #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/kvm-os-container:%VERSION%-%RELEASE% #!BuildConstraint: hardware:disk:size unit=G 8 #!UseOBSRepositories ARG SLMICRO_VERSION FROM suse/sl-micro/${SLMICRO_VERSION}/base-os-container:latest # dummy zypper call to get elemental into the build context and extract %VERSION% from it via _service RUN zypper in --no-recommends -y systemd-presets-branding-Elemental elemental # replace default kernel with smaller one, sufficient to run kvm guests RUN zypper in --no-recommends -y kernel-default-base -kernel-default qemu-guest-agent MAINTAINER SUSE LLC (https://www.suse.com/) ARG SLMICRO_VERSION ARG BUILD_REPO=%%IMG_REPO%% ARG IMAGE_REPO=$BUILD_REPO/suse/sl-micro/%%SLMICRO_VERSION%%/kvm-os-container ARG IMAGE_TAG=%VERSION%-%RELEASE% # Define labels according to https://en.opensuse.org/Building_derived_containers # labelprefix=com.suse.sl.micro LABEL org.opencontainers.image.title="SUSE Linux Micro KVM" LABEL org.opencontainers.image.description="Image containing SUSE Linux Micro KVM - a containerized OS layer for Kubernetes." LABEL org.opencontainers.image.version="${IMAGE_TAG}" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.source="%SOURCEURL%" LABEL org.opensuse.reference="${IMAGE_REPO}:${IMAGE_TAG}" LABEL org.openbuildservice.disturl="%DISTURL%" # endlabelprefix # IMPORTANT: Setup elemental-release used for versioning/upgrade. The # values here should reflect the tag of the image being built # Also used by elemental-populate-labels RUN grep -v "IMAGE_REPO\|IMAGE_TAG\|IMAGE=\|TIMESTAMP\|GRUB_ENTRY_NAME" /etc/os-release > /tmp/os-release RUN mv /tmp/os-release /etc/os-release RUN echo IMAGE_REPO=\"${IMAGE_REPO}\" >> /etc/os-release && \ echo IMAGE_TAG=\"${IMAGE_TAG}\" >> /etc/os-release && \ echo IMAGE=\"${IMAGE_REPO}:${IMAGE_TAG}\" >> /etc/os-release && \ echo TIMESTAMP="`date +'%Y%m%d%H%M%S'`" >> /etc/os-release && \ echo GRUB_ENTRY_NAME=\"SUSE Linux Micro\" >> /etc/os-release # Ensure /tmp is mounted as tmpfs by default RUN if [ -e /usr/share/systemd/tmp.mount ]; then \ cp /usr/share/systemd/tmp.mount /etc/systemd/system; \ fi # Save some space RUN if [ -f /usr/bin/zypper ]; then zypper clean --all; fi # Save more space RUN rm -rf /var/log/update* && \ >/var/log/lastlog && \ rm -rf /boot/vmlinux* # Rebuild initrd to setup dracut with the boot configurations RUN elemental init --force elemental-rootfs,elemental-sysroot,grub-config,dracut-config,cloud-config-essentials,elemental-setup,boot-assessment 07070100000012000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000002D00000000elemental-2.1.1/.obs/dockerfile/micro-rt-iso07070100000013000081A40000000000000000000000016617A20500000848000000000000000000000000000000000000003800000000elemental-2.1.1/.obs/dockerfile/micro-rt-iso/Dockerfile# SPDX-License-Identifier: Apache-2.0 #!ExclusiveArch: x86_64 #!BuildName: build-rt-iso-image #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/rt-iso-image:latest #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/rt-iso-image:%VERSION% #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/rt-iso-image:%VERSION%-%RELEASE% #!BuildConstraint: hardware:disk:size unit=G 10 #!BuildConstraint: hardware:memory:size unit=G 16 #!UseOBSRepositories ARG SLMICRO_VERSION FROM suse/sl-micro/${SLMICRO_VERSION}/rt-os-container:latest AS os FROM suse/sl-micro/${SLMICRO_VERSION}/baremetal-os-container:latest AS builder WORKDIR /iso COPY manifest.yaml manifest.yaml COPY --from=os / rootfs # Prepare a busybox base RUN mkdir -p /busybox && rpm --initdb --root /busybox RUN zypper --installroot /busybox in --no-recommends -y busybox # Version value is taken form the elemental repository tags # Release value of this image and os image are unrelated # must be ...<flavor>.<arch>... for OBS RUN elemental --debug --config-dir . build-iso -o /output -n "sl-micro-%%SLMICRO_VERSION%%-rt.$(uname -m)-%VERSION%-Build%RELEASE%" dir:rootfs # Only keep the ISO as a result and busybox FROM scratch COPY --from=builder /busybox / COPY --from=builder /output /elemental-iso ARG SLMICRO_VERSION ARG BUILD_REPO=%%IMG_REPO%% ARG IMAGE_REPO=$BUILD_REPO/suse/sl-micro/%%SLMICRO_VERSION%%/rt-iso-image ARG IMAGE_TAG=%VERSION%-%RELEASE% # Define labels according to https://en.opensuse.org/Building_derived_containers # labelprefix=com.suse.sl.micro LABEL org.opencontainers.image.title="SUSE Linux Micro rt ISO" LABEL org.opencontainers.image.description="Includes the SUSE Linux Micro realtime ISO" LABEL org.opencontainers.image.version="${IMAGE_TAG}" LABEL org.opencontainers.image.url="https://github.com/rancher/elemental" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opensuse.reference="${IMAGE_REPO}:${IMAGE_TAG}" LABEL org.openbuildservice.disturl="%DISTURL%" LABEL com.suse.supportlevel="l3" # endlabelprefix # By default run a shell ENTRYPOINT ["/usr/bin/busybox"] CMD ["sh"] 07070100000014000081A40000000000000000000000016617A20500000051000000000000000000000000000000000000003B00000000elemental-2.1.1/.obs/dockerfile/micro-rt-iso/manifest.yamliso: bootloader-in-rootfs: true grub-entry-name: "SL Micro Realtime Install" 07070100000015000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000002C00000000elemental-2.1.1/.obs/dockerfile/micro-rt-os07070100000016000081A40000000000000000000000016617A20500000AD7000000000000000000000000000000000000003700000000elemental-2.1.1/.obs/dockerfile/micro-rt-os/Dockerfile# SPDX-License-Identifier: Apache-2.0 # Define the names/tags of the container #!ExclusiveArch: x86_64 #!BuildName: SL-Micro-rt-container #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/rt-os-container:latest #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/rt-os-container:%VERSION% #!BuildTag: suse/sl-micro/%%SLMICRO_VERSION%%/rt-os-container:%VERSION%-%RELEASE% #!BuildConstraint: hardware:disk:size unit=G 8 #!UseOBSRepositories ARG SLMICRO_VERSION FROM suse/sl-micro/${SLMICRO_VERSION}/baremetal-os-container:latest AS os # dummy zypper call to get elemental into the build context and extract %VERSION% from it via _service RUN zypper in --no-recommends -y systemd-presets-branding-Elemental elemental # turn base image into a rt image RUN zypper in --no-recommends -y -- -kernel-default kernel-rt MAINTAINER SUSE LLC (https://www.suse.com/) ARG SLMICRO_VERSION ARG BUILD_REPO=%%IMG_REPO%% ARG IMAGE_REPO=$BUILD_REPO/suse/sl-micro/%%SLMICRO_VERSION%%/rt-os-container ARG IMAGE_TAG=%VERSION%-%RELEASE% # Define labels according to https://en.opensuse.org/Building_derived_containers # labelprefix=com.suse.sl.micro LABEL org.opencontainers.image.title="SUSE Linux Micro Realtime OS Container" LABEL org.opencontainers.image.description="Image containing SUSE Linux Micro Realtime - a containerized OS layer for Kubernetes." LABEL org.opencontainers.image.version="${IMAGE_TAG}" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.source="%SOURCEURL%" LABEL org.opensuse.reference="${IMAGE_REPO}:${IMAGE_TAG}" LABEL org.openbuildservice.disturl="%DISTURL%" # endlabelprefix # IMPORTANT: Setup elemental-release used for versioning/upgrade. The # values here should reflect the tag of the image being built # Also used by elemental-populate-labels RUN grep -v "IMAGE_REPO\|IMAGE_TAG\|IMAGE=\|TIMESTAMP\|GRUB_ENTRY_NAME" /etc/os-release > /tmp/os-release RUN mv /tmp/os-release /etc/os-release RUN echo IMAGE_REPO=\"${IMAGE_REPO}\" >> /etc/os-release && \ echo IMAGE_TAG=\"${IMAGE_TAG}\" >> /etc/os-release && \ echo IMAGE=\"${IMAGE_REPO}:${IMAGE_TAG}\" >> /etc/os-release && \ echo TIMESTAMP="`date +'%Y%m%d%H%M%S'`" >> /etc/os-release RUN echo GRUB_ENTRY_NAME=\"SUSE Linux Micro\" >> /etc/os-release # Ensure /tmp is mounted as tmpfs by default RUN if [ -e /usr/share/systemd/tmp.mount ]; then \ cp /usr/share/systemd/tmp.mount /etc/systemd/system; \ fi # Save some space RUN zypper clean --all && \ rm -rf /var/log/update* && \ >/var/log/lastlog && \ rm -rf /boot/vmlinux* # Rebuild initrd to setup dracut with the boot configurations RUN elemental init --force elemental-rootfs,elemental-sysroot,grub-config,dracut-config,cloud-config-essentials,elemental-setup,boot-assessment 07070100000017000041ED0000000000000000000000026617A20500000000000000000000000000000000000000000000001E00000000elemental-2.1.1/.obs/specfile07070100000018000081A40000000000000000000000016617A205000000BD000000000000000000000000000000000000003200000000elemental-2.1.1/.obs/specfile/elemental-rpmlintrc# ignore complaints due to not compressed source. Sources are really small anyway. addFilter("W: source-not-compressed"); # ignore fhs complaints addFilter("E: filelist-forbidden-fhs23"); 07070100000019000081A40000000000000000000000016617A20500001661000000000000000000000000000000000000002D00000000elemental-2.1.1/.obs/specfile/elemental.spec# # spec file for package elemental # # Copyright (c) 2022 - 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 license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define systemdir /system %define oemdir %{systemdir}/oem Name: elemental Version: 0 Release: 0 Summary: A Rancher and Kubernetes optimized immutable Linux distribution License: Apache-2.0 Group: System/Management URL: https://github.com/rancher/%{name} Source: %{name}-%{version}.tar Source1: LICENSE Source2: README.md Source3: %{name}-rpmlintrc Requires: elemental-toolkit >= 2.1.0 Requires: elemental-toolkit < 2.2.0 Requires: elemental-register Requires: elemental-system-agent Requires: elemental-support Requires: NetworkManager Requires: systemd-presets-branding-Elemental Requires: elemental-updater = %{version}-%{release} %{?systemd_requires} BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Elemental is a new set of tools to manage operating systems as container images within Rancher Manager %package -n elemental-updater Summary: Rancher elemental node updater Group: System/Management %description -n elemental-updater Rancher elemental node updater. To be installed on the node. %prep %setup -q -n %{name}-%{version} cp %{S:1} . cp %{S:2} . %build %install cp -a framework/files/* %{buildroot} rm -rf %{buildroot}/var/log/journal %pre %if 0%{?suse_version} %service_add_pre elemental-populate-node-labels.service %service_add_pre shutdown-containerd.service %service_add_pre elemental-register.service %service_add_pre elemental-register-install.service %service_add_pre elemental-register-reset.service %service_add_pre elemental-register.timer %service_add_pre elemental-system-agent.service %endif %post %if 0%{?suse_version} %service_add_post elemental-populate-node-labels.service %service_add_post shutdown-containerd.service %service_add_post elemental-register.service %service_add_post elemental-register-install.service %service_add_post elemental-register-reset.service %service_add_post elemental-register.timer %service_add_post elemental-system-agent.service %else %systemd_post elemental-populate-node-labels.service %systemd_post shutdown-containerd.service %systemd_post elemental-register.service %systemd_post elemental-register-install.service %systemd_post elemental-register-reset.service %systemd_post elemental-register.timer %systemd_post elemental-system-agent.service %endif %preun %if 0%{?suse_version} %service_del_preun elemental-populate-node-labels.service %service_del_preun shutdown-containerd.service %service_del_preun elemental-register.service %service_del_preun elemental-register-install.service %service_del_preun elemental-register-reset.service %service_del_preun elemental-register.timer %service_del_preun elemental-system-agent.service %else %systemd_preun elemental-populate-node-labels.service %systemd_preun shutdown-containerd.service %systemd_preun elemental-register.service %systemd_preun elemental-register-install.service %systemd_preun elemental-register-reset.service %systemd_preun elemental-register.timer %systemd_preun elemental-system-agent.service %endif %postun %if 0%{?suse_version} %service_del_postun elemental-populate-node-labels.service %service_del_postun shutdown-containerd.service %service_del_postun elemental-register.service %service_del_postun elemental-register-install.service %service_del_postun elemental-register-reset.service %service_del_postun elemental-register.timer %service_del_postun elemental-system-agent.service %else %systemd_postun elemental-populate-node-labels.service %systemd_postun shutdown-containerd.service %systemd_postun elemental-register.service %systemd_postun elemental-register-install.service %systemd_postun elemental-register-reset.service %systemd_postun elemental-register.timer %systemd_postun elemental-system-agent.service %endif %files %defattr(-,root,root,-) %doc README.md %license LICENSE %dir %{_sysconfdir}/elemental %config %{_sysconfdir}/elemental/bootargs.cfg %dir %{_sysconfdir}/elemental/config.d %config %{_sysconfdir}/elemental/config.d/* %dir %{_sysconfdir}/dracut.conf.d %config %{_sysconfdir}/dracut.conf.d/51-certificates-initrd.conf %config %{_sysconfdir}/dracut.conf.d/99-elemental-systemd.conf %dir %{_sysconfdir}/NetworkManager %dir %{_sysconfdir}/NetworkManager/conf.d %config %{_sysconfdir}/NetworkManager/conf.d/rke2-canal.conf %dir %{_unitdir} %{_unitdir}/shutdown-containerd.service %{_unitdir}/elemental-register.service %{_unitdir}/elemental-register-install.service %{_unitdir}/elemental-register-reset.service %{_unitdir}/elemental-register.timer %{_unitdir}/elemental-populate-node-labels.service %{_unitdir}/elemental-system-agent.service %{_sbindir}/elemental-populate-node-labels %dir %{_libexecdir}/elemental-checker %{_libexecdir}/elemental-checker/elemental-register.sh %dir %{systemdir} %dir %{oemdir} %{oemdir}/* %files -n elemental-updater %defattr(-,root,root,-) %license LICENSE %{_sbindir}/self-upgrade %{_sbindir}/suc-upgrade %changelog 0707010000001A000081A40000000000000000000000016617A20500000EC0000000000000000000000000000000000000002300000000elemental-2.1.1/.obs/workflows.ymlpush_workflow: steps: - trigger_services: project: isv:Rancher:Elemental:Dev package: elemental - trigger_services: project: isv:Rancher:Elemental:Dev package: build-baremetal-iso-image - trigger_services: project: isv:Rancher:Elemental:Dev package: build-base-iso-image - trigger_services: project: isv:Rancher:Elemental:Dev package: build-kvm-iso-image - trigger_services: project: isv:Rancher:Elemental:Dev package: build-rt-iso-image - trigger_services: project: isv:Rancher:Elemental:Dev package: SL-Micro-baremetal-container - trigger_services: project: isv:Rancher:Elemental:Dev package: SL-Micro-base-container - trigger_services: project: isv:Rancher:Elemental:Dev package: SL-Micro-kvm-container - trigger_services: project: isv:Rancher:Elemental:Dev package: SL-Micro-rt-container filters: branches: only: - main event: push tag_workflow: steps: - trigger_services: project: isv:Rancher:Elemental:Dev package: elemental - trigger_services: project: isv:Rancher:Elemental:Dev package: build-baremetal-iso-image - trigger_services: project: isv:Rancher:Elemental:Dev package: build-base-iso-image - trigger_services: project: isv:Rancher:Elemental:Dev package: build-kvm-iso-image - trigger_services: project: isv:Rancher:Elemental:Dev package: build-rt-iso-image - trigger_services: project: isv:Rancher:Elemental:Dev package: SL-Micro-baremetal-container - trigger_services: project: isv:Rancher:Elemental:Dev package: SL-Micro-base-container - trigger_services: project: isv:Rancher:Elemental:Dev package: SL-Micro-kvm-container - trigger_services: project: isv:Rancher:Elemental:Dev package: SL-Micro-rt-container filters: event: tag_push pr_workflow: steps: - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: elemental target_project: isv:Rancher:Elemental:PR - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: build-base-iso-image target_project: isv:Rancher:Elemental:PR - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: build-kvm-iso-image target_project: isv:Rancher:Elemental:PR - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: build-rt-iso-image target_project: isv:Rancher:Elemental:PR - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: build-baremetal-iso-image target_project: isv:Rancher:Elemental:PR - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: SL-Micro-baremetal-container target_project: isv:Rancher:Elemental:PR - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: SL-Micro-base-container target_project: isv:Rancher:Elemental:PR - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: SL-Micro-kvm-container target_project: isv:Rancher:Elemental:PR - branch_package: source_project: isv:Rancher:Elemental:Dev source_package: SL-Micro-rt-container target_project: isv:Rancher:Elemental:PR - set_flags: flags: - type: publish status: enable project: isv:Rancher:Elemental:PR filters: event: pull_request branches: only: - main 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000B00000000TRAILER!!!73 blocks
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor