mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-09-15 13:58:55 +00:00
rootfs: Make OPA build working in docker for s390x and ppc64le
The commit is to make the OPA build from source working in `ubuntu-rootfs-osbuilder`. To achieve the goal, the configuration is changed as follows: - Switch the make target to `ci-build-linux-static` not triggering docker-in-docker build - Install go in the builder image for s390x and ppc64le Fixes: #9466 Signed-off-by: Hyounggyu Choi <Hyounggyu.Choi@ibm.com>
This commit is contained in:
@@ -553,10 +553,9 @@ build_opa_from_source()
|
||||
local opa_repo_url=$1
|
||||
opa_version="$(get_package_version_from_kata_yaml externals.open-policy-agent.version)"
|
||||
|
||||
if [ ${CROSS_BUILD} == "yes" ]; then
|
||||
export GOOS="${TARGET_OS}"
|
||||
export GOARCH="${TARGET_ARCH}}"
|
||||
fi
|
||||
export PATH="$PATH:/usr/local/go/bin"
|
||||
export GOOS="${TARGET_OS}"
|
||||
[ ${CROSS_BUILD} == "yes" ] && export GOARCH="${TARGET_ARCH}" || export GOARCH="$(uname -m)"
|
||||
|
||||
current_dir="$(pwd)"
|
||||
pushd $(mktemp -d) &>/dev/null
|
||||
@@ -565,7 +564,7 @@ build_opa_from_source()
|
||||
cd opa
|
||||
export WASM_ENABLED=0
|
||||
export DOCKER_RUNNING=0
|
||||
make ci-go-ci-build-linux-static || return 1
|
||||
make ci-build-linux-static || return 1
|
||||
|
||||
info "Copy OPA binary to ${current_dir}/opa"
|
||||
binary_name="_release/${opa_version##v}/opa_${GOOS}_${GOARCH}_static"
|
||||
|
@@ -6,6 +6,7 @@ ARG IMAGE_REGISTRY=docker.io
|
||||
FROM ${IMAGE_REGISTRY}/ubuntu:@OS_VERSION@
|
||||
@SET_PROXY@
|
||||
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
# makedev tries to mknod from postinst
|
||||
RUN [ -x /usr/bin/systemd-detect-virt ] || ( echo "echo docker" >/usr/bin/systemd-detect-virt && chmod +x /usr/bin/systemd-detect-virt )
|
||||
# hadolint ignore=DL3009,SC2046
|
||||
@@ -29,7 +30,9 @@ RUN apt-get update && \
|
||||
multistrap \
|
||||
musl-tools \
|
||||
protobuf-compiler \
|
||||
xz-utils
|
||||
xz-utils && \
|
||||
( go_version="@GO_VERSION@" && [ "${go_version}" = "" ] || ( \
|
||||
echo "Installing go @GO_VERSION@" && curl -sSL "https://golang.org/dl/go@GO_VERSION@.linux-@ARCH@.tar.gz" | tar -xz -C /usr/local ))
|
||||
# aarch64 requires this name -- link for all
|
||||
RUN if [ ! -f "/usr/bin/$(uname -m)-linux-musl-gcc" ]; then ln -s /usr/bin/musl-gcc "/usr/bin/$(uname -m)-linux-musl-gcc"; fi
|
||||
|
||||
|
@@ -237,6 +237,7 @@ RUN . /root/.cargo/env; cargo install cargo-when
|
||||
sed \
|
||||
-e "s#@OS_VERSION@#${OS_VERSION:-}#g" \
|
||||
-e "s#@ARCH@#$ARCH#g" \
|
||||
-e "s#@GO_VERSION@#$GO_VERSION#g" \
|
||||
-e "s#@INSTALL_RUST@#${install_rust//$'\n'/\\n}#g" \
|
||||
-e "s#@SET_PROXY@#${set_proxy:-}#g" \
|
||||
Dockerfile.in > Dockerfile
|
||||
|
Reference in New Issue
Block a user