IGListKit/scripts/lint.sh
Tim Oliver 5217e7402d Fix SwiftLint script to execute in correct location via the sample apps
Summary:
Periodically the sample apps build jobs would fail. I discovered this was because SwiftLint wasn't executing out of the current location, and so it was throwing an error when it couldn't find the SwiftLint yml file in the correct relative location.

This diff improves the linting script by making sure all of the relative paths are based off the scripts on-disk location.

Reviewed By: fethica

Differential Revision: D50294909

fbshipit-source-id: 3f5f65e629fe311d1b50d3f86bb458839482f5a1
2023-10-13 22:50:38 -07:00

41 lines
1 KiB
Bash
Executable file

#!/bin/bash
# Copyright (c) Meta Platforms, Inc. and affiliates.
#
# This source code is licensed under the MIT license found in the
# LICENSE file in the root directory of this source tree.
# Adds support for Apple Silicon brew directory
if test -d "/opt/homebrew/bin/"; then
PATH="/opt/homebrew/bin/:${PATH}"
export PATH
fi
# Make sure bash executes from the same directory as the script
cd "$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
VERSION="0.50.3"
FOUND=$(swiftlint version)
if which swiftlint >/dev/null; then
swiftlint lint --config ../.swiftlint.yml
else
echo "
Warning: SwiftLint not installed!
You should download SwiftLint to verify your Swift code.
Download from https://github.com/realm/SwiftLint,
or brew install swiftlint.
"
exit
fi
if [ $(swiftlint version) != $VERSION ]; then
echo "
Warning: incorrect SwiftLint installed!
Expected: $VERSION
Found: $FOUND
Download from https://github.com/realm/SwiftLint,
or brew upgrade swiftlint.
"
fi
exit