2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2025-05-29 17:23:08 +00:00

Merge pull request #4826 from hu-weihua/xcat-inventory

Add test cases for configuration  management first version
This commit is contained in:
Yuan Bai 2018-03-20 17:49:55 +08:00 committed by GitHub
commit cfbe054066
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 5358 additions and 1 deletions

View File

@ -0,0 +1,146 @@
start:xcat_inventory_option_h
description:This case is used to test xcat-inventory usage information
cmd:xcat-inventory -h
check:ouptut=~usage: xcat-inventory
check:ouptut!~usage: xcat-inventory export
check:ouptut!~usage: xcat-inventory import
check:rc==0
cmd:xcat-inventory help
check:ouptut=~usage: xcat-inventory
check:ouptut!~usage: xcat-inventory export
check:ouptut!~usage: xcat-inventory import
check:rc==0
cmd:xcat-inventory help export
check:ouptut=~usage: xcat-inventory export
check:rc==0
cmd:xcat-inventory help import
check:output=~usage: xcat-inventory import
check:rc==0
cmd:xcat-inventory help help
check:output=~usage: xcat-inventory help
check:rc==0
end
start:xcat_inventory_option_V
description:This case is used to test xcat-inventory option V which used to get version information
cmd:xcat-inventory -V
check:ouptut=~\d\.\d
check:rc==0
end
start:xcat_inventory_invalid_subcmd
description:This case is used to test xcat-inventory export subcommand to handle invalid subcommand. The vaild subcommand are export and import.
cmd:xcat-inventory aaa
check:output=~ xcat-inventory: error: argument <subcommand>: invalid choice:
check:output=~ usage:
check:rc!=0
end
start:xcat_inventory_export_option_t_invalid_type
description:This case is used to test xcat-inventory export subcommand to handle invalid type for option t
cmd:xcat-inventory export -t aaa
check:output=~Invalid object type
check:output!~Traceback (most recent call last):
check:rc!=0
end
start:xcat_inventory_export_option_format_invalid_type
description:This case is used to test xcat-inventory export subcommand to handle invalid type for option format
cmd:xcat-inventory export --format aaa
check:output=~Invalid exporting format: aaa
check:output!~Traceback (most recent call last):
check:rc!=0
end
#start:xcat_inventory_export_option_f_invalid_file
#description:This case is used to test xcat-inventory export subcommand to handle invalid file for option f
#cmd:xcat-inventory export -f aaa
#check:output=~The specified path does not exist
#check:output !~Traceback
#check:rc!=0
#end
start:xcat_inventory_import_option_f_invalid_file
description:This case is used to test xcat-inventory import subcommand to handle invalid file for option f
cmd:mkdir -p /tmp/xcat_inventory_import_option_f_invalid_file
check:rc==0
#to handle a non-existed file
cmd:xcat-inventory import -f aaa
check:output=~The specified path does not exist
check:output !~Traceback
check:rc!=0
#To handle a invalid json file
cmd:#!/usr/bin/bash
echo "{
"node": {
"bogusnode": {
"device_type": "server",
"obj_info": {
"groups": "test"
},
"obj_type": "node",
"role": "compute"
}
}
" > /tmp/xcat_inventory_import_option_f_invalid_file/invaild_json
check:rc==0
cmd:cat /tmp/xcat_inventory_import_option_f_invalid_file/invaild_json
check:rc==0
cmd:xcat-inventory import -f /tmp/xcat_inventory_import_option_f_invalid_file/invaild_json
check:output =~ Error: failed to load file
check:output !~Traceback
check:rc!=0
#To handle a invalid yaml file
cmd:#!/usr/bin/bash
echo "node:
device_type: server
obj_info:
groups: test
obj_type: node
role: compute
" > /tmp/xcat_inventory_import_option_f_invalid_file/invaild_yaml
check:rc==0
cmd:cat /tmp/xcat_inventory_import_option_f_invalid_file/invaild_yaml
check:rc==0
cmd:xcat-inventory import -f /tmp/xcat_inventory_import_option_f_invalid_file/invaild_yaml
check:output =~ Error:
check:output !~Traceback
check:rc!=0
cmd:rm -rf /tmp/xcat_inventory_import_option_f_invalid_file
check:rc==0
end
start:xcat_inventory_import_option_t_invalid_type
description:This case is used to test xcat-inventory import subcommand to handle invalid type for option t
cmd:xcat-inventory import -t aaa
check:output=~Invalid object type
check:output!~Traceback (most recent call last):
check:rc!=0
end
start:xcat_inventory_import_miss_option
description:This case is used to test xcat-inventory import subcommand to handle missing -t or -o option
cmd:mkdir -p /tmp/export_import_nodes_delimited_with_comma_by_json
check:rc==0
cmd:#!/usr/bin/bash
echo "{
"node": {
"test": {
"device_type": "server",
"obj_info": {
"groups": "testgroup"
},
"obj_type": "node",
"role": "compute"
}
}
}" > /tmp/export_import_nodes_delimited_with_comma_by_json/aaa
cmd:xcat-inventory import -f /tmp/export_import_nodes_delimited_with_comma_by_json/aaa -o aaa
check:output=~Missing object type for object
check:rc!=0
cmd:rm -rf /tmp/export_import_nodes_delimited_with_comma_by_json
check:rc==0
end

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,916 @@
start:export_import_single_osimage_by_yaml
description:This case is used to test xcat-inventory export and import one linux osimage definition by yaml between 2 exact same MNs. Before running this case, make sure these two MNs have been installed same exactly, and the current MN can connect the other MN by ssh without password. This case also can be run in one MN, this is, export from currnet node then import back to currnet node, in this case, just need to set $$DSTMN=<currnet node ip>
Attribute: $$DSTMN - the ip of MN which is used to run import operation.
cmd:mkdir -p /tmp/export_import_single_osimage_by_yaml
check:rc==0
cmd:ssh $$DSTMN 'mkdir -p /tmp/export_import_single_osimage_by_yaml_$$DSTMN/'
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/export_import_single_osimage_by_yaml/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:ssh $$DSTMN 'lsdef -t osimage -o bogus_image > /dev/null 2>&1; if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/export_import_single_osimage_by_yaml_$$DSTMN/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi'
check:rc==0
cmd:chdef -t osimage -o bogus_image addkcmdline=addkcmdline boottarget=boottarget cfmdir=cfmdir crashkernelsize=crashkernelsize description=description driverupdatesrc=driverupdatesrc dump=dump exlist=exlist groups=groups imagename=imagename imagetype=linux isdeletable=isdeletable kerneldir=kerneldir kernelver=kernelver kitcomponents=kitcomponents krpmver=krpmver netdrivers=netdrivers nodebootif=nodebootif osarch=osarch osdistroname=osdistroname osname=osname osupdatename=osupdatename osvers=osvers otherifce=otherifce otherpkgdir=otherpkgdir otherpkglist=otherpkglist partitionfile=partitionfile permission=permission pkgdir=pkgdir pkglist=pkglist postbootscripts=postbootscripts postinstall=postinstall postscripts=postscripts profile=compute provmethod=netboot rootfstype=nfs rootimgdir=rootimgdir serverrole=serverrole synclists=synclists template=template usercomment=usercomment
check:rc==0
cmd:lsdef -t osimage -o bogus_image -z|sort -t'=' -k1 |tee /tmp/export_import_single_osimage_by_yaml/src_bogus_osimage.stanza
check:rc==0
cmd:xcat-inventory export --format=yaml -t osimage -o bogus_image |tee /tmp/export_import_single_osimage_by_yaml/bogus_image.yaml
check:rc==0
cmd:scp /tmp/export_import_single_osimage_by_yaml/bogus_image.yaml $$DSTMN:/tmp/export_import_single_osimage_by_yaml_$$DSTMN/
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd: ssh $$DSTMN 'xcat-inventory import -f /tmp/export_import_single_osimage_by_yaml_$$DSTMN/bogus_image.yaml -t osimage -o bogus_image'
check:rc==0
cmd: ssh $$DSTMN 'lsdef -t osimage -o bogus_image -z |sort -t'=' -k1|tee /tmp/export_import_single_osimage_by_yaml_$$DSTMN/dst_bogus_image.stanza'
check:rc==0
cmd: scp $$DSTMN:/tmp/export_import_single_osimage_by_yaml_$$DSTMN/dst_bogus_image.stanza /tmp/export_import_single_osimage_by_yaml/dst_bogus_image.stanza
check:rc==0
cmd: cat /tmp/export_import_single_osimage_by_yaml/dst_bogus_image.stanza
check:rc==0
cmd:diff -y /tmp/export_import_single_osimage_by_yaml/src_bogus_osimage.stanza /tmp/export_import_single_osimage_by_yaml/dst_bogus_image.stanza
check:rc==0
cmd:ssh $$DSTMN 'rmdef -t osimage -o bogus_image'
check:rc==0
cmd:if [[ -e /tmp/export_import_single_osimage_by_yaml/bogus_image.stanza ]]; then cat /tmp/export_import_single_osimage_by_yaml/bogus_image.stanza | mkdef -z;fi
check:rc==0
cmd:ssh $$DSTMN 'if [[ -e /tmp/export_import_single_osimage_by_yaml_$$DSTMN/bogus_image.stanza ]]; then cat /tmp/export_import_single_osimage_by_yaml_$$DSTMN/bogus_image.stanza | mkdef -z;fi'
check:rc==0
cmd:ssh $$DSTMN 'rm -rf /tmp/export_import_single_osimage_by_yaml_$$DSTMN/'
check:rc==0
cmd:rm -rf /tmp/export_import_single_osimage_by_yaml
check:rc==0
end
start:export_import_single_osimage_by_json
description:This case is used to test xcat-inventory export and import one linux osimage definition by json between 2 exact same MNs. Before running this case, make sure these two MNs have been installed same exactly, and the current MN can connect the other MN by ssh without password. This case also can be run in one MN, this is, export from currnet node then import back to currnet node, in this case, just need to set $$DSTMN=<currnet node ip>
Attribute: $$DSTMN - the ip of MN which is used to run import operation.
cmd:mkdir -p /tmp/export_import_single_osimage_by_json
check:rc==0
cmd:ssh $$DSTMN 'mkdir -p /tmp/export_import_single_osimage_by_json_$$DSTMN/'
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/export_import_single_osimage_by_json/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:ssh $$DSTMN 'lsdef -t osimage -o bogus_image > /dev/null 2>&1; if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/export_import_single_osimage_by_json_$$DSTMN/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi'
check:rc==0
cmd:chdef -t osimage -o bogus_image addkcmdline=addkcmdline boottarget=boottarget cfmdir=cfmdir crashkernelsize=crashkernelsize description=description driverupdatesrc=driverupdatesrc dump=dump exlist=exlist groups=groups imagename=imagename imagetype=linux isdeletable=isdeletable kerneldir=kerneldir kernelver=kernelver kitcomponents=kitcomponents krpmver=krpmver netdrivers=netdrivers nodebootif=nodebootif osarch=osarch osdistroname=osdistroname osname=osname osupdatename=osupdatename osvers=osvers otherifce=otherifce otherpkgdir=otherpkgdir otherpkglist=otherpkglist partitionfile=partitionfile permission=permission pkgdir=pkgdir pkglist=pkglist postbootscripts=postbootscripts postinstall=postinstall postscripts=postscripts profile=compute provmethod=netboot rootfstype=nfs rootimgdir=rootimgdir serverrole=serverrole synclists=synclists template=template usercomment=usercomment
check:rc==0
cmd:lsdef -t osimage -o bogus_image -z|sort -t'=' -k1 |tee /tmp/export_import_single_osimage_by_json/src_bogus_osimage.stanza
check:rc==0
cmd:xcat-inventory export --format=json -t osimage -o bogus_image |tee /tmp/export_import_single_osimage_by_json/bogus_image.json
check:rc==0
cmd:scp /tmp/export_import_single_osimage_by_json/bogus_image.json $$DSTMN:/tmp/export_import_single_osimage_by_json_$$DSTMN/
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd: ssh $$DSTMN 'xcat-inventory import -f /tmp/export_import_single_osimage_by_json_$$DSTMN/bogus_image.json -t osimage -o bogus_image'
check:rc==0
cmd: ssh $$DSTMN 'lsdef -t osimage -o bogus_image -z |sort -t'=' -k1|tee /tmp/export_import_single_osimage_by_json_$$DSTMN/dst_bogus_image.stanza'
check:rc==0
cmd: scp $$DSTMN:/tmp/export_import_single_osimage_by_json_$$DSTMN/dst_bogus_image.stanza /tmp/export_import_single_osimage_by_json/dst_bogus_image.stanza
check:rc==0
cmd: cat /tmp/export_import_single_osimage_by_json/dst_bogus_image.stanza
check:rc==0
cmd:diff -y /tmp/export_import_single_osimage_by_json/src_bogus_osimage.stanza /tmp/export_import_single_osimage_by_json/dst_bogus_image.stanza
check:rc==0
cmd:ssh $$DSTMN 'rmdef -t osimage -o bogus_image'
check:rc==0
cmd:if [[ -e /tmp/export_import_single_osimage_by_json/bogus_image.stanza ]]; then cat /tmp/export_import_single_osimage_by_json/bogus_image.stanza | mkdef -z;fi
check:rc==0
cmd:ssh $$DSTMN 'if [[ -e /tmp/export_import_single_osimage_by_json_$$DSTMN/bogus_image.stanza ]]; then cat /tmp/export_import_single_osimage_by_json_$$DSTMN/bogus_image.stanza | mkdef -z;fi'
check:rc==0
cmd:ssh $$DSTMN 'rm -rf /tmp/export_import_single_osimage_by_json_$$DSTMN/'
check:rc==0
cmd:rm -rf /tmp/export_import_single_osimage_by_json
check:rc==0
end
start:xcat_inventory_try_to_export_all_type_is_osimage_default_format
description:This case is used to test xcat-inventory export all definition which type is osimage by default format, i.e. json format.
cmd:mkdir -p /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:chdef -t osimage -o bogus_image addkcmdline=addkcmdline boottarget=boottarget cfmdir=cfmdir crashkernelsize=crashkernelsize description=description driverupdatesrc=driverupdatesrc dump=dump exlist=exlist groups=groups imagename=imagename imagetype=linux isdeletable=isdeletable kerneldir=kerneldir kernelver=kernelver kitcomponents=kitcomponents krpmver=krpmver netdrivers=netdrivers nodebootif=nodebootif osarch=osarch osdistroname=osdistroname osname=osname osupdatename=osupdatename osvers=osvers otherifce=otherifce otherpkgdir=otherpkgdir otherpkglist=otherpkglist partitionfile=partitionfile permission=permission pkgdir=pkgdir pkglist=pkglist postbootscripts=postbootscripts postinstall=postinstall postscripts=postscripts profile=compute provmethod=netboot rootfstype=nfs rootimgdir=rootimgdir serverrole=serverrole synclists=synclists template=template usercomment=usercomment
check:rc==0
cmd:xcat-inventory export -t osimage |tee /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc==0
cmd:grep ' "osimage": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc==0
cmd:grep '"bogus_image": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc==0
cmd: grep '"node": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc!=0
cmd: grep '"obj_type": "node",' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc!=0
cmd: grep '"policy": {'' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc!=0
cmd: grep '"passwd": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc!=0
cmd: grep '"network": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc!=0
cmd: grep '"route": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc!=0
cmd: grep '"site": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file
check:rc!=0
cmd:lsdef -t osimage |tee /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/osimage_in_xcat_db
check:rc==0
cmd: a=0;for i in `awk -F' ' '{print $1}' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/osimage_in_xcat_db`; do if grep -E "\"$i\": {" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/export.file > /dev/null; then ((a++));fi; done; do=$(cat /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/osimage_in_xcat_db|wc -l);if [[ $do -eq $a ]]; then exit 0; else exit 1;fi
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd:if [[ -e /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/bogus_image.stanza ]]; then cat /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format/bogus_image.stanza | mkdef -z;fi
check:rc==0
cmd:rm -rf /tmp/xcat_inventory_try_to_export_all_type_is_osimage_default_format
check:rc==0
end
start:xcat_inventory_try_to_export_all_type_is_osimage_json_format
description:This case is used to test xcat-inventory export all definition which type is osimage by json format.
cmd:mkdir -p /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:chdef -t osimage -o bogus_image addkcmdline=addkcmdline boottarget=boottarget cfmdir=cfmdir crashkernelsize=crashkernelsize description=description driverupdatesrc=driverupdatesrc dump=dump exlist=exlist groups=groups imagename=imagename imagetype=linux isdeletable=isdeletable kerneldir=kerneldir kernelver=kernelver kitcomponents=kitcomponents krpmver=krpmver netdrivers=netdrivers nodebootif=nodebootif osarch=osarch osdistroname=osdistroname osname=osname osupdatename=osupdatename osvers=osvers otherifce=otherifce otherpkgdir=otherpkgdir otherpkglist=otherpkglist partitionfile=partitionfile permission=permission pkgdir=pkgdir pkglist=pkglist postbootscripts=postbootscripts postinstall=postinstall postscripts=postscripts profile=compute provmethod=netboot rootfstype=nfs rootimgdir=rootimgdir serverrole=serverrole synclists=synclists template=template usercomment=usercomment
check:rc==0
cmd:xcat-inventory export --format=json -t osimage |tee /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc==0
cmd:grep ' "osimage": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc==0
cmd:grep '"bogus_image": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc==0
cmd: grep '"node": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc!=0
cmd: grep '"obj_type": "node",' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc!=0
cmd: grep '"policy": {'' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc!=0
cmd: grep '"passwd": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc!=0
cmd: grep '"network": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc!=0
cmd: grep '"route": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc!=0
cmd: grep '"site": {' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file
check:rc!=0
cmd:lsdef -t osimage |tee /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/osimage_in_xcat_db
check:rc==0
cmd: a=0;for i in `awk -F' ' '{print $1}' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/osimage_in_xcat_db`; do if grep -E "\"$i\": {" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/export.file > /dev/null; then ((a++));fi; done; do=$(cat /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/osimage_in_xcat_db|wc -l);if [[ $do -eq $a ]]; then exit 0; else exit 1;fi
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd:if [[ -e /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/bogus_image.stanza ]]; then cat /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format/bogus_image.stanza | mkdef -z;fi
check:rc==0
cmd:rm -rf /tmp/xcat_inventory_try_to_export_all_type_is_osimage_json_format
check:rc==0
end
start:xcat_inventory_try_to_export_all_type_is_osimage_yaml_format
description:This case is used to test xcat-inventory export all definition which type is osimage by yaml format.
cmd:mkdir -p /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:chdef -t osimage -o bogus_image addkcmdline=addkcmdline boottarget=boottarget cfmdir=cfmdir crashkernelsize=crashkernelsize description=description driverupdatesrc=driverupdatesrc dump=dump exlist=exlist groups=groups imagename=imagename imagetype=linux isdeletable=isdeletable kerneldir=kerneldir kernelver=kernelver kitcomponents=kitcomponents krpmver=krpmver netdrivers=netdrivers nodebootif=nodebootif osarch=osarch osdistroname=osdistroname osname=osname osupdatename=osupdatename osvers=osvers otherifce=otherifce otherpkgdir=otherpkgdir otherpkglist=otherpkglist partitionfile=partitionfile permission=permission pkgdir=pkgdir pkglist=pkglist postbootscripts=postbootscripts postinstall=postinstall postscripts=postscripts profile=compute provmethod=netboot rootfstype=nfs rootimgdir=rootimgdir serverrole=serverrole synclists=synclists template=template usercomment=usercomment
check:rc==0
cmd:xcat-inventory export --format=yaml -t osimage |tee /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc==0
cmd:grep -E "^osimage:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc==0
cmd:grep -E "^\s*bogus_image:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc==0
cmd: grep -E "^node:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc!=0
cmd: grep -E "obj_type: node" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc!=0
cmd: grep -E "^policy:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc!=0
cmd: grep -E "^passwd:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc!=0
cmd: grep -E "^network:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc!=0
cmd: grep -E "^route:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc!=0
cmd: grep -E "^site:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file
check:rc!=0
cmd:lsdef -t osimage |tee /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/osimage_in_xcat_db
check:rc==0
cmd: a=0;for i in `awk -F' ' '{print $1}' /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/osimage_in_xcat_db`; do if grep -E "$i:" /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/export.file > /dev/null; then ((a++));fi; done; do=$(cat /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/osimage_in_xcat_db|wc -l);if [[ $do -eq $a ]]; then exit 0; else exit 1;fi
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd:if [[ -e /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/bogus_image.stanza ]]; then cat /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format/bogus_image.stanza | mkdef -z;fi
check:rc==0
cmd:rm -rf /tmp/xcat_inventory_try_to_export_all_type_is_osimage_yaml_format
check:rc==0
end
start:xcat_inventory_try_to_import_all_type_is_osimage_yaml_format
description:This case is used to test xcat-inventory import all definition which type is osimage from a yaml file.
cmd:mkdir -p /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:lsdef -t node -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_nodes_db
check:rc==0
cmd:lsdef -t group -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_group_db
check:rc==0
cmd:tabdump site > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_site_db
check:rc==0
cmd:tabdump passwd > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_pw_db
check:rc==0
cmd:tabdump policy > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_policy_db
check:rc==0
cmd:tabdump networks > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_network_db
check:rc==0
cmd:tabdump routes > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_route_db
check:rc==0
cmd:lsdef -t osimage -l|sed '/^Could not find any object definitions to display/d' > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_osimage_db
check:rc==0
cmd:#!/bin/bash
echo "network:
10_0_0_0-255_0_0_0:
basic_attr:
gateway: 10.0.0.103
mask: 255.0.0.0
mgtifname: eth0
mtu: '1500'
net: 10.0.0.0
service:
tftpserver: <xcatmaster>
node:
bogusnode1:
device_type: server
engines:
console_engine:
engine_info:
cons: openbmc
engine_type: openbmc
hardware_mgt_engine:
engine_info:
bmc: 10.3.11.101
bmcpassword: 0penBmc
bmcusername: root
engine_type: openbmc
netboot_engine:
engine_type: petitboot
power_mgt_engine:
engine_type: openbmc
network_info:
primarynic:
ip: 10.100.100.1
obj_info:
groups: bogusgroup
obj_type: node
role: compute
bogusnode2:
device_type: server
engines:
console_engine:
engine_info:
cons: openbmc
engine_type: openbmc
hardware_mgt_engine:
engine_info:
bmc: 10.3.11.102
bmcpassword: 0penBmc
bmcusername: root
engine_type: openbmc
netboot_engine:
engine_type: petitboot
power_mgt_engine:
engine_type: openbmc
network_info:
primarynic:
ip: 10.100.100.2
obj_info:
groups: bogusgroup
obj_type: node
role: compute
bogusnode3:
device_type: server
engines:
console_engine:
engine_info:
cons: openbmc
engine_type: openbmc
hardware_mgt_engine:
engine_info:
bmc: 10.3.11.103
bmcpassword: 0penBmc
bmcusername: root
engine_type: openbmc
netboot_engine:
engine_type: petitboot
power_mgt_engine:
engine_type: openbmc
network_info:
primarynic:
ip: 10.100.100.3
obj_info:
groups: bogusgroup
obj_type: node
role: compute
service:
device_type: server
engines:
netboot_engine:
engine_info:
postscripts: servicenode
obj_type: group
role: compute
xcatdefaults:
device_type: server
engines:
netboot_engine:
engine_info:
postbootscripts: otherpkgs
postscripts: syslog,remoteshell,syncfiles
obj_type: group
role: compute
osimage:
bogus_image:
addkcmdline: aaaa
boottarget: aaa
imagetype: linux
provision_mode: statelite
role: compute
passwd: {}
policy:
'1':
name: root
rule: allow
'1.2':
name: c910f03c05k08.pok.stglabs.ibm.com
rule: trusted
'2':
commands: getbmcconfig
rule: allow
'2.1':
commands: remoteimmsetup
rule: allow
'2.3':
commands: lsxcatd
rule: allow
'3':
commands: nextdestiny
rule: allow
'4':
commands: getdestiny
rule: allow
'4.4':
commands: getpostscript
rule: allow
'4.5':
commands: getcredentials
rule: allow
'4.6':
commands: syncfiles
rule: allow
'4.7':
commands: litefile
rule: allow
'4.8':
commands: litetree
rule: allow
'4.9':
commands: getadapter
rule: allow
route: {}
site:
cluster:
SNsyncfiledir: /var/xcat/syncfiles
auditnosyslog: '0'
auditskipcmds: ALL
blademaxp: '64'
cleanupxcatpost: 'no'
consoleondemand: 'no'
databaseloc: /var/lib
db2installloc: /mntdb2
dhcplease: '43200'
dnshandler: ddns
enableASMI: 'no'
forwarders: 10.3.17.10
fsptimeout: '0'
installdir: /install
ipmimaxp: '64'
ipmiretries: '3'
ipmitimeout: '2'
master: 10.3.5.8
maxssh: '8'
nameservers: 10.3.5.8
nodesyncfiledir: /var/xcat/node/syncfiles
powerinterval: '0'
ppcmaxp: '64'
ppcretry: '3'
ppctimeout: '0'
sharedtftp: '1'
sshbetweennodes: ALLGROUPS
syspowerinterval: '0'
tftpdir: /tftpboot
timezone: America/New_York
useNmapfromMN: 'no'
vsftp: n
xcatconfdir: /etc/xcat
xcatdport: '3001'
xcatiport: '3002'
xcatsslversion: TLSv1" > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/import.file
check:rc==0
cmd:#!/bin/bash
echo "Object name: bogus_image
addkcmdline=aaaa
boottarget=aaa
imagetype=linux
profile=compute
provmethod=statelite" >> /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_osimage_db
check:rc==0
cmd:sort /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_osimage_db > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/target_osimage_sort
cmd:xcat-inventory import -f /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/import.file -t osimage
check:rc==0
cmd:lsdef -t osimage -l|sort > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/import_osimage
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/target_osimage_sort /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/import_osimage
check:rc==0
cmd:lsdef -t node -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_nodes_db
check:rc==0
cmd:lsdef -t group -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_group_db
check:rc==0
cmd:tabdump site > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_site_db
check:rc==0
cmd:tabdump passwd > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_pw_db
check:rc==0
cmd:tabdump policy > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_policy_db
check:rc==0
cmd:tabdump networks > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_network_db
check:rc==0
cmd:tabdump routes > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_route_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_nodes_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_nodes_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_group_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_group_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_site_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_site_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_pw_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_pw_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_policy_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_policy_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_network_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_network_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/org_route_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/after_route_db
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd:if [[ -e /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/bogus_image.stanza ]]; then cat /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format/bogus_image.stanza | mkdef -z;fi
check:rc==0
cmd:rm -rf /tmp/xcat_inventory_try_to_import_all_type_is_osimage_yaml_format
check:rc==0
end
start:xcat_inventory_try_to_import_all_type_is_osimage_json_format
description:This case is used to test xcat-inventory import all definition which type is osimage from a json file.
cmd:mkdir -p /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:lsdef -t node -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_nodes_db
check:rc==0
cmd:lsdef -t group -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_group_db
check:rc==0
cmd:tabdump site > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_site_db
check:rc==0
cmd:tabdump passwd > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_pw_db
check:rc==0
cmd:tabdump policy > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_policy_db
check:rc==0
cmd:tabdump networks > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_network_db
check:rc==0
cmd:tabdump routes > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_route_db
check:rc==0
cmd:lsdef -t osimage -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_osimage_db
check:rc==0
cmd:lsdef -t osimage -l|sed '/^Could not find any object definitions to display/d' > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_osimage_db
check:rc==0
cmd:#!/bin/bash
echo '{
"network": {
"10_0_0_0-255_0_0_0": {
"basic_attr": {
"gateway": "10.0.0.103",
"mask": "255.0.0.0",
"mgtifname": "eth0",
"mtu": "1500",
"net": "10.0.0.0"
},
"service": {
"tftpserver": "<xcatmaster>"
}
}
},
"node": {
"bogusnode1": {
"device_type": "server",
"engines": {
"console_engine": {
"engine_info": {
"cons": "openbmc"
},
"engine_type": "openbmc"
},
"hardware_mgt_engine": {
"engine_info": {
"bmc": "10.3.11.101",
"bmcpassword": "0penBmc",
"bmcusername": "root"
},
"engine_type": "openbmc"
},
"netboot_engine": {
"engine_type": "petitboot"
},
"power_mgt_engine": {
"engine_type": "openbmc"
}
},
"network_info": {
"primarynic": {
"ip": "10.100.100.1"
}
},
"obj_info": {
"groups": "bogusgroup"
},
"obj_type": "node",
"role": "compute",
},
"bogusnode2": {
"device_type": "server",
"engines": {
"console_engine": {
"engine_info": {
"cons": "openbmc"
},
"engine_type": "openbmc"
},
"hardware_mgt_engine": {
"engine_info": {
"bmc": "10.3.11.102",
"bmcpassword": "0penBmc",
"bmcusername": "root"
},
"engine_type": "openbmc"
},
"netboot_engine": {
"engine_type": "petitboot"
},
"power_mgt_engine": {
"engine_type": "openbmc"
}
},
"network_info": {
"primarynic": {
"ip": "10.100.100.2"
}
},
"obj_info": {
"groups": "bogusgroup"
},
"obj_type": "node",
"role": "compute",
},
"bogusnode3": {
"device_type": "server",
"engines": {
"console_engine": {
"engine_info": {
"cons": "openbmc"
},
"engine_type": "openbmc"
},
"hardware_mgt_engine": {
"engine_info": {
"bmc": "10.3.11.103",
"bmcpassword": "0penBmc",
"bmcusername": "root"
},
"engine_type": "openbmc"
},
"netboot_engine": {
"engine_type": "petitboot"
},
"power_mgt_engine": {
"engine_type": "openbmc"
}
},
"network_info": {
"primarynic": {
"ip": "10.100.100.3"
}
},
"obj_info": {
"groups": "bogusgroup"
},
"obj_type": "node",
"role": "compute",
},
"service": {
"device_type": "server",
"engines": {
"netboot_engine": {
"engine_info": {
"postscripts": "servicenode"
}
}
},
"obj_type": "group",
"role": "compute",
},
"xcatdefaults": {
"device_type": "server",
"engines": {
"netboot_engine": {
"engine_info": {
"postbootscripts": "otherpkgs",
"postscripts": "syslog,remoteshell,syncfiles"
}
}
},
"obj_type": "group",
"role": "compute",
}
},
"osimage": {
"bogus_image": {
"addkcmdline": "aaaa",
"boottarget": "aaa",
"imagetype": "linux",
"provision_mode": "statelite",
"role": "compute"
}
},
"passwd": {},
"policy": {
"1": {
"name": "root",
"rule": "allow"
},
"1.2": {
"name": "c910f03c05k08.pok.stglabs.ibm.com",
"rule": "trusted"
},
"2": {
"commands": "getbmcconfig",
"rule": "allow"
},
"2.1": {
"commands": "remoteimmsetup",
"rule": "allow"
},
"2.3": {
"commands": "lsxcatd",
"rule": "allow"
},
"3": {
"commands": "nextdestiny",
"rule": "allow"
},
"4": {
"commands": "getdestiny",
"rule": "allow"
},
"4.4": {
"commands": "getpostscript",
"rule": "allow"
},
"4.5": {
"commands": "getcredentials",
"rule": "allow"
},
"4.6": {
"commands": "syncfiles",
"rule": "allow"
},
"4.7": {
"commands": "litefile",
"rule": "allow"
},
"4.8": {
"commands": "litetree",
"rule": "allow"
},
"4.9": {
"commands": "getadapter",
"rule": "allow"
}
},
"route": {},
"site": {
"cluster": {
"SNsyncfiledir": "/var/xcat/syncfiles",
"auditnosyslog": "0",
"auditskipcmds": "ALL",
"blademaxp": "64",
"cleanupxcatpost": "no",
"consoleondemand": "no",
"databaseloc": "/var/lib",
"db2installloc": "/mntdb2",
"dhcplease": "43200",
"dnshandler": "ddns",
"enableASMI": "no",
"forwarders": "10.3.17.10",
"fsptimeout": "0",
"installdir": "/install",
"ipmimaxp": "64",
"ipmiretries": "3",
"ipmitimeout": "2",
"master": "10.3.5.8",
"maxssh": "8",
"nameservers": "10.3.5.8",
"nodesyncfiledir": "/var/xcat/node/syncfiles",
"powerinterval": "0",
"ppcmaxp": "64",
"ppcretry": "3",
"ppctimeout": "0",
"sharedtftp": "1",
"sshbetweennodes": "ALLGROUPS",
"syspowerinterval": "0",
"tftpdir": "/tftpboot",
"timezone": "America/New_York",
"useNmapfromMN": "no",
"vsftp": "n",
"xcatconfdir": "/etc/xcat",
"xcatdport": "3001",
"xcatiport": "3002",
"xcatsslversion": "TLSv1"
}
}
}' > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/import.file
check:rc==0
cmd:#!/bin/bash
echo "Object name: bogus_image
addkcmdline=aaaa
boottarget=aaa
imagetype=linux
profile=compute
provmethod=statelite" >> /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_osimage_db
check:rc==0
cmd:sort /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_osimage_db > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/target_osimage_sort
cmd:xcat-inventory import -f /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/import.file -t osimage
check:rc==0
cmd:lsdef -t osimage -l|sort > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/import_osimage
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/target_osimage_sort /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/import_osimage
check:rc==0
cmd:lsdef -t node -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_nodes_db
check:rc==0
cmd:lsdef -t group -l > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_group_db
check:rc==0
cmd:tabdump site > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_site_db
check:rc==0
cmd:tabdump passwd > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_pw_db
check:rc==0
cmd:tabdump policy > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_policy_db
check:rc==0
cmd:tabdump networks > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_network_db
check:rc==0
cmd:tabdump routes > /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_route_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_nodes_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_nodes_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_group_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_group_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_site_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_site_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_pw_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_pw_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_policy_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_policy_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_network_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_network_db
check:rc==0
cmd:diff -y /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/org_route_db /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/after_route_db
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd:if [[ -e /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/bogus_image.stanza ]]; then cat /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format/bogus_image.stanza | mkdef -z;fi
check:rc==0
#cmd:rm -rf /tmp/xcat_inventory_try_to_import_all_type_is_osimage_json_format
#check:rc==0
end
start:export_single_osimage_then_modify_json_then_import
description:This case is used to test xcat-inventory import a osimage , then modify the export json file, then import the json file
cmd:mkdir -p /tmp/export_single_osimage_then_modify_json_then_import
check:rc==0
cmd:ssh $$DSTMN 'mkdir -p /tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/'
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/export_single_osimage_then_modify_json_then_import/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:ssh $$DSTMN 'lsdef -t osimage -o bogus_image > /dev/null 2>&1; if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi'
check:rc==0
cmd:chdef -t osimage -o bogus_image addkcmdline=1111 boottarget=1111 cfmdir=1111 crashkernelsize=1111 description=1111 driverupdatesrc=1111 dump=1111 exlist=1111 groups=1111 imagename=1111 imagetype=linux isdeletable=1111 kerneldir=1111 kernelver=1111 kitcomponents=1111 krpmver=1111 netdrivers=1111 nodebootif=1111 osarch=1111 osdistroname=1111 osname=1111 osupdatename=1111 osvers=1111 otherifce=1111 otherpkgdir=1111 otherpkglist=1111 partitionfile=1111 permission=1111 pkgdir=1111 pkglist=1111 postbootscripts=1111 postinstall=1111 postscripts=1111 profile=compute provmethod=statelite rootfstype=nfs rootimgdir=1111 serverrole=1111 synclists=1111 template=1111 usercomment=1111
check:rc==0
cmd:lsdef -t osimage -o bogus_image -z|sed 's/1111/2222/g'|sort -t'=' -k1 |tee /tmp/export_single_osimage_then_modify_json_then_import/src_bogus_osimage.stanza
check:rc==0
cmd:sed -i 's/profile=compute/profile=service/g' /tmp/export_single_osimage_then_modify_json_then_import/src_bogus_osimage.stanza
check:rc==0
cmd:sed -i 's/provmethod=statelite/provmethod=netboot/g' /tmp/export_single_osimage_then_modify_json_then_import/src_bogus_osimage.stanza
check:rc==0
cmd:sed -i 's/rootfstype=nfs/rootfstype=ramdisk/g' /tmp/export_single_osimage_then_modify_json_then_import/src_bogus_osimage.stanza
check:rc==0
cmd:xcat-inventory export --format=json -t osimage -o bogus_image |tee /tmp/export_single_osimage_then_modify_json_then_import/bogus_image.json
check:rc==0
cmd:sed -i 's/1111/2222/g' /tmp/export_single_osimage_then_modify_json_then_import/bogus_image.json
check:rc==0
cmd:sed -i 's/"role": "compute"/"role": "service"/g' /tmp/export_single_osimage_then_modify_json_then_import/bogus_image.json
check:rc==0
cmd:sed -i 's/"provision_mode": "statelite"/"provision_mode": "netboot"/g' /tmp/export_single_osimage_then_modify_json_then_import/bogus_image.json
check:rc==0
cmd:sed -i 's/"rootfstype": "nfs"/"rootfstype": "ramdisk"/g' /tmp/export_single_osimage_then_modify_json_then_import/bogus_image.json
check:rc==0
cmd:scp /tmp/export_single_osimage_then_modify_json_then_import/bogus_image.json $$DSTMN:/tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd: ssh $$DSTMN 'xcat-inventory import -f /tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/bogus_image.json -t osimage -o bogus_image'
check:rc==0
cmd: ssh $$DSTMN 'lsdef -t osimage -o bogus_image -z |sort -t'=' -k1|tee /tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/dst_bogus_image.stanza'
check:rc==0
cmd: scp $$DSTMN:/tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/dst_bogus_image.stanza /tmp/export_single_osimage_then_modify_json_then_import/dst_bogus_image.stanza
check:rc==0
cmd: cat /tmp/export_single_osimage_then_modify_json_then_import/dst_bogus_image.stanza
check:rc==0
cmd:diff -y /tmp/export_single_osimage_then_modify_json_then_import/src_bogus_osimage.stanza /tmp/export_single_osimage_then_modify_json_then_import/dst_bogus_image.stanza
check:rc==0
cmd:ssh $$DSTMN 'rmdef -t osimage -o bogus_image'
check:rc==0
cmd:if [[ -e /tmp/export_single_osimage_then_modify_json_then_import/bogus_image.stanza ]]; then cat /tmp/export_single_osimage_then_modify_json_then_import/bogus_image.stanza | mkdef -z;fi
check:rc==0
cmd:ssh $$DSTMN 'if [[ -e /tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/bogus_image.stanza ]]; then cat /tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/bogus_image.stanza | mkdef -z;fi'
check:rc==0
cmd:ssh $$DSTMN 'rm -rf /tmp/export_single_osimage_then_modify_json_then_import_$$DSTMN/'
check:rc==0
cmd:rm -rf /tmp/export_single_osimage_then_modify_json_then_import
check:rc==0
end
start:export_single_osimage_then_modify_yaml_then_import
description:This case is used to test xcat-inventory import a osimage , then modify the export yaml file, then import the yaml file
cmd:mkdir -p /tmp/export_single_osimage_then_modify_yaml_then_import
check:rc==0
cmd:ssh $$DSTMN 'mkdir -p /tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/'
check:rc==0
cmd:lsdef -t osimage -o bogus_image >/dev/null 2>&1;if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi
check:rc==0
cmd:ssh $$DSTMN 'lsdef -t osimage -o bogus_image > /dev/null 2>&1; if [[ $? -eq 0 ]]; then lsdef -t osimage -o bogus_image -z >/tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/bogus_image.stanza ;rmdef -t osimage -o bogus_image;fi'
check:rc==0
cmd:chdef -t osimage -o bogus_image addkcmdline=1111 boottarget=1111 cfmdir=1111 crashkernelsize=1111 description=1111 driverupdatesrc=1111 dump=1111 exlist=1111 groups=1111 imagename=1111 imagetype=linux isdeletable=1111 kerneldir=1111 kernelver=1111 kitcomponents=1111 krpmver=1111 netdrivers=1111 nodebootif=1111 osarch=1111 osdistroname=1111 osname=1111 osupdatename=1111 osvers=1111 otherifce=1111 otherpkgdir=1111 otherpkglist=1111 partitionfile=1111 permission=1111 pkgdir=1111 pkglist=1111 postbootscripts=1111 postinstall=1111 postscripts=1111 profile=compute provmethod=statelite rootfstype=nfs rootimgdir=1111 serverrole=1111 synclists=1111 template=1111 usercomment=1111
check:rc==0
cmd:lsdef -t osimage -o bogus_image -z|sed 's/1111/2222/g'|sort -t'=' -k1 |tee /tmp/export_single_osimage_then_modify_yaml_then_import/src_bogus_osimage.stanza
check:rc==0
cmd:sed -i 's/profile=compute/profile=service/g' /tmp/export_single_osimage_then_modify_yaml_then_import/src_bogus_osimage.stanza
check:rc==0
cmd:sed -i 's/provmethod=statelite/provmethod=netboot/g' /tmp/export_single_osimage_then_modify_yaml_then_import/src_bogus_osimage.stanza
check:rc==0
cmd:sed -i 's/rootfstype=nfs/rootfstype=ramdisk/g' /tmp/export_single_osimage_then_modify_yaml_then_import/src_bogus_osimage.stanza
check:rc==0
cmd:xcat-inventory export --format=yaml -t osimage -o bogus_image |tee /tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.yaml
check:rc==0
cmd:sed -i 's/1111/2222/g' /tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.yaml
check:rc==0
cmd:sed -i "s/role: '*compute'*/role: 'service'/g" /tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.yaml
check:rc==0
cmd:sed -i "s/provision_mode: '*statelite'*/provision_mode: 'netboot'/g" /tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.yaml
check:rc==0
cmd:sed -i "s/rootfstype: '*nfs'*/rootfstype: 'ramdisk'/g" /tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.yaml
check:rc==0
cmd:scp /tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.yaml $$DSTMN:/tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/
check:rc==0
cmd: rmdef -t osimage -o bogus_image
check:rc==0
cmd: ssh $$DSTMN 'xcat-inventory import -f /tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/bogus_image.yaml -t osimage -o bogus_image'
check:rc==0
cmd: ssh $$DSTMN 'lsdef -t osimage -o bogus_image -z |sort -t'=' -k1|tee /tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/dst_bogus_image.stanza'
check:rc==0
cmd: scp $$DSTMN:/tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/dst_bogus_image.stanza /tmp/export_single_osimage_then_modify_yaml_then_import/dst_bogus_image.stanza
check:rc==0
cmd: cat /tmp/export_single_osimage_then_modify_yaml_then_import/dst_bogus_image.stanza
check:rc==0
cmd:diff -y /tmp/export_single_osimage_then_modify_yaml_then_import/src_bogus_osimage.stanza /tmp/export_single_osimage_then_modify_yaml_then_import/dst_bogus_image.stanza
check:rc==0
cmd:ssh $$DSTMN 'rmdef -t osimage -o bogus_image'
check:rc==0
cmd:if [[ -e /tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.stanza ]]; then cat /tmp/export_single_osimage_then_modify_yaml_then_import/bogus_image.stanza | mkdef -z;fi
check:rc==0
cmd:ssh $$DSTMN 'if [[ -e /tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/bogus_image.stanza ]]; then cat /tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/bogus_image.stanza | mkdef -z;fi'
check:rc==0
cmd:ssh $$DSTMN 'rm -rf /tmp/export_single_osimage_then_modify_yaml_then_import_$$DSTMN/'
check:rc==0
cmd:rm -rf /tmp/export_single_osimage_then_modify_yaml_then_import
check:rc==0
end

File diff suppressed because it is too large Load Diff

View File

@ -847,7 +847,11 @@ sub load_case {
return 1;
}
while ($line = <$fd>) {
$line =~ s/^\s+|#[^!].+|\s+$//g;
if($newcmdstart){
$line =~ s/\s+$//g ;
}else{
$line =~ s/^\s+|#[^!].+|\s+$//g ;
}
#skip blank and comment lines
next if (length($line) == 0 || ($line =~ /^\s*#/));