From d99fb30cd1ff47cc3658ef4e0f6b599e7d906378 Mon Sep 17 00:00:00 2001 From: DhuldevValekar Date: Fri, 5 Aug 2016 16:23:10 +0530 Subject: [PATCH] Converted process in configurator docker into daemon --- .../nfp/tools/image_builder/Dockerfile | 2 + .../tools/image_builder/configurator_run.sh | 4 +- .../nfp/tools/image_builder/nfp-controller | 38 ++++++++++++++++++ .../contrib/nfp/tools/image_builder/nfp-pecan | 39 +++++++++++++++++++ 4 files changed, 81 insertions(+), 2 deletions(-) create mode 100755 gbpservice/contrib/nfp/tools/image_builder/nfp-controller create mode 100755 gbpservice/contrib/nfp/tools/image_builder/nfp-pecan diff --git a/gbpservice/contrib/nfp/tools/image_builder/Dockerfile b/gbpservice/contrib/nfp/tools/image_builder/Dockerfile index 731fc92500..9837d3366e 100644 --- a/gbpservice/contrib/nfp/tools/image_builder/Dockerfile +++ b/gbpservice/contrib/nfp/tools/image_builder/Dockerfile @@ -46,6 +46,8 @@ RUN cp /usr/local/lib/python2.7/dist-packages/gbpservice/nfp/bin/nfp /usr/bin/ RUN chmod +x /usr/bin/nfp RUN cp /usr/local/lib/python2.7/dist-packages/gbpservice/contrib/nfp/bin/nfp_configurator.ini /etc/ RUN cp /usr/local/lib/python2.7/dist-packages/gbpservice/contrib/nfp/bin/policy.json /etc/ +RUN cp /group-based-policy/gbpservice/contrib/nfp/tools/image_builder/nfp-controller /etc/init.d/ +RUN cp /group-based-policy/gbpservice/contrib/nfp/tools/image_builder/nfp-pecan /etc/init.d/ RUN mkdir -p /var/log/nfp RUN touch /var/log/nfp/nfp_configurator.log RUN touch /var/log/nfp/nfp_pecan.log diff --git a/gbpservice/contrib/nfp/tools/image_builder/configurator_run.sh b/gbpservice/contrib/nfp/tools/image_builder/configurator_run.sh index 73da244bcf..b7367dc24c 100644 --- a/gbpservice/contrib/nfp/tools/image_builder/configurator_run.sh +++ b/gbpservice/contrib/nfp/tools/image_builder/configurator_run.sh @@ -1,9 +1,9 @@ #!/bin/bash service rabbitmq-server start -screen -dmS "configurator" /usr/bin/python2 /usr/bin/nfp --config-file=/etc/nfp_configurator.ini --log-file=/var/log/nfp/nfp_configurator.log +service nfp-controller start cd /usr/local/lib/python2.7/dist-packages/gbpservice/nfp/pecan/api/ python setup.py develop -screen -dmS "pecan" pecan configurator_decider config.py --mode advanced +service nfp-pecan start /bin/bash diff --git a/gbpservice/contrib/nfp/tools/image_builder/nfp-controller b/gbpservice/contrib/nfp/tools/image_builder/nfp-controller new file mode 100755 index 0000000000..c9f0f2fecc --- /dev/null +++ b/gbpservice/contrib/nfp/tools/image_builder/nfp-controller @@ -0,0 +1,38 @@ +#!/bin/sh +PID_FILE=/var/run/nfp_controller.pid + +start_nfp_controller () { + exec start-stop-daemon --quiet --start -m --pidfile $PID_FILE --background --exec /usr/bin/python2 /usr/bin/nfp -- --log-file /var/log/nfp/nfp_configurator.log --config-file /etc/nfp_configurator.ini +} + +stop_nfp_controller () { + exec start-stop-daemon --quiet --stop --signal KILL --pidfile $PID_FILE +} + +status_nfp_controller () { + set +e + wc=`ps -elf|grep nfp |wc -l` + if [ $wc -le 3 ] ; then + echo "nfp controller is NOT running" + else + echo "nfp controller is running" + fi +} + + +case "$1" in + start) + start_nfp_controller + ;; + stop) + stop_nfp_controller + ;; + status) + status_nfp_controller + ;; + *) + echo "Usage: $0 {start|stop|status}" >&2 + RETVAL=1 + ;; +esac + diff --git a/gbpservice/contrib/nfp/tools/image_builder/nfp-pecan b/gbpservice/contrib/nfp/tools/image_builder/nfp-pecan new file mode 100755 index 0000000000..729ba16a3c --- /dev/null +++ b/gbpservice/contrib/nfp/tools/image_builder/nfp-pecan @@ -0,0 +1,39 @@ +#!/bin/sh +# +PID_FILE=/var/run/nfp_pecan.pid + +start_nfp_pecan () { + exec start-stop-daemon --quiet --start -m --pidfile $PID_FILE --background --chdir /usr/local/lib/python2.7/dist-packages/gbpservice/nfp/pecan/api --exec /usr/local/bin/pecan configurator_decider config.py -- --mode advanced +} + +stop_nfp_pecan () { + exec start-stop-daemon --quiet --stop --signal KILL --pidfile $PID_FILE +} + +status_nfp_pecan () { + set +e + wc=`ps -elf|grep pecan |wc -l` + if [ $wc -le 3 ] ; then + echo "nfp pecan is NOT running" + else + echo "nfp pecan is running" + fi +} + +case "$1" in + start) + start_nfp_pecan + ;; + stop) + stop_nfp_pecan + ;; + status) + status_nfp_pecan + ;; + *) + echo "Usage: $0 {start|stop|status}" >&2 + RETVAL=1 + ;; +esac + +