diff options
Diffstat (limited to 'mcp/patches')
-rwxr-xr-x | mcp/patches/patch.sh | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/mcp/patches/patch.sh b/mcp/patches/patch.sh index 6c6d646b3..ca5c14111 100755 --- a/mcp/patches/patch.sh +++ b/mcp/patches/patch.sh @@ -1,4 +1,4 @@ -#!/bin/bash -ex +#!/bin/bash -e ############################################################################## # Copyright (c) 2017 Mirantis Inc., Enea AB and others. # All rights reserved. This program and the accompanying materials @@ -7,10 +7,14 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +CI_DEBUG=${CI_DEBUG:-0}; [[ "${CI_DEBUG}" =~ (false|0) ]] || set -x + if [ -r "$1" ]; then while IFS=': ' read -r p_dest p_file; do - if [[ "${p_dest}" =~ $2 ]]; then - patch -fd "${p_dest}" -p1 < "/root/fuel/mcp/patches/${p_file}" + if [[ ! "${p_dest}" =~ '^#' ]] && [[ "${p_dest}" =~ $2 ]] && \ + ! patch --dry-run -Rd "${p_dest}" -r - -s -p1 < \ + "/root/fuel/mcp/patches/${p_file}" > /dev/null; then + patch -fd "${p_dest}" -p1 < "/root/fuel/mcp/patches/${p_file}" fi done < "$1" fi |