mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-08-02 08:17:01 +00:00
Merge pull request #15 from liangchenye/master
rootfs: Add rootfs based on EulerOS 2
This commit is contained in:
commit
3644d49950
1
rootfs-builder/euleros/Dockerfile
Normal file
1
rootfs-builder/euleros/Dockerfile
Normal file
@ -0,0 +1 @@
|
||||
FROM euleros:2.2
|
52
rootfs-builder/euleros/RPM-GPG-KEY-EulerOS
Normal file
52
rootfs-builder/euleros/RPM-GPG-KEY-EulerOS
Normal file
@ -0,0 +1,52 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v2
|
||||
|
||||
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
|
||||
qSxRE/XMoebNx2CFQwFp7izDHwuG6uRRUQQ=
|
||||
=3beT
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
15
rootfs-builder/euleros/config.sh
Normal file
15
rootfs-builder/euleros/config.sh
Normal file
@ -0,0 +1,15 @@
|
||||
# This is a configuration file add extra variables to
|
||||
# be used by build_rootfs() from rootfs_lib.sh the variables will be
|
||||
# loaded just before call the function.
|
||||
|
||||
# Here there are a couple of variables you may need.
|
||||
# Remove them or add more
|
||||
|
||||
# EulerOS Version
|
||||
OS_VERSION=${OS_VERSION:-2}
|
||||
|
||||
#Mandatory Packages that must be installed
|
||||
# systemd: An init system that will start kata-agent
|
||||
# iptables: Need by Kata agent
|
||||
# udevlib.so: Need by Kata agent
|
||||
PACKAGES="systemd iptables"
|
100
rootfs-builder/euleros/rootfs_lib.sh
Normal file
100
rootfs-builder/euleros/rootfs_lib.sh
Normal file
@ -0,0 +1,100 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright (c) 2018 Huawei Technologies Co., Ltd
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
check_program(){
|
||||
type "$1" >/dev/null 2>&1
|
||||
}
|
||||
|
||||
check_root()
|
||||
{
|
||||
if [ "$(id -u)" != "0" ]; then
|
||||
echo "Root is needed"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
generate_yum_config()
|
||||
{
|
||||
cat > "${DNF_CONF}" << EOF
|
||||
[main]
|
||||
cachedir=/var/cache/euleros-osbuilder
|
||||
keepcache=0
|
||||
debuglevel=2
|
||||
logfile=/var/log/yum-euleros.log
|
||||
exactarch=1
|
||||
|
||||
[Base]
|
||||
name=EulerOS-2.2 Base
|
||||
baseurl=http://developer.huawei.com/ict/site-euleros/euleros/repo/yum/2.2/os/x86_64/
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
gpgkey=file://${CONFIG_DIR}/RPM-GPG-KEY-EulerOS
|
||||
EOF
|
||||
}
|
||||
|
||||
# - Arguments
|
||||
# rootfs_dir=$1
|
||||
#
|
||||
# - Optional environment variables
|
||||
#
|
||||
# EXTRA_PKGS: Variable to add extra PKGS provided by the user
|
||||
#
|
||||
# BIN_AGENT: Name of the Kata-Agent binary
|
||||
#
|
||||
# REPO_URL: URL to distribution repository ( should be configured in
|
||||
# config.sh file)
|
||||
#
|
||||
# Any other configuration variable for a specific distro must be added
|
||||
# and documented on its own config.sh
|
||||
#
|
||||
# - Expected result
|
||||
#
|
||||
# rootfs_dir populated with rootfs pkgs
|
||||
# It must provide a binary in /sbin/init
|
||||
build_rootfs() {
|
||||
# Mandatory
|
||||
local ROOTFS_DIR=$1
|
||||
|
||||
#Name of the Kata-Agent binary
|
||||
local BIN_AGENT=${BIN_AGENT}
|
||||
|
||||
# In case of support EXTRA packages, use it to allow
|
||||
# users add more packages to the base rootfs
|
||||
local EXTRA_PKGS=${EXTRA_PKGS:-}
|
||||
|
||||
#In case rootfs is created usign repositories allow user to modify
|
||||
# the default URL
|
||||
local REPO_URL=${REPO_URL:-http://developer.huawei.com/ict/site-euleros/euleros/repo/yum/2.2}
|
||||
|
||||
#PATH where files this script is placed
|
||||
#Use it to refer to files in the same directory
|
||||
#Exmaple: ${CONFIG_DIR}/foo
|
||||
local CONFIG_DIR=${CONFIG_DIR}
|
||||
|
||||
|
||||
# Populate ROOTFS_DIR
|
||||
# Must provide /sbin/init and /bin/${BIN_AGENT}
|
||||
check_root
|
||||
if [ ! -f "{DNF_CONF}" ]; then
|
||||
DNF_CONF="./kata-euleros-yum.repo"
|
||||
generate_yum_config
|
||||
fi
|
||||
mkdir -p "${ROOTFS_DIR}"
|
||||
if [ -n "${PKG_MANAGER}" ]; then
|
||||
info "DNF path provided by user: ${PKG_MANAGER}"
|
||||
elif check_program "yum" ; then
|
||||
PKG_MANAGER="yum"
|
||||
else
|
||||
die "yum is not installed"
|
||||
fi
|
||||
|
||||
info "Using : ${PKG_MANAGER} to pull packages from ${REPO_URL}"
|
||||
|
||||
DNF="${PKG_MANAGER} --config=$DNF_CONF -y --installroot=${ROOTFS_DIR} --noplugins"
|
||||
$DNF install ${EXTRA_PKGS} ${PACKAGES}
|
||||
|
||||
[ -n "${ROOTFS_DIR}" ] && rm -r "${ROOTFS_DIR}/var/cache/euleros-osbuilder"
|
||||
}
|
Loading…
Reference in New Issue
Block a user