Skip to content

Commit

Permalink
adds builds for opentnpd and dhcpcd for linuxkit images
Browse files Browse the repository at this point in the history
  • Loading branch information
jaxesn committed Oct 10, 2024
1 parent 58c3f10 commit e1b6a39
Show file tree
Hide file tree
Showing 9 changed files with 180 additions and 58 deletions.
68 changes: 53 additions & 15 deletions projects/linuxkit/linuxkit/CHECKSUMS
Original file line number Diff line number Diff line change
@@ -1,16 +1,54 @@
8c7eb824627d8570adc177a4b7ed7079be4f18dbec7b8553aac315fc6f5a4e68 _output/bin/linuxkit/linux-amd64/init
2b36766ee60593032927457692ad5ffb0276fac7c33f1b67a9bbda34296aa575 _output/bin/linuxkit/linux-amd64/linuxkit
01f6c0d2c32b8928b197d95b21dc61f82ed42da5ba7dd8d507480927ac6ab55c _output/bin/linuxkit/linux-amd64/rc.init
b74f90171dc6e76917a131fa2f12e590b04aa8e178cb2e25bf3342c835cf3a91 _output/bin/linuxkit/linux-amd64/rngd
9ae3f538244554b90c3f3d9ef5fa212fde5629d8185eb5530feb496e15aec121 _output/bin/linuxkit/linux-amd64/service
3b0e5a5c11f5c4dbc8d2e15298933a678e0ec846cd9341c0a561e2804a1e5590 _output/bin/linuxkit/linux-amd64/sysctl
175b0ce4b87ecb9eb9a2ab8b48ad13c1c516d50c0458b3310f85f6426ec65424 _output/bin/linuxkit/linux-amd64/sysfs
5c0e35f2b53f7ef1d9876042f170363e2a00e3f41272a73cd547c2d8027531f4 _output/bin/linuxkit/linux-amd64/dhcpcd/etc/dhcpcd.conf
0a4a1efe4e105e68e564a49cc8de40de2263166a65478ceafd94236661f1a75d _output/bin/linuxkit/linux-amd64/dhcpcd/libexec/dhcpcd-hooks/01-test
875a1c7ee413d03e31d40039174b8b39d49138ae9255905711a393d1df4ad791 _output/bin/linuxkit/linux-amd64/dhcpcd/libexec/dhcpcd-hooks/20-resolv.conf
4095c986cb626310918a47209720da2b8348b1f5d50777f09cfd5538a9bb1a24 _output/bin/linuxkit/linux-amd64/dhcpcd/libexec/dhcpcd-hooks/30-hostname
5a32ff94f0e764566b6d059cc1eddb9d2a104d0a25747e54b5a5983e77b265ef _output/bin/linuxkit/linux-amd64/dhcpcd/libexec/dhcpcd-run-hooks
e88184fc74129d30242259b3eeebfad7be579b67143e41004ee35e94ce897367 _output/bin/linuxkit/linux-amd64/dhcpcd/usr/sbin/dhcpcd
476fddc1eeb058e7d6d2057645a498932d5606bc1220660049d912cb2c409e76 _output/bin/linuxkit/linux-amd64/dhcpcd/usr/share/dhcpcd/hooks/10-wpa_supplicant
ba1412ce405aaa73d10f59ccfffea470d0dcdb32b3192aea2e8c8f79bda6b5d7 _output/bin/linuxkit/linux-amd64/dhcpcd/usr/share/dhcpcd/hooks/15-timezone
bfcf1a03c9fa16033fbfc7f045e7d14bea89d4e195a42c19375e425c86866c45 _output/bin/linuxkit/linux-amd64/dhcpcd/usr/share/dhcpcd/hooks/29-lookup-hostname
fe39319d5bcf11545f141667585faace7fb6a071ad06e2f4c5da28a06eacc7ea _output/bin/linuxkit/linux-amd64/dhcpcd/usr/share/dhcpcd/hooks/50-yp.conf
dc2451689c7e5bad2db4a704080015652b6a1ccc33419d780ae483de24d45bc6 _output/bin/linuxkit/linux-amd64/dhcpcd/usr/share/man/man5/dhcpcd.conf.5
bb800ef06e1db66f9488f89439a82999e04733c91aa444912f8297e1452b79ae _output/bin/linuxkit/linux-amd64/dhcpcd/usr/share/man/man8/dhcpcd-run-hooks.8
4d9d9ce6cd38bbc4ec71b6cc9b7bbbfd718cfa4b5ba63529814645eac1af5fb2 _output/bin/linuxkit/linux-amd64/dhcpcd/usr/share/man/man8/dhcpcd.8
5d60a367dff4885239efa0be16f7706074250728d28cdba7bacd0f67666dab4d _output/bin/linuxkit/linux-amd64/init
0d228e4018cb5f1308c82132626c3089dd69ab591b24bcceffb3536b71d2574e _output/bin/linuxkit/linux-amd64/linuxkit
f65bb54f3d6a7b2372f4cab25e9d68a608b16e4e58bf8e7da47cb8870aa39330 _output/bin/linuxkit/linux-amd64/openntpd/usr/etc/ntpd.conf
ca5ead70a274f55621429cd332ba7fcbd34646a990525743d62fa2725c4b1843 _output/bin/linuxkit/linux-amd64/openntpd/usr/sbin/ntpctl
ca5ead70a274f55621429cd332ba7fcbd34646a990525743d62fa2725c4b1843 _output/bin/linuxkit/linux-amd64/openntpd/usr/sbin/ntpd
4bac51bd4e0b909e2577d7c43fbdcb086a285682ce50e216c286507f9b641e9f _output/bin/linuxkit/linux-amd64/openntpd/usr/share/man/man5/ntpd.conf.5
9ad7eb4e30724f82d902b1128321397d5eaf7914e288451c1ff962ca0a02dc7c _output/bin/linuxkit/linux-amd64/openntpd/usr/share/man/man8/ntpctl.8
8b78b1af2f93643685055d69867d295e633d6b5266eede437fcefed68fb71498 _output/bin/linuxkit/linux-amd64/openntpd/usr/share/man/man8/ntpd.8
b6099d0747b575d3620edd3842522f26bd0925b745251fbf09544bb92479a496 _output/bin/linuxkit/linux-amd64/rc.init
415632ca7529359311c89be1603b076f9778e55f47a83fd66149a7a4a5cc7d0b _output/bin/linuxkit/linux-amd64/rngd
4edc335be6c67740e86da326e61afd7a95399dff339f31fedff3108cc2943b6a _output/bin/linuxkit/linux-amd64/service
b3bf36830513cc53d5b2359ca48f32efd171a8e7b8abc9a100139edaebaefa06 _output/bin/linuxkit/linux-amd64/sysctl
8180608a1abf276528cf5f0a3720a925c410ae49de5c4ed77bc3acd8ebcdb93a _output/bin/linuxkit/linux-amd64/sysfs
d265cca80d6075c843048bc6f00d9715345dd3edea4ad92294ac52494aa17a24 _output/bin/linuxkit/linux-amd64/usermode-helper
458a51abbc16766da18bf2da2d018e7a3eebeb0e40d590af65ad6da4880a3f10 _output/bin/linuxkit/linux-arm64/init
92cfb84370d0105d67c0527e46da28914b7728bb0fbe9ddc2aa2807213b8838e _output/bin/linuxkit/linux-arm64/linuxkit
5891be6a7cd0a2fa9a7b353408a2ecc2e99408c602f37b8c637e43c2ad1c07b0 _output/bin/linuxkit/linux-arm64/rc.init
1ae881fed58fb2c6ed619e4012987b98304fd8b7ccc8fe2e3b4cee27d1d9a6f5 _output/bin/linuxkit/linux-arm64/rngd
d95fc44cd7b8194e5d2522fd69f77168136df8b2469d393d243b505f061efed9 _output/bin/linuxkit/linux-arm64/service
3770b07c86b3981618966362eb07028895be1e7537b8d9ecab5b018c7558e8a7 _output/bin/linuxkit/linux-arm64/sysctl
efa89285c422428bdbf4853d61138d618e32502d81738afcfe75b424a4183d1b _output/bin/linuxkit/linux-arm64/sysfs
320cb1a54c971178fc469c55b100488406b9212bfd63aad965f11c3ec652a9cc _output/bin/linuxkit/linux-arm64/usermode-helper
5c0e35f2b53f7ef1d9876042f170363e2a00e3f41272a73cd547c2d8027531f4 _output/bin/linuxkit/linux-arm64/dhcpcd/etc/dhcpcd.conf
0a4a1efe4e105e68e564a49cc8de40de2263166a65478ceafd94236661f1a75d _output/bin/linuxkit/linux-arm64/dhcpcd/libexec/dhcpcd-hooks/01-test
875a1c7ee413d03e31d40039174b8b39d49138ae9255905711a393d1df4ad791 _output/bin/linuxkit/linux-arm64/dhcpcd/libexec/dhcpcd-hooks/20-resolv.conf
4095c986cb626310918a47209720da2b8348b1f5d50777f09cfd5538a9bb1a24 _output/bin/linuxkit/linux-arm64/dhcpcd/libexec/dhcpcd-hooks/30-hostname
5a32ff94f0e764566b6d059cc1eddb9d2a104d0a25747e54b5a5983e77b265ef _output/bin/linuxkit/linux-arm64/dhcpcd/libexec/dhcpcd-run-hooks
47e1073ce085915b54f4040bc640d8e21ffe35411d3303aaa02c5ea818919a5a _output/bin/linuxkit/linux-arm64/dhcpcd/usr/sbin/dhcpcd
476fddc1eeb058e7d6d2057645a498932d5606bc1220660049d912cb2c409e76 _output/bin/linuxkit/linux-arm64/dhcpcd/usr/share/dhcpcd/hooks/10-wpa_supplicant
ba1412ce405aaa73d10f59ccfffea470d0dcdb32b3192aea2e8c8f79bda6b5d7 _output/bin/linuxkit/linux-arm64/dhcpcd/usr/share/dhcpcd/hooks/15-timezone
bfcf1a03c9fa16033fbfc7f045e7d14bea89d4e195a42c19375e425c86866c45 _output/bin/linuxkit/linux-arm64/dhcpcd/usr/share/dhcpcd/hooks/29-lookup-hostname
fe39319d5bcf11545f141667585faace7fb6a071ad06e2f4c5da28a06eacc7ea _output/bin/linuxkit/linux-arm64/dhcpcd/usr/share/dhcpcd/hooks/50-yp.conf
dc2451689c7e5bad2db4a704080015652b6a1ccc33419d780ae483de24d45bc6 _output/bin/linuxkit/linux-arm64/dhcpcd/usr/share/man/man5/dhcpcd.conf.5
bb800ef06e1db66f9488f89439a82999e04733c91aa444912f8297e1452b79ae _output/bin/linuxkit/linux-arm64/dhcpcd/usr/share/man/man8/dhcpcd-run-hooks.8
4d9d9ce6cd38bbc4ec71b6cc9b7bbbfd718cfa4b5ba63529814645eac1af5fb2 _output/bin/linuxkit/linux-arm64/dhcpcd/usr/share/man/man8/dhcpcd.8
ab9539ca2e05181fdd09842713cf9b9db0574ca05c4c1115098406ddee6cd4c6 _output/bin/linuxkit/linux-arm64/init
6599ea1fdfa2ca57968687449d22cfe3165044e051828cb7d21dd600a0a76eff _output/bin/linuxkit/linux-arm64/linuxkit
f65bb54f3d6a7b2372f4cab25e9d68a608b16e4e58bf8e7da47cb8870aa39330 _output/bin/linuxkit/linux-arm64/openntpd/usr/etc/ntpd.conf
30c064e5f38bd9d1e9278af2576393a340080dd215e783f83efe6c8191b75ed4 _output/bin/linuxkit/linux-arm64/openntpd/usr/sbin/ntpctl
30c064e5f38bd9d1e9278af2576393a340080dd215e783f83efe6c8191b75ed4 _output/bin/linuxkit/linux-arm64/openntpd/usr/sbin/ntpd
4bac51bd4e0b909e2577d7c43fbdcb086a285682ce50e216c286507f9b641e9f _output/bin/linuxkit/linux-arm64/openntpd/usr/share/man/man5/ntpd.conf.5
9ad7eb4e30724f82d902b1128321397d5eaf7914e288451c1ff962ca0a02dc7c _output/bin/linuxkit/linux-arm64/openntpd/usr/share/man/man8/ntpctl.8
8b78b1af2f93643685055d69867d295e633d6b5266eede437fcefed68fb71498 _output/bin/linuxkit/linux-arm64/openntpd/usr/share/man/man8/ntpd.8
50054f69aa251876a85b17104b96bb30291d6136960e106dd854cc0c1ff1e4d9 _output/bin/linuxkit/linux-arm64/rc.init
3b993a1075c67b01436458f2928ae3efc34cd4c96bfb3c4a8d4a06e231e9f0ed _output/bin/linuxkit/linux-arm64/rngd
bbf890706953d9c739f6c7486c383ce429c7875f4314b8ca8234ed13e079ada9 _output/bin/linuxkit/linux-arm64/service
7dbeb393a3b534b4e3ea8f3a07e1e303df30f92357a41f9510dc8ed77cd7c3a7 _output/bin/linuxkit/linux-arm64/sysctl
d0dcbcc93777dc894efcc88e081e13e1ee5b027e3dc344d2122a062539f7b674 _output/bin/linuxkit/linux-arm64/sysfs
320cb1a54c971178fc469c55b100488406b9212bfd63aad965f11c3ec652a9cc _output/bin/linuxkit/linux-arm64/usermode-helper
68 changes: 57 additions & 11 deletions projects/linuxkit/linuxkit/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,11 @@ REPO_OWNER=linuxkit

BASE_IMAGE_NAME?=eks-distro-minimal-base

BINARY_TARGET_FILES=linuxkit rngd sysfs sysctl init rc.init service
GO_MOD_PATHS=src/cmd/linuxkit pkg/rngd pkg/sysfs pkg/sysctl pkg/init pkg/init pkg/init
SOURCE_PATTERNS=. ./cmd/rngd . . ./cmd/init ./cmd/rc.init ./cmd/service
# The go_mod_path for usermode/dhcpcd/ntpd are set to the linuxkit path to avoid issues trying to go mod vendor
# and source_patterns are ignored since these are native builds
BINARY_TARGET_FILES=linuxkit usermode-helper dhcpcd/usr/sbin/dhcpcd openntpd/usr/sbin/ntpd rngd sysfs sysctl init rc.init service
GO_MOD_PATHS=src/cmd/linuxkit src/cmd/linuxkit src/cmd/linuxkit src/cmd/linuxkit pkg/rngd pkg/sysfs pkg/sysctl pkg/init pkg/init pkg/init
SOURCE_PATTERNS=. . . . ./cmd/rngd . . ./cmd/init ./cmd/rc.init ./cmd/service


# this is a native build which we can not cross compile
Expand All @@ -17,11 +19,18 @@ SOURCE_PATTERNS=. ./cmd/rngd . . ./cmd/init ./cmd/rc.init ./cmd/service
# binary in the wrong folder
BINARY_PLATFORMS?=linux/$(BUILDER_PLATFORM_ARCH)
IMAGE_PLATFORMS?=linux/$(BUILDER_PLATFORM_ARCH)
USERMODE_HELPER_TARGETS=$(foreach platform,$(IMAGE_PLATFORMS),$(OUTPUT_BIN_DIR)/$(subst /,-,$(platform))/usermode-helper)

IMAGE_NAMES=init ca-certificates firmware rngd sysctl sysfs modprobe dhcpcd openntpd getty

DOCKERFILE_FOLDER=./docker/linux/$(IMAGE_NAME)
# we are building these using the upstream dockerfiles for now
# the plan is to convert these to our standard build process
# We are using this pattern of setting the dockerfile_folder instead of local to the target
# because this project uses the combine-images target which overrides the dockerfile_folder
# to the standard combine-images dockerfile
# If we setup our override in this Makefile at the target it does not allow the combine-images
# to override it
IMAGES_USING_UPSTREAM_DOCKERFILES=ca-certificates firmware getty init modprobe
DOCKERFILE_FOLDER=$(if $(filter $(IMAGE_NAME),$(IMAGES_USING_UPSTREAM_DOCKERFILES)),$(REPO)/pkg/$(IMAGE_NAME),./docker/linux/$(IMAGE_NAME))

INIT_IMAGE_COMPONENT=linuxkit/init
CA_CERTIFICATES_IMAGE_COMPONENT=linuxkit/ca-certificates
Expand Down Expand Up @@ -61,15 +70,14 @@ BUILDSPEC_1_VARS_VALUES=IMAGE_PLATFORMS
BUILDSPEC_1_ARCH_TYPES=LINUX_CONTAINER ARM_CONTAINER
BUILDSPEC_2_DEPENDS_ON_OVERRIDE=linuxkit_linuxkit_linux_amd64 linuxkit_linuxkit_linux_arm64


# Since we build the arm and amd binaries on difference instances in codebuild
# we do not want to delete missing files when s3 sync-ing from local to the bucket
# since this would clobber the other build's artifacts
UPLOAD_DO_NOT_DELETE=true

include $(BASE_DIRECTORY)/Common.mk

# build usermode-helper with binary targets
validate-checksums: $(USERMODE_HELPER_TARGETS)

dhcpcd/images/% getty/images/% modprobe/images/% openntpd/images/% rngd/images/% sysctl/images/% sysfs/images/%: IMAGE_BUILD_ARGS+=MOBY_CONFIG

Expand All @@ -83,10 +91,12 @@ $(OUTPUT_BIN_DIR)/linux-%/rngd: EXTRA_GO_LDFLAGS=-extldflags -static
$(OUTPUT_BIN_DIR)/linux-%/rngd: EXTRA_GOBUILD_FLAGS=-tags netgo,osusergo,static_build
$(OUTPUT_DIR)/rngd/attribution/go-license.csv: CGO_CREATE_BINARIES=true

# we are building these using the upstream dockerfiles for now
# the plan is to convert these to our standard build process
ca-certificates/images/% dhcpcd/images/% firmware/images/% getty/images/% init/images/% modprobe/images/% openntpd/images/%: DOCKERFILE_FOLDER=$(REPO)/pkg/$(IMAGE_NAME)
ca-certificates/images/% dhcpcd/images/% firmware/images/% getty/images/% modprobe/images/% openntpd/images/%: IMAGE_CONTEXT_DIR=$(REPO)/pkg/$(IMAGE_NAME)
ca-certificates/images/% firmware/images/% getty/images/% modprobe/images/%: IMAGE_CONTEXT_DIR=$(REPO)/pkg/$(IMAGE_NAME)

dhcpcd/images/% openntpd/images/%: BASE_IMAGE_NAME=eks-distro-minimal-base-glibc

$(call IMAGE_TARGETS_FOR_NAME,openntpd): openntpd-useradd/images/export
openntpd-useradd/images/export: IMAGE_USERADD_USER_NAME=_ntp

$(OUTPUT_BIN_DIR)/%/usermode-helper: MAKEFLAGS=
$(OUTPUT_BIN_DIR)/%/usermode-helper: PLATFORM=$(subst -,/,$*)
Expand All @@ -95,6 +105,42 @@ $(OUTPUT_BIN_DIR)/%/usermode-helper: $(GIT_PATCH_TARGET) | $$(call ENABLE_DOCKER
LDFLAGS=-static CFLAGS=-Werror $(MAKE) -C $(REPO)/pkg/init usermode-helper; \
mv $(REPO)/pkg/init/usermode-helper $@

$(OUTPUT_BIN_DIR)/%/dhcpcd/usr/sbin/dhcpcd: MAKEFLAGS=
$(OUTPUT_BIN_DIR)/%/dhcpcd/usr/sbin/dhcpcd: PLATFORM=$(subst -,/,$*)
$(OUTPUT_BIN_DIR)/%/dhcpcd/usr/sbin/dhcpcd: OUTPUT_PATH=$(MAKE_ROOT)/$(OUTPUT_BIN_DIR)/$*/dhcpcd
$(OUTPUT_BIN_DIR)/%/dhcpcd/usr/sbin/dhcpcd: VERSION=$(shell yq '.DHCPCD.version' dependencies.yaml )
$(OUTPUT_BIN_DIR)/%/dhcpcd/usr/sbin/dhcpcd: SHA256SUM=$(shell yq '.DHCPCD.sha256sum' dependencies.yaml )
$(OUTPUT_BIN_DIR)/%/dhcpcd/usr/sbin/dhcpcd: $(GIT_PATCH_TARGET) | $$(call ENABLE_DOCKER_PLATFORM,$$(PLATFORM))
mkdir -p $(OUTPUT_DIR)/dhcpcd; \
cd $(OUTPUT_DIR)/dhcpcd; \
curl -qL --retry-connrefused -O https://github.com/NetworkConfiguration/dhcpcd/releases/download/v$(VERSION)/dhcpcd-$(VERSION).tar.xz; \
echo "$(SHA256SUM) dhcpcd-$(VERSION).tar.xz" > shasum; \
sha256sum -c shasum; \
tar -xf dhcpcd-$(VERSION).tar.xz; \
cd dhcpcd-$(VERSION); \
LDFLAGS="-Wl,--build-id=none" ./configure; \
make; \
DESTDIR=$(OUTPUT_PATH) make install; \
mv $(OUTPUT_PATH)/sbin $(OUTPUT_PATH)/usr

$(OUTPUT_BIN_DIR)/%/openntpd/usr/sbin/ntpd: MAKEFLAGS=
$(OUTPUT_BIN_DIR)/%/openntpd/usr/sbin/ntpd: PLATFORM=$(subst -,/,$*)
$(OUTPUT_BIN_DIR)/%/openntpd/usr/sbin/ntpd: OUTPUT_PATH=$(MAKE_ROOT)/$(OUTPUT_BIN_DIR)/$*/openntpd
$(OUTPUT_BIN_DIR)/%/openntpd/usr/sbin/ntpd: VERSION=$(shell yq '.NTPD.version' dependencies.yaml )
$(OUTPUT_BIN_DIR)/%/openntpd/usr/sbin/ntpd: SHA256SUM=$(shell yq '.NTPD.sha256sum' dependencies.yaml )
$(OUTPUT_BIN_DIR)/%/openntpd/usr/sbin/ntpd: $(GIT_PATCH_TARGET) | $$(call ENABLE_DOCKER_PLATFORM,$$(PLATFORM))
mkdir -p $(OUTPUT_DIR)/openntpd $(OUTPUT_PATH)/usr; \
cd $(OUTPUT_DIR)/openntpd; \
curl -qL --retry-connrefused -O https://cdn.openbsd.org/pub/OpenBSD/OpenNTPD/openntpd-$(VERSION).tar.gz; \
echo "$(SHA256SUM) openntpd-$(VERSION).tar.gz" > shasum; \
sha256sum -c shasum; \
tar -xf openntpd-$(VERSION).tar.gz; \
cd openntpd-$(VERSION); \
LDFLAGS="-Wl,--build-id=none" ./configure --prefix=/usr; \
make; \
DESTDIR=$(OUTPUT_PATH) make install


$(FIX_LICENSES_SUB_MOD_TARGETS): $(GIT_PATCH_TARGET)
# the src/cmd/linuxkit dir does not have the license file, copy from repo root
cp $(REPO)/LICENSE $@
Expand Down
6 changes: 6 additions & 0 deletions projects/linuxkit/linuxkit/dependencies.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
DHCPCD:
sha256sum: d582012992efddd2442bb1213c518a37d90febbcf8b11f8e76448c710dacad27
version: 10.0.10
NTPD:
sha256sum: 8582db838a399153d4a17f2a76518b638cc3020f58028575bf54127518f55a46
version: 6.8p1
34 changes: 34 additions & 0 deletions projects/linuxkit/linuxkit/docker/linux/dhcpcd/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
ARG BASE_IMAGE # https://gallery.ecr.aws/eks-distro-build-tooling/eks-distro-minimal-base-glibc

ARG BUILDER_IMAGE
FROM $BUILDER_IMAGE as builder

# Bash and the following utils are needed
# by the various dhcpcd hook scripts
# and the dhcp.sh provided by hook
RUN set -x && \
install_rpm bash && \
install_binary \
/usr/bin/cat \
/usr/bin/chmod \
/sbin/ifconfig \
/usr/bin/mkdir \
/usr/bin/sed \
/usr/bin/sleep \
/usr/bin/rm && \
cleanup "deps"

FROM $BASE_IMAGE
ARG TARGETARCH
ARG TARGETOS

ARG MOBY_CONFIG
LABEL "org.mobyproject.config"="${MOBY_CONFIG}"

COPY --from=builder /newroot /
COPY _output/bin/linuxkit/$TARGETOS-$TARGETARCH/dhcpcd /
# put the config file in / because we bind mount /etc to handle resolv.conf symlinks
COPY linuxkit/pkg/dhcpcd/dhcpcd.conf /
COPY linuxkit/pkg/dhcpcd/usr/ /usr/

CMD ["/sbin/dhcpcd", "--nobackground", "-f", "/dhcpcd.conf"]
22 changes: 22 additions & 0 deletions projects/linuxkit/linuxkit/docker/linux/openntpd/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
ARG BASE_IMAGE # https://gallery.ecr.aws/eks-distro-build-tooling/eks-distro-minimal-base-glibc
ARG BUILDER_IMAGE
FROM $BUILDER_IMAGE as builder

RUN set -x && \
mkdir -p /home/_ntp && \
chmod 750 /home/_ntp

FROM $BASE_IMAGE

ARG TARGETARCH
ARG TARGETOS
ARG MOBY_CONFIG

LABEL "org.mobyproject.config"="${MOBY_CONFIG}"

COPY --from=builder /home/_ntp/ /home/_ntp/
COPY _output/files/openntpd /
COPY _output/bin/linuxkit/$TARGETOS-$TARGETARCH/openntpd/ /
COPY linuxkit/pkg/openntpd/etc/ /etc/

CMD ["/usr/sbin/ntpd", "-d"]
Original file line number Diff line number Diff line change
@@ -1,31 +1,16 @@
From 0351bc722895d515183b79282beef2e61c1ba28f Mon Sep 17 00:00:00 2001
From c5522a1404d9f5b425538c9c4d36cba22be64782 Mon Sep 17 00:00:00 2001
From: Jackson West <[email protected]>
Date: Wed, 2 Oct 2024 17:57:37 +0000
Subject: [PATCH 1/3] add moby config to dockerfiles for packages used by hook

---
pkg/dhcpcd/Dockerfile | 2 ++
pkg/getty/Dockerfile | 2 ++
pkg/modprobe/Dockerfile | 2 ++
pkg/openntpd/Dockerfile | 2 ++
pkg/rngd/Dockerfile | 2 ++
pkg/sysctl/Dockerfile | 2 ++
pkg/sysfs/Dockerfile | 2 ++
7 files changed, 14 insertions(+)
5 files changed, 10 insertions(+)

diff --git a/pkg/dhcpcd/Dockerfile b/pkg/dhcpcd/Dockerfile
index ed760cfed..0ff5500e9 100644
--- a/pkg/dhcpcd/Dockerfile
+++ b/pkg/dhcpcd/Dockerfile
@@ -10,6 +10,8 @@ RUN apk add --no-cache --initdb -p /out \
RUN rm -rf /out/etc/apk /out/lib/apk /out/var/cache

FROM scratch
+ARG MOBY_CONFIG
+LABEL "org.mobyproject.config"="${MOBY_CONFIG}"
ENTRYPOINT []
CMD []
WORKDIR /
diff --git a/pkg/getty/Dockerfile b/pkg/getty/Dockerfile
index ae10de07d..60d687065 100644
--- a/pkg/getty/Dockerfile
Expand All @@ -48,19 +33,6 @@ index 0cb683fa6..3c1cab58c 100644

FROM scratch
+ARG MOBY_CONFIG
+LABEL "org.mobyproject.config"="${MOBY_CONFIG}"
ENTRYPOINT []
CMD []
WORKDIR /
diff --git a/pkg/openntpd/Dockerfile b/pkg/openntpd/Dockerfile
index b8c073005..4fd4928c3 100644
--- a/pkg/openntpd/Dockerfile
+++ b/pkg/openntpd/Dockerfile
@@ -10,6 +10,8 @@ RUN apk add --no-cache --initdb -p /out \
RUN rm -rf /out/etc/apk /out/lib/apk /out/var/cache

FROM scratch
+ARG MOBY_CONFIG
+LABEL "org.mobyproject.config"="${MOBY_CONFIG}"
ENTRYPOINT []
CMD []
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
From 07ca76275ceda7f3e3eb5302f20c57bf5d05bc62 Mon Sep 17 00:00:00 2001
From 0bd21723c4ddceb0cb1b343a5099105445fedc77 Mon Sep 17 00:00:00 2001
From: Jackson West <[email protected]>
Date: Sat, 31 Aug 2024 02:17:22 +0000
Subject: [PATCH 2/3] init dockerfile to use eks-a built bins
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
From caf17c8da1cf7bfeccaa216b1c4d654f2fabb682 Mon Sep 17 00:00:00 2001
From 9036535ea40179bd1fb924037dbf17ff9fb02500 Mon Sep 17 00:00:00 2001
From: Prow Bot <[email protected]>
Date: Mon, 7 Oct 2024 19:35:59 +0000
Subject: [PATCH 3/3] pass cpu host when running qemu to support testing al23
Expand Down
Loading

0 comments on commit e1b6a39

Please sign in to comment.