提交 f5ff0844 编写于 作者: L LiFeng 提交者: lifeng68

driver: add support driver name overlay

Signed-off-by: NLiFeng <lifeng68@huawei.com>
上级 c1666d73
#!/bin/bash
#
# attributes: isulad share namepaces
# concurrent: NO
# spend time: 21
#######################################################################
##- @Copyright (C) Huawei Technologies., Ltd. 2020. All rights reserved.
# - iSulad licensed under the Mulan PSL v2.
# - You can use this software according to the terms and conditions of the Mulan PSL v2.
# - You may obtain a copy of Mulan PSL v2 at:
# - http://license.coscl.org.cn/MulanPSL2
# - THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR
# - IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR
# - PURPOSE.
# - See the Mulan PSL v2 for more details.
##- @Description:CI
##- @Author: gaohuatao
##- @Create: 2020-04-24
#######################################################################
curr_path=$(dirname $(readlink -f "$0"))
data_path=$(realpath $curr_path/../data)
source ./helpers.bash
arr_ns_type[0]="--ipc"
arr_ns_type[1]="--pid"
arr_ns_type[2]="--net"
arr_ns_type[3]="--uts"
function do_test_t()
{
for((i = 0; i < ${#arr_ns_type[*]}; i++))
do
echo ${arr_ns_type[$i]}
cid[$i]=`isula create -ti busybox /bin/sh`
fn_check_eq "$?" "0" "create ${cid[$i]}"
msg=`isula run -tid ${arr_ns_type[$i]}="container:${cid[$i]}" busybox /bin/sh 2>&1`
echo $msg | grep "Can not join namespace of a non running container"
fn_check_eq "$?" "0" "share ipc fail test"
isula rm -f ${cid[$i]}
rid[$i]=`isula run -tid busybox /bin/sh`
fn_check_eq "$?" "0" "run ${rid[$i]}"
id=`isula run -tid busybox /bin/sh`
fn_check_eq "$?" "0" "run $id"
test_id=`isula run -tid ${arr_ns_type[$i]}="container:$id" busybox /bin/sh`
fn_check_eq "$?" "0" "share ${arr_ns_type[$i]} success test"
isula restart --time=0 $id
fn_check_eq "$?" "0" "restart container $id"
testcontainer $id running
isula restart --time=0 ${test_id}
fn_check_eq "$?" "0" "restart container ${test_id}"
testcontainer ${test_id} running
isula rm -f ${test_id} $id
done
return $TC_RET_T
}
ret=0
do_test_t
if [ $? -ne 0 ];then
let "ret=$ret + 1"
fi
show_result $ret "basic share ns test"
......@@ -12,6 +12,7 @@
* Create: 2017-11-22
* Description: provide image functions
******************************************************************************/
#include "driver.h"
#include <stdlib.h>
......@@ -33,6 +34,8 @@ static struct graphdriver *g_graphdriver = NULL;
/* overlay2 */
#define DRIVER_OVERLAY2_NAME "overlay2"
#define DRIVER_OVERLAY_NAME "overlay"
static const struct graphdriver_ops g_overlay2_ops = {
.init = overlay2_init,
.create_rw = overlay2_create_rw,
......@@ -56,7 +59,8 @@ static const struct graphdriver_ops g_devmapper_ops = {
};
static struct graphdriver g_drivers[] = {
{.name = DRIVER_OVERLAY2_NAME, .ops = &g_overlay2_ops},
{.name = DRIVER_OVERLAY2_NAME, .ops = &g_overlay2_ops},
{.name = DRIVER_OVERLAY_NAME, .ops = &g_overlay2_ops},
{.name = DRIVER_DEVMAPPER_NAME, .ops = &g_devmapper_ops}
};
......@@ -97,17 +101,6 @@ int graphdriver_init(struct storage_module_init_options *opts)
goto out;
}
//just for test
struct driver_create_opts test_create_opts = { 0 };
struct driver_mount_opts test_mount_opts = { 0 };
graphdriver_create_ro("1", "", &test_create_opts);
graphdriver_create_ro("2", "1", &test_create_opts);
graphdriver_create_ro("3", "2", &test_create_opts);
graphdriver_create_ro("4", "3", &test_create_opts);
graphdriver_create_rw("5", "4", &test_create_opts);
ERROR("mount: %s", graphdriver_mount_layer("5", &test_mount_opts));
//end test
out:
return ret;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册