osbuilder/tools-image/Dockerfile

64 lines
2.3 KiB
Docker
Raw Normal View History

ARG ELEMENTAL_CLI_VERSION=0.20220921
2022-09-13 20:41:45 +00:00
ARG LEAP_VERSION=15.4
2022-09-13 21:54:32 +00:00
ARG LUET_VERSION=0.32.5
FROM quay.io/kairos/packages:elemental-cli-system-0.20220921 AS elemental
2022-09-13 21:54:32 +00:00
FROM quay.io/luet/base:$LUET_VERSION AS luet
2022-10-15 10:01:42 +00:00
2022-10-19 12:53:13 +00:00
### TODO: Replace those naked Dockerfiles copies with luet install so we can keep track of all versioning with 1 repository tag
### 1) Add the kairos repository with a reference
### 2) populate folders accordingly
2022-10-15 10:01:42 +00:00
## amd64 Live CD artifacts
2022-10-19 12:53:13 +00:00
FROM quay.io/kairos/packages:grub2-livecd-0.0.4 AS grub2
2022-10-11 20:41:05 +00:00
FROM quay.io/kairos/packages:grub2-efi-image-livecd-0.0.4 AS efi
2022-09-13 20:41:45 +00:00
2022-10-19 12:53:13 +00:00
## RPI64
FROM quay.io/kairos/packages-arm64:u-boot-rpi64-firmware-2021.01-5.1 AS rpi-u-boot
FROM quay.io/kairos/packages-arm64:raspberrypi-firmware-firmware-2021.03.10-2.1 AS rpi-firmware
FROM quay.io/kairos/packages-arm64:raspberrypi-firmware-config-firmware-2021.03.10-2.1 AS rpi-firmware-config
FROM quay.io/kairos/packages-arm64:raspberrypi-firmware-dt-firmware-2021.03.15-2.1 AS rpi-firmware-dt
FROM quay.io/kairos/packages-arm64:grub-efi-static-0.1 AS grub-efi
FROM quay.io/kairos/packages-arm64:grub-config-static-0.1 AS grub-config
FROM quay.io/kairos/packages-arm64:grub-artifacts-static-0.1 AS grub-artifacts
2022-09-13 20:41:45 +00:00
FROM opensuse/leap:$LEAP_VERSION
COPY --from=elemental /usr/bin/elemental /usr/bin/elemental
2022-09-13 21:54:32 +00:00
COPY --from=luet /usr/bin/luet /usr/bin/luet
2022-09-13 20:41:45 +00:00
2022-10-19 12:53:13 +00:00
# x86_64 ISOs
2022-09-13 20:41:45 +00:00
COPY --from=grub2 / /grub2
COPY --from=efi / /efi
2022-10-19 12:53:13 +00:00
# RPI64
COPY --from=rpi-u-boot / /rpi/u-boot
COPY --from=rpi-firmware / /rpi/rpi-firmware
COPY --from=rpi-firmware-config / /rpi/rpi-firmware-config
COPY --from=rpi-firmware-dt / /rpi/rpi-firmware-dt
COPY --from=grub-efi / /rpi64/grub/efi
COPY --from=grub-config / /rpi64/grub/config
COPY --from=grub-artifacts / /rpi64/grub/artifacts
2022-09-13 20:41:45 +00:00
RUN zypper ref && zypper dup -y
2022-10-19 12:53:13 +00:00
## ISO Build depedencies
2022-10-13 10:37:14 +00:00
RUN zypper ref && zypper in -y xfsprogs parted util-linux-systemd e2fsprogs curl util-linux udev rsync grub2 dosfstools grub2-x86_64-efi squashfs mtools xorriso lvm2
2022-09-13 20:41:45 +00:00
RUN mkdir /config
2022-10-19 12:53:13 +00:00
2022-10-15 10:01:42 +00:00
# Arm image build deps
RUN zypper in -y jq docker git curl gptfdisk kpartx sudo
2022-10-16 09:43:56 +00:00
# Netboot
RUN zypper in -y cdrtools
2022-10-19 12:53:13 +00:00
# ISO build config
2022-09-13 20:41:45 +00:00
COPY ./config.yaml /config/manifest.yaml
COPY ./entrypoint.sh /entrypoint.sh
2022-10-13 10:37:14 +00:00
COPY ./add-cloud-init.sh /add-cloud-init.sh
2022-09-13 20:41:45 +00:00
2022-10-19 12:53:13 +00:00
# ARM helpers
2022-10-15 10:01:42 +00:00
COPY ./build-arm-image.sh /build-arm-image.sh
COPY ./arm /arm
ENTRYPOINT [ "/entrypoint.sh" ]