Skip to content

Commit

Permalink
Merge pull request #26 from dholbach/add-max-depth
Browse files Browse the repository at this point in the history
Add max depth
  • Loading branch information
gaurav-nelson authored Apr 3, 2020
2 parents 675cb99 + 1d924de commit 2e71dce
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 68 deletions.
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@ You cancustomize the action by using the following variables:
- `folder-path`: By default the `github-action-markdown-link-check` action
checks for all markdown files in your repository. Use this option to limit
checks to only specific folders.
- `max-depth`: Specify how many levels deep you want to check in the directory
structure. By default this is not set, using e.g. `1` will limit to
top-level directory only or `folder-path` only, if set.

#### Sample workflow with variables

Expand All @@ -55,6 +58,7 @@ jobs:
use-verbose-mode: 'yes'
config-file: 'mlc_config.json'
folder-path: 'docs/markdown_files'
max-depth: 2
```

### Scheduled runs
Expand Down
5 changes: 5 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ inputs:
description: 'Specify path to a custom folder where your markdown files are located.'
required: true
default: '.'
max-depth:
description: 'Specify a max-depth of directories you want to search for markdown files.'
required: true
default: '-1'
runs:
using: 'docker'
image: 'Dockerfile'
Expand All @@ -31,3 +35,4 @@ runs:
- ${{ inputs.use-verbose-mode }}
- ${{ inputs.config-file }}
- ${{ inputs.folder-path }}
- ${{ inputs.max-depth }}
91 changes: 23 additions & 68 deletions entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,85 +13,40 @@ USE_QUIET_MODE="$1"
USE_VERBOSE_MODE="$2"
CONFIG_FILE="$3"
FOLDER_PATH="$4"
MAX_DEPTH="$5"

echo -e "${BLUE}USE_QUIET_MODE: $1${NC}"
echo -e "${BLUE}USE_VERBOSE_MODE: $2${NC}"
echo -e "${BLUE}FOLDER_PATH: $4${NC}"
echo -e "${BLUE}MAX_DEPTH: $5${NC}"

if [ "$USE_QUIET_MODE" = "yes" ]; then

if [ "$USE_VERBOSE_MODE" = "yes" ]; then

if [ -f "$CONFIG_FILE" ]; then
echo -e "${BLUE}I found config file ${NC}"
echo -e "${BLUE}Using markdown-link-check configuration file: ${YELLOW}$CONFIG_FILE${NC}"
set -x
find "$FOLDER_PATH" -name \*.md -not -path "./node_modules/*" -exec markdown-link-check {} --config "$CONFIG_FILE" -vq \; &>> error.txt
set +x
else
echo -e "${BLUE}Cannot find ${YELLOW}$CONFIG_FILE${NC}"
echo -e "${YELLOW}NOTE: See https://github.com/tcort/markdown-link-check#config-file-format to know more about"
echo -e "customizing markdown-link-check by using a configuration file.${NC}"
set -x
find "$FOLDER_PATH" -name \*.md -not -path "./node_modules/*" -exec markdown-link-check {} -vq \; &>> error.txt
set +x
fi

else

if [ -f "$CONFIG_FILE" ]; then
echo -e "${BLUE}Using markdown-link-check configuration file: ${YELLOW}$CONFIG_FILE${NC}"
set -x
find "$FOLDER_PATH" -name \*.md -not -path "./node_modules/*" -exec markdown-link-check {} --config "$CONFIG_FILE" -q \; &>> error.txt
set +x
else
echo -e "${BLUE}Cannot find ${YELLOW}$CONFIG_FILE${NC}"
echo -e "${YELLOW}NOTE: See https://github.com/tcort/markdown-link-check#config-file-format to know more about"
echo -e "customizing markdown-link-check by using a configuration file.${NC}"
set -x
find "$FOLDER_PATH" -name \*.md -not -path "./node_modules/*" -exec markdown-link-check {} -q \; &>> error.txt
set +x
fi

fi
FIND_CALL="find ${FOLDER_PATH} -name \*.md -not -path './node_modules/*' -exec markdown-link-check {}"

if [ -f "$CONFIG_FILE" ]; then
echo -e "${BLUE}Using markdown-link-check configuration file: ${YELLOW}$CONFIG_FILE${NC}"
FIND_CALL+=" --config ${CONFIG_FILE}"
else
echo -e "${BLUE}Cannot find ${YELLOW}$CONFIG_FILE${NC}"
echo -e "${YELLOW}NOTE: See https://github.com/tcort/markdown-link-check#config-file-format to know more about"
echo -e "customizing markdown-link-check by using a configuration file.${NC}"
fi
if [ "$5" -ne -1 ]; then
FIND_CALL+=" --maxdepth ${MAX_DEPTH}"
fi

if [ "$USE_VERBOSE_MODE" = "yes" ]; then

if [ -f "$CONFIG_FILE" ]; then
echo -e "${BLUE}Using markdown-link-check configuration file: ${YELLOW}$CONFIG_FILE${NC}"
set -x
find "$FOLDER_PATH" -name \*.md -not -path "./node_modules/*" -exec markdown-link-check {} --config "$CONFIG_FILE" -v \; &>> error.txt
set +x
else
echo -e "${BLUE}Cannot find ${YELLOW}$CONFIG_FILE${NC}"
echo -e "${YELLOW}NOTE: See https://github.com/tcort/markdown-link-check#config-file-format to know more about"
echo -e "customizing markdown-link-check by using a configuration file.${NC}"
set -x
find "$FOLDER_PATH" -name \*.md -not -path "./node_modules/*" -exec markdown-link-check {} -v \; &>> error.txt
set +x
fi

else
if [ "$USE_QUIET_MODE" = "yes" ]; then
FIND_CALL+=" -q"
fi

if [ -f "$CONFIG_FILE" ]; then
echo -e "${BLUE}Using markdown-link-check configuration file: ${YELLOW}$CONFIG_FILE${NC}"
set -x
find "$FOLDER_PATH" -name \*.md -not -path "./node_modules/*" -exec markdown-link-check {} --config "$CONFIG_FILE" \; &>> error.txt
set +x
else
echo -e "${BLUE}Cannot find ${YELLOW}$CONFIG_FILE${NC}"
echo -e "${YELLOW}NOTE: See https://github.com/tcort/markdown-link-check#config-file-format to know more about"
echo -e "customizing markdown-link-check by using a configuration file.${NC}"
set -x
find "$FOLDER_PATH" -name \*.md -not -path "./node_modules/*" -exec markdown-link-check {} \; &>> error.txt
set +x
fi
if [ "$USE_VERBOSE_MODE" = "yes" ]; then
FIND_CALL+=" -v"
fi

fi
FIND_CALL+=" \; &>> error.txt"

fi
set -x
eval "$FIND_CALL"
set +x

if [ -e error.txt ] ; then
if grep -q "ERROR:" error.txt; then
Expand Down

0 comments on commit 2e71dce

Please sign in to comment.