tripleo-ansible/scripts/detect-broken-symlinks.sh
Kevin Carter 250a20c15e Add test to find broken symlinks
This change adds a test to find all broken symlinks. If any
link is found to be broken the lint check will return the
broken link in stdout and fail.

Change-Id: Iab137405d101e81f8ef9d086c5048108563a3fa7
Signed-off-by: Kevin Carter <kecarter@redhat.com>
2019-09-17 12:29:19 -05:00

31 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
# Copyright 2019 Red Hat, Inc.
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
## Shell Opts ----------------------------------------------------------------
set -o pipefail
set -eu
## Vars ----------------------------------------------------------------------
export PROJECT_DIR="$(dirname $(readlink -f ${BASH_SOURCE[0]}))/../"
## Main ----------------------------------------------------------------------
echo 'Checking for broken symlinks: '
find ${PROJECT_DIR} -type l ! -exec test -e {} \; -print 2>&1 | grep . && exit 1 || (echo clear && exit 0)