From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:subject:to:message-id:date:user-agent:mime-version :content-language:content-transfer-encoding; bh=NZT/vgZ/4r+a73jtkAYXaBrmWh38trsKkuav3g7Gi/Y=; b=ErNJwSEn2QUi1kjp/llLfbGLPk2zkPA0eyADSYaBsnlmgUDIHi/88GTjB2d1FCCGeH wg9B25cMlH5HpdUNWTAq538slU4f4xEZrLodrcpjyJkFttVP0voUe+d/oN6hLdnj72dQ cogedifglJEaihZXyNKvPqjmGldFf/4CPBzPWmLlqRn8Vk/EDWkEqlJsW8wItBuYLpi3 U+RwwaHOK12FFHtToO/abPaW9x3Xk+SXFQYWU4CWJGELJ1oY3Xjd8yw/1wKbHOM94uvg i8CnnX4bfP/oC1o/Cuq/7il78F5uKEHmX6iFvazjptrhs6iUZn9XK9phbqj0+JH088H7 LYEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:subject:to:message-id:date:user-agent :mime-version:content-language:content-transfer-encoding; bh=NZT/vgZ/4r+a73jtkAYXaBrmWh38trsKkuav3g7Gi/Y=; b=O7aj3MJmyvkbD/6u63Q7pkSsPcS8xSMhygA6YaqZQ0plxyqi3IsCW756Pi42gF/4hO wRpXr8OcajpeEcPuepAd2e1aqry9T6vdlAZ4u0Ox6SHlzh1pNqn+xYS21fsysTrbjtQZ EFFPdeuySBkqmdXXGywy18fneUON6zUjiPzdWLkZcHUQzy43efwr1/uy227QaI9QO7XK XjjHnvD5CFrEcIKirAZ20Uc75LyrAmHlxoQNPJZdSQi0ZhmnTGhNRkH9THZC/lpR1BVx eX23B6ZbegZJ4JV6ZzbuG+kc+7pcPWk1b4ZWCp9pwPJEE/dr610VBTJ4NFl8x5A7urXG WaHA== X-Gm-Message-State: AOAM530TyJWhSLqwTuk+bpLajaMm9GqDQj9YyPTvt9q6W/OX2GtW2BQs mAiIZEalTAiBfPtuhu0R9yYNzv182TQ= X-Google-Smtp-Source: ABdhPJy5qkIumW65HtkLP6DbwyGXRGmy0FYqPeMEhDW9KqbmUpcDc/MrxcndXujK2LtrVQDjaXtuGQ== X-Received: by 2002:ac2:5a0e:: with SMTP id q14mr10021246lfn.350.1632499162236; Fri, 24 Sep 2021 08:59:22 -0700 (PDT) From: Leonid Krivoshein To: make-initrd@lists.altlinux.org Message-ID: Date: Fri, 24 Sep 2021 18:59:21 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 Content-Type: text/plain; charset=windows-1251; format=flowed Content-Language: ru Content-Transfer-Encoding: 7bit Subject: [make-initrd] [PATCH v1 37/41] fork pipeline: bootchain-loop: added switch retry/noretry X-BeenThere: make-initrd@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: make-initrd@lists.altlinux.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Sep 2021 15:59:25 -0000 Archived-At: List-Archive: --- .../bootchain-core/data/sbin/bootchain-loop | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/make-initrd/features/bootchain-core/data/sbin/bootchain-loop b/make-initrd/features/bootchain-core/data/sbin/bootchain-loop index 229074f..1cf00d3 100755 --- a/make-initrd/features/bootchain-core/data/sbin/bootchain-loop +++ b/make-initrd/features/bootchain-core/data/sbin/bootchain-loop @@ -2,6 +2,7 @@ . bootchain-sh-functions +bcretry="${bcretry:-1}" stepnum="${stepnum:-0}" chainsteps="${chainsteps-}" prevdir="${prevdir-}" @@ -54,6 +55,18 @@ while [ -n "$chainsteps" ]; do prevdir= message "[0] Step '$name' has been passed" + elif [ "$name" = retry ]; then + chainsteps="${chainsteps#$name}" + chainsteps="${chainsteps#,}" + bcretry=1 + message "subsequent steps will restart after failure" + + elif [ "$name" = noretry ]; then + chainsteps="${chainsteps#$name}" + chainsteps="${chainsteps#,}" + bcretry=0 + message "daemon will be stopped immediately after any step failure" + elif [ -x "$exe" ]; then assign "callnum" "\${callnum_$name:-0}" datadir="$mntdir/src/step$stepnum" @@ -85,6 +98,8 @@ while [ -n "$chainsteps" ]; do message "[$callnum] Handler failed (rc=$rc, try=$try)" [ ! -f "$BC_PASSED/$PROG" ] || break 2 + [ "$bcretry" != 0 ] || + break sleep 2 done -- 2.21.0