Oh, good catch. I will not check that part in. Alex
On 09/18/2018 03:22 AM, Hans Nordebaeck wrote:
__________________________________________________________________
NOTICE: This email was received from an EXTERNAL sender
__________________________________________________________________
ack, review only. (Run ok with the legacy uml without plm enabled).
Minor comment, the function cmd_build/install_container_testprog() is
part of ticket #70?
/BR HansN
On 09/17/2018 09:53 PM, Alex Jones wrote:
> Add support for plm to run under uml.
> ---
> src/plm/config/openhpi.conf | 18 ++++
> tools/cluster_sim_uml/archive/scripts/40opensaf.rc | 30 +++++++
> tools/cluster_sim_uml/build_uml | 95 ++++++++++++++++++++--
> 3 files changed, 138 insertions(+), 5 deletions(-)
> create mode 100644 src/plm/config/openhpi.conf
>
> diff --git a/src/plm/config/openhpi.conf
b/src/plm/config/openhpi.conf
> new file mode 100644
> index 000000000..b811de134
> --- /dev/null
> +++ b/src/plm/config/openhpi.conf
> @@ -0,0 +1,18 @@
> +OPENHPI_AUTOINSERT_TIMEOUT = 5000000000
> +OPENHPI_AUTOINSERT_TIMEOUT_READONLY = "NO"
> +
> +# Section for dynamic_simulator plugin
> +handler libdyn_simulator {
> + entity_root = "{ADVANCEDTCA_CHASSIS,2}"
> +# Location of the simulation data file
> +# Normally an example file is installed in the same directory as
openhpi.conf.
> +# Please change the following entry if you have configured another
install
> +# directory or will use your own simulation.data.
> + file = "/etc/openhpi/opensaf-plm-sim.txt"
> + # infos goes to logfile and stdout
> + # the logfile are log00.log, log01.log ...
> +# logflags = "file stdout"
> +# logfile = "dynsim"
> + # if #logfile_max reached replace the oldest one
> +# logfile_max = "5"
> +}
> diff --git a/tools/cluster_sim_uml/archive/scripts/40opensaf.rc
b/tools/cluster_sim_uml/archive/scripts/40opensaf.rc
> index 7df4cfee6..9057d680b 100644
> --- a/tools/cluster_sim_uml/archive/scripts/40opensaf.rc
> +++ b/tools/cluster_sim_uml/archive/scripts/40opensaf.rc
> @@ -76,4 +76,34 @@ echo "$node_name" > /etc/opensaf/node_name
> echo "/tmp/core_%t_%e_%p" > /proc/sys/kernel/core_pattern
> ulimit -c unlimited
>
> +if test -e /etc/plmcd.conf; then
> + sc_1_ip=$(grep "SC-1" /etc/hosts | cut -d' ' -f 1)
> + sc_2_ip=$(grep "SC-2" /etc/hosts | cut -d' ' -f 1)
> + if [ "$node_name" == "SC-1" ]; then
> + ee="Linux_os_hosting_clm_node,safHE=f120_slot_1"
> + path="my_entity =
\"{ADVANCEDTCA_CHASSIS,2}{PHYSICAL_SLOT,1}{SWITCH_BLADE,0}\""
> + elif [ "$node_name" == "SC-2" ]; then
> + ee="Linux_os_hosting_clm_node,safHE=f120_slot_16"
> + path="my_entity =
\"{ADVANCEDTCA_CHASSIS,2}{PHYSICAL_SLOT,16}{SWITCH_BLADE,0}\""
> + else
> + ee="$node_name"
> + fi
> + sed -i -e "s/10.105.1.3/$sc_1_ip/" \
> + -e "s/10.105.1.6/$sc_2_ip/" \
> + -e "s/0020f/safEE=$ee,safDomain=domain_1/" \
> + -e "s/1;os;Fedora;2.6.31/1;os;SUSE;2.6/" \
> + -e "/^\/etc\/init.d/s/^/#/" \
> + /etc/plmcd.conf
> + cp /etc/openhpi/openhpi.conf /var/opt
> + chmod go-rwx /var/opt/openhpi.conf
> + echo "$path" > /etc/openhpi/openhpiclient.conf
> +
> + /usr/sbin/openhpid -c /var/opt/openhpi.conf
> +
> + # wait for hpi to read in hardware info
> + sleep 10
> +
> + /usr/local/sbin/plmcd&
> +fi
> +
> /etc/init.d/opensafd start&
> diff --git a/tools/cluster_sim_uml/build_uml
b/tools/cluster_sim_uml/build_uml
> index 16d49d03e..e54e45753 100755
> --- a/tools/cluster_sim_uml/build_uml
> +++ b/tools/cluster_sim_uml/build_uml
> @@ -121,6 +121,73 @@ cmd_install_testprog() {
> cmd_mkcpio
> }
>
> +cmd_build_container_testprog() {
> + src=$opensaf_home/samples/amf/container
> + libd=$root/usr/local/$lib_dir
> + installd=$root/opt/amf_demo
> +
> + mkdir -p "$installd"
> + cp $src/amf_container_script $installd
> + gcc -g -O2 -Wall -fPIC -I$opensaf_home/src/amf/saf \
> + -I$opensaf_home/src/ais/include \
> + -DSA_EXTENDED_NAME_SOURCE \
> + -o $installd/amf_container_demo $src/amf_container_demo.c \
> + -Wl,--as-needed "-Wl,-rpath-link,$libd:$libd/opensaf" "-L$libd"
-lSaAmf -lopensaf_core
> +
> + echo "Creating [$root/root.cpio] ..."
> + cmd_mkcpio
> +}
> +
> +## install_container_testprog
> +## Build and install the AMF container demo program.
> +##
> +cmd_install_container_testprog() {
> + src=$opensaf_home/samples/amf/container
> + libd=$root/usr/local/$lib_dir
> + installd=$root/opt/amf_demo
> + immxml=$root/etc/opensaf/imm.xml
> + containedXml=$src/AppConfig-contained-2N.xml
> + containerXml=$src/AppConfig-container.xml
> +
> + mkdir -p $installd
> + cp $src/amf_container_script $installd
> + gcc -g -O2 -Wall -fPIC -I$opensaf_home/src/amf/saf \
> + -I$opensaf_home/src/ais/include \
> + -DSA_EXTENDED_NAME_SOURCE \
> + -o $installd/amf_container_demo $src/amf_container_demo.c \
> + -Wl,--as-needed "-Wl,-rpath-link,$libd:$libd/opensaf" "-L$libd"
-lSaAmf
> +
> + test -r $immxml.orig || cp $immxml $immxml.orig
> + $opensaf_home/src/imm/tools/immxml-merge \
> + $immxml.orig $containedXml $containerXml > $immxml
> + $opensaf_home/src/imm/tools/immxml-validate $immxml
> + echo "Creating [$root/root.cpio] ..."
> + cmd_mkcpio
> +}
> +
> +## install_plmtests
> +## Install the PLM tests
> +##
> +cmd_install_plm_tests() {
> + src=$opensaf_home/src/plm/config
> + immxml=$root/etc/opensaf/imm.xml
> + plmXml=$src/plm-sim-imm.xml
> +
> + test -r $immxml.orig || cp $immxml $immxml.orig
> + $opensaf_home/src/imm/tools/immxml-merge \
> + $immxml.orig $plmXml > $immxml
> + $opensaf_home/src/imm/tools/immxml-validate $immxml
> + mkdir -p $root/etc/openhpi
> + cp $src/openhpi.conf $root/etc/openhpi
> + #chmod 0600 $root/etc/openhpi
> + cp $src/opensaf-plm-sim.txt $root/etc/openhpi
> +
> + # enable HPI in the configuration
> + sed -i '/isHpiSupported.*/ {N;
s/isHpiSupported.*<value>0<\/value>/isHpiSupported<\/name>\n\t\t\t<valu
e>1<\/value>/g}' $immxml
> + echo "Creating [$root/root.cpio] ..."
> + cmd_mkcpio
> +}
> +
> ## create_rootfs
> ## Create a (shadow) rootfs with OpenSAF and other required programs.
> ##
> @@ -175,6 +242,7 @@ cmd_create_rootfs()
> test -e /usr/bin/strace && install /usr/bin/strace usr/bin
> test -e /usr/bin/lsof && install /usr/bin/lsof usr/bin
> test -e /bin/pidof && install /bin/pidof usr/bin
> + test -e /bin/prlimit && install /bin/prlimit usr/bin
> test -e /usr/sbin/tcpdump && install /usr/sbin/tcpdump usr/sbin
> test -e /usr/bin/addr2line && install /usr/bin/addr2line usr/bin
> if test -e /usr/bin/gdb; then
> @@ -288,11 +356,22 @@ EOF
> cmd_mkcpio
> fi
>
> - # Remove line for starting plms
> - sed '/PLMD/d' < $root/etc/opensaf/nodeinit.conf.controller > \
> - $root/etc/opensaf/nodeinit.conf.controller.tmp
> - mv $root/etc/opensaf/nodeinit.conf.controller.tmp \
> - $root/etc/opensaf/nodeinit.conf.controller
> + if test -n "$ENABLE_PLM"; then
> + # install OpenHPI
> + if test -e /usr/sbin/openhpid; then
> + cp -a /usr/sbin/openhpid $root/usr/sbin
> + cp -a /usr/bin/hpiinv $root/usr/bin
> + cp -a /usr/bin/hpi_shell $root/usr/bin
> + mkdir -p $root/usr/lib64/openhpi
> + cp -a /usr/lib64/openhpi/libdyn_simulator.so*
$root/usr/lib64/openhpi
> + fi
> + else
> + # Remove line for starting plms
> + sed '/PLMD/d' < $root/etc/opensaf/nodeinit.conf.controller > \
> + $root/etc/opensaf/nodeinit.conf.controller.tmp
> + mv $root/etc/opensaf/nodeinit.conf.controller.tmp \
> + $root/etc/opensaf/nodeinit.conf.controller
> + fi
> }
>
> ## installibs
> @@ -322,6 +401,12 @@ cmd_installibs() {
> fi
> done
>
> + if test -n "$ENABLE_PLM"; then
> + cmd_getlibs $(find . -name osafplmd -or -name libplms_hpi.so)
/usr/sbin/openhpid |\
> + grep -v -e 'libSa\|libimmsv\|libsaf' \
> + -e "^/$lib_dir/ld-\|^/$lib_dir/libc.so" >> $deplib
> + fi
> +
> for n in $(cat $deplib | sort | uniq); do
> # Skip OpenSAF libraries installed on the host
> if echo $n | grep opensaf; then
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Opensaf-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-devel
