forked from ungleich-public/cdist
		
	[type/__update_alternatives] dry-run fixes
This commit is contained in:
		
					parent
					
						
							
								a7d6481a7d
							
						
					
				
			
			
				commit
				
					
						0b3b47396f
					
				
			
		
					 3 changed files with 16 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -31,8 +31,11 @@ do
 | 
			
		|||
    fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
if [ -z "$link" ]
 | 
			
		||||
if [ -z "$link" ] && [ -z "${__cdist_dry_run+dry run}" ]
 | 
			
		||||
then
 | 
			
		||||
    # NOTE: ignore error for dry-runs because a package providing the link
 | 
			
		||||
    #       might be managed by another cdist object (which wasn't executed,
 | 
			
		||||
    #       because dry run…).
 | 
			
		||||
    echo "unable to get link for ${__object_id:?}" >&2
 | 
			
		||||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,8 +3,11 @@
 | 
			
		|||
path_is="$( update-alternatives --display "${__object_id:?}" 2>/dev/null \
 | 
			
		||||
    | awk '/link currently points to/ {print $5}' )"
 | 
			
		||||
 | 
			
		||||
if [ -z "$path_is" ]
 | 
			
		||||
if [ -z "$path_is" ] && [ -z "${__cdist_dry_run+dry run}" ]
 | 
			
		||||
then
 | 
			
		||||
    # NOTE: ignore error for dry-runs because a package providing the
 | 
			
		||||
    #       alternative might be managed by another cdist object (which
 | 
			
		||||
    #       wasn't executed, because dry run…).
 | 
			
		||||
    echo "unable to get current path for ${__object_id:?}" >&2
 | 
			
		||||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -38,16 +38,19 @@ name=${__object_id:?}
 | 
			
		|||
 | 
			
		||||
if ! grep -Fxq "$path_should" "${__object:?}/explorer/alternatives"
 | 
			
		||||
then
 | 
			
		||||
    if [ ! -f "$__object/parameter/install" ]
 | 
			
		||||
    if [ -f "${__object:?}/parameter/install" ]
 | 
			
		||||
    then
 | 
			
		||||
        link="$( cat "${__object:?}/explorer/link" )"
 | 
			
		||||
        echo "update-alternatives --install '$link' '$name' '$path_should' 1000"
 | 
			
		||||
    elif [ -z "${__cdist_dry_run+dry run}" ]
 | 
			
		||||
    then
 | 
			
		||||
        # NOTE: ignore error for dry-runs because a package providing the link
 | 
			
		||||
        #       to be installed might be managed by another cdist object (which
 | 
			
		||||
        #       wasn't executed, because dry run…).
 | 
			
		||||
        echo "$path_should is not in $name alternatives." >&2
 | 
			
		||||
        echo 'Please install missing packages or use --install to add path to alternatives.' >&2
 | 
			
		||||
        exit 1
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    link="$( cat "$__object/explorer/link" )"
 | 
			
		||||
 | 
			
		||||
    echo "update-alternatives --install '$link' '$name' '$path_should' 1000"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
echo "update-alternatives --set '$name' '$path_should'"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue