[why] some containers have start-depends, docker start "${containers[@]}" also cause container service resume failed, need start its dependence firstly. [how] 1. add param(action) to buildall script. 2. if first deploy cci, $action is none, buildall script will execute: - $CONTAINER/build; - $CONTAINER/install; - $CONTAINER/first-run; - $CONTAINER/start script. 3. if reboot, $action will be 'reboot', buildall script will execute: - $CONTAINER/first-run; - $CONTAINER/start script.
Signed-off-by: Liu Yinsi liuyinsi@163.com --- sparrow/4-docker/buildall | 7 +++++-- sparrow/7-systemd/cci-network | 7 ++++--- 2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/sparrow/4-docker/buildall b/sparrow/4-docker/buildall index 230c6ac..6e0a2f8 100755 --- a/sparrow/4-docker/buildall +++ b/sparrow/4-docker/buildall @@ -3,6 +3,7 @@ # Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved.
CONTAINER_PATH="$CCI_SRC/container" +export action=$1
build_depends() { @@ -30,8 +31,10 @@ do_one() ( cd $container [ "$container_name" == 'sub-fluentd' ] && exit - [ -x build ] && ./build - [ -x install ] && ./install + if [ "$action" != "reboot" ]; then + [ -x build ] && ./build + [ -x install ] && ./install + fi [ -x first-run ] && ./first-run [ -x start ] && ./start ) diff --git a/sparrow/7-systemd/cci-network b/sparrow/7-systemd/cci-network index 4aadcdc..6e59dbb 100755 --- a/sparrow/7-systemd/cci-network +++ b/sparrow/7-systemd/cci-network @@ -4,7 +4,8 @@ #this file used in our own systemd unit file: cci-network.service. #contents as follows will be automatically executed after system reboot.
-[[ $CCI_SRC ]] || CCI_SRC=/c/compass-ci +# export ENV +. /etc/profile.d/compass.sh
$CCI_SRC/sparrow/2-network/br0 $CCI_SRC/sparrow/2-network/iptables @@ -12,5 +13,5 @@ $CCI_SRC/sparrow/2-network/nfs $CCI_SRC/sparrow/2-network/cifs
# --restart=always option is not absolutely reliable -containers=($(docker ps -a |grep -v NAMES |awk '{print $NF}')) -[ -n "$containers" ] && docker start "${containers[@]}" >/dev/null 2>&1 +# container need to start its dependences firstly. +$CCI_SRC/sparrow/4-docker/buildall reboot
On Fri, Oct 30, 2020 at 09:12:00AM +0800, Liu Yinsi wrote:
[why] some containers have start-depends, docker start "${containers[@]}" also cause container service resume failed, need start its dependence firstly. [how]
- add param(action) to buildall script.
- if first deploy cci, $action is none, buildall script will execute:
- $CONTAINER/build;
- $CONTAINER/install;
- $CONTAINER/first-run;
- $CONTAINER/start script.
- if reboot, $action will be 'reboot', buildall script will execute: - $CONTAINER/first-run; - $CONTAINER/start script.
ok Thanks sunyukui
Signed-off-by: Liu Yinsi liuyinsi@163.com
sparrow/4-docker/buildall | 7 +++++-- sparrow/7-systemd/cci-network | 7 ++++--- 2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/sparrow/4-docker/buildall b/sparrow/4-docker/buildall index 230c6ac..6e0a2f8 100755 --- a/sparrow/4-docker/buildall +++ b/sparrow/4-docker/buildall @@ -3,6 +3,7 @@ # Copyright (c) 2020 Huawei Technologies Co., Ltd. All rights reserved.
CONTAINER_PATH="$CCI_SRC/container" +export action=$1
build_depends() { @@ -30,8 +31,10 @@ do_one() ( cd $container [ "$container_name" == 'sub-fluentd' ] && exit
[ -x build ] && ./build
[ -x install ] && ./install
if [ "$action" != "reboot" ]; then
[ -x build ] && ./build
[ -x install ] && ./install
[ -x first-run ] && ./first-run [ -x start ] && ./start )fi
diff --git a/sparrow/7-systemd/cci-network b/sparrow/7-systemd/cci-network index 4aadcdc..6e59dbb 100755 --- a/sparrow/7-systemd/cci-network +++ b/sparrow/7-systemd/cci-network @@ -4,7 +4,8 @@ #this file used in our own systemd unit file: cci-network.service. #contents as follows will be automatically executed after system reboot.
-[[ $CCI_SRC ]] || CCI_SRC=/c/compass-ci +# export ENV +. /etc/profile.d/compass.sh
$CCI_SRC/sparrow/2-network/br0 $CCI_SRC/sparrow/2-network/iptables @@ -12,5 +13,5 @@ $CCI_SRC/sparrow/2-network/nfs $CCI_SRC/sparrow/2-network/cifs
# --restart=always option is not absolutely reliable -containers=($(docker ps -a |grep -v NAMES |awk '{print $NF}')) -[ -n "$containers" ] && docker start "${containers[@]}" >/dev/null 2>&1 +# container need to start its dependences firstly.
+$CCI_SRC/sparrow/4-docker/buildall reboot
2.23.0