summaryrefslogtreecommitdiffstats
path: root/recipes-core/kata-containers
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@windriver.com>2018-10-04 09:34:16 -0400
committerBruce Ashfield <bruce.ashfield@windriver.com>2018-11-05 10:22:54 -0500
commitd9c64d8aa0d7c5ca8d55e1443684c243b01186f0 (patch)
treee8dd7866dfd9e089abd5e7e8efea02a198f131cc /recipes-core/kata-containers
parent100fb480e7fa7646682891307a9091e07e7981cd (diff)
downloadmeta-virtualization-d9c64d8aa0d7c5ca8d55e1443684c243b01186f0.tar.gz
kata: WIP
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Diffstat (limited to 'recipes-core/kata-containers')
-rw-r--r--recipes-core/kata-containers/kata-agent_git.bb39
-rw-r--r--recipes-core/kata-containers/kata-proxy_git.bb34
-rw-r--r--recipes-core/kata-containers/kata-runtime_git.bb59
-rw-r--r--recipes-core/kata-containers/kata-shim_git.bb34
4 files changed, 166 insertions, 0 deletions
diff --git a/recipes-core/kata-containers/kata-agent_git.bb b/recipes-core/kata-containers/kata-agent_git.bb
new file mode 100644
index 00000000..3632ee52
--- /dev/null
+++ b/recipes-core/kata-containers/kata-agent_git.bb
@@ -0,0 +1,39 @@
1DESCRIPTION = "Agent run inside a virtual machine, which spawns containers and processes"
2HOMEPAGE = "https://github.com/kata-containers/agent"
3LICENSE = "Apache-2.0"
4LIC_FILES_CHKSUM = "file://src/github.com/kata-containers/agent/LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
5
6GO_IMPORT = "github.com/kata-containers/agent"
7SRCREV = "e03f7d7453fabffb17e1540f28666c26178d3cbf"
8SRC_URI = "git://${GO_IMPORT}.git \
9 "
10
11RDEPENDS_${PN}-dev_append = "bash"
12
13S = "${WORKDIR}/git"
14
15inherit go
16
17do_compile() {
18 # Pass the needed cflags/ldflags so that cgo
19 # can find the needed headers files and libraries
20 export GOARCH=${TARGET_GOARCH}
21 export CGO_ENABLED="1"
22 export CGO_CFLAGS="${CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
23 export CGO_LDFLAGS="${LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
24
25 cd ${S}/src/${GO_IMPORT}
26 oe_runmake kata-agent
27}
28
29do_install() {
30 mkdir -p ${D}/${bindir}/
31 cp ${WORKDIR}/git/src/${GO_IMPORT}/kata-agent ${D}/${bindir}
32
33 mkdir -p ${D}/${systemd_unitdir}/system
34 cp ${WORKDIR}/git/src/${GO_IMPORT}/kata-agent.service ${D}/${systemd_unitdir}/system
35}
36
37deltask compile_ptest_base
38
39FILES_${PN} += "${systemd_unitdir}/*" \ No newline at end of file
diff --git a/recipes-core/kata-containers/kata-proxy_git.bb b/recipes-core/kata-containers/kata-proxy_git.bb
new file mode 100644
index 00000000..8de0bfcf
--- /dev/null
+++ b/recipes-core/kata-containers/kata-proxy_git.bb
@@ -0,0 +1,34 @@
1DESCRIPTION = " Kata Containers stdio proxy component"
2HOMEPAGE = "https://github.com/kata-containers/proxy"
3LICENSE = "Apache-2.0"
4LIC_FILES_CHKSUM = "file://src/github.com/kata-containers/proxy/LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
5
6GO_IMPORT = "github.com/kata-containers/proxy"
7SRCREV = "1148847739f9a9f47b92e34e4f309dc109d4dba9"
8SRC_URI = "git://${GO_IMPORT}.git \
9 "
10
11RDEPENDS_${PN}-dev_append = "bash"
12
13S = "${WORKDIR}/git"
14
15inherit go
16
17do_compile() {
18 # Pass the needed cflags/ldflags so that cgo
19 # can find the needed headers files and libraries
20 export GOARCH=${TARGET_GOARCH}
21 export CGO_ENABLED="1"
22 export CGO_CFLAGS="${CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
23 export CGO_LDFLAGS="${LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
24
25 cd ${S}/src/${GO_IMPORT}
26 oe_runmake kata-proxy
27}
28
29do_install() {
30 mkdir -p ${D}/${libexecdir}/kata-containers
31 cp ${WORKDIR}/git/src/${GO_IMPORT}/kata-proxy ${D}/${libexecdir}/kata-containers
32}
33
34deltask compile_ptest_base
diff --git a/recipes-core/kata-containers/kata-runtime_git.bb b/recipes-core/kata-containers/kata-runtime_git.bb
new file mode 100644
index 00000000..4f250f19
--- /dev/null
+++ b/recipes-core/kata-containers/kata-runtime_git.bb
@@ -0,0 +1,59 @@
1DESCRIPTION = " The Command-Line Interface (CLI) part of the Kata Containers runtime component"
2HOMEPAGE = "https://github.com/kata-containers/runtime"
3LICENSE = "Apache-2.0"
4LIC_FILES_CHKSUM = "file://src/github.com/kata-containers/runtime/LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
5
6GO_IMPORT = "github.com/kata-containers/runtime"
7SRCREV = "f4cf2137be58c3778d87a8ee8e258e68d1ede888"
8SRC_URI = "git://${GO_IMPORT}.git \
9 "
10RDEPENDS_${PN}-dev_append = "bash"
11RDEPENDS_${PN} = " \
12 qemu \
13 hyperstart \
14 "
15
16# grpc
17
18S = "${WORKDIR}/git"
19
20inherit go
21
22do_compile() {
23 # Pass the needed cflags/ldflags so that cgo
24 # can find the needed headers files and libraries
25 export GOARCH=${TARGET_GOARCH}
26 export CGO_ENABLED="1"
27 export CGO_CFLAGS="${CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
28 export CGO_LDFLAGS="${LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
29
30 cd ${S}/src/${GO_IMPORT}
31 oe_runmake runtime
32}
33
34do_install() {
35 mkdir -p ${D}/${bindir}
36 cp ${WORKDIR}/git/src/${GO_IMPORT}/kata-runtime ${D}/${bindir}
37
38 mkdir -p ${D}/${datadir}/defaults/kata-containers/
39 cp ${WORKDIR}/git/src/${GO_IMPORT}/cli/config/configuration.toml ${D}/${datadir}/defaults/kata-containers/
40
41 sed -e 's|/usr/bin/qemu-lite-system-x86_64|/usr/bin/qemu-system-x86_64|' -i ${D}/${datadir}/defaults/kata-containers/configuration.toml
42 sed -e 's|/usr/share/kata-containers/vmlinuz.container|/var/lib/hyper/kernel|' -i ${D}/${datadir}/defaults/kata-containers/configuration.toml
43 sed -e 's|/usr/share/kata-containers/kata-containers-initrd.img|/var/lib/hyper/hyper-initrd.img|' -i ${D}/${datadir}/defaults/kata-containers/configuration.toml
44 sed -e 's/^\(image =.*\)/# \1/g' -i ${D}/${datadir}/defaults/kata-containers/configuration.toml
45
46 # TODO: modify the config file for the configured kernel and fix the location of the qemu-system-binary
47
48 # /usr/share/defaults/kata-containers/configuration.toml: file /usr/libexec/kata-containers/kata-shim does not exist
49 # fork/exec /usr/libexec/kata-containers/kata-proxy: no such file or directory
50
51 #64 mknod /dev/kvm c 10 232
52 #68 kata-runtime --log=/dev/stdout run --bundle /opt/container/cube-server foo
53
54
55}
56
57FILES_${PN} += "${datadir}/defaults/kata-containers/*"
58
59deltask compile_ptest_base
diff --git a/recipes-core/kata-containers/kata-shim_git.bb b/recipes-core/kata-containers/kata-shim_git.bb
new file mode 100644
index 00000000..fb55a8e7
--- /dev/null
+++ b/recipes-core/kata-containers/kata-shim_git.bb
@@ -0,0 +1,34 @@
1DESCRIPTION = " Handle stdio and signals of the container process"
2HOMEPAGE = "https://github.com/kata-containers/shim"
3LICENSE = "Apache-2.0"
4LIC_FILES_CHKSUM = "file://src/github.com/kata-containers/shim/LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
5
6GO_IMPORT = "github.com/kata-containers/shim"
7SRCREV = "bcc35aeca3ef6fa0976005c9e93525906aefed2f"
8SRC_URI = "git://${GO_IMPORT}.git \
9 "
10
11RDEPENDS_${PN}-dev_append = "bash"
12
13S = "${WORKDIR}/git"
14
15inherit go
16
17do_compile() {
18 # Pass the needed cflags/ldflags so that cgo
19 # can find the needed headers files and libraries
20 export GOARCH=${TARGET_GOARCH}
21 export CGO_ENABLED="1"
22 export CGO_CFLAGS="${CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
23 export CGO_LDFLAGS="${LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
24
25 cd ${S}/src/${GO_IMPORT}
26 oe_runmake kata-shim
27}
28
29do_install() {
30 mkdir -p ${D}/${libexecdir}/kata-containers
31 cp ${WORKDIR}/git/src/${GO_IMPORT}/kata-shim ${D}/${libexecdir}/kata-containers
32}
33
34deltask compile_ptest_base