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>
This commit is contained in:
Kevin Carter 2019-09-16 11:58:25 -05:00 committed by Kevin Carter
parent 34bd57bb9c
commit 250a20c15e
2 changed files with 31 additions and 0 deletions

View File

@ -0,0 +1,30 @@
#!/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)

View File

@ -87,6 +87,7 @@ commands =
{[testenv:yamllint]commands}
{[testenv:whitespace]commands}
{[testenv:shebangs]commands}
bash -c '{toxinidir}/scripts/detect-broken-symlinks.sh'
[testenv:releasenotes]
basepython = python3