24 lines
670 B
Bash
24 lines
670 B
Bash
#!/bin/bash
|
|
|
|
set -euo pipefail # Exit on errors and undefined variables.
|
|
|
|
# Get the directory of this script:
|
|
# https://stackoverflow.com/questions/59895/getting-the-source-directory-of-a-bash-script-from-within
|
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
|
|
|
cd "$DIR"
|
|
|
|
PACKAGE_JSON="$DIR/package.json"
|
|
OLD_HASH=$(md5sum "$PACKAGE_JSON")
|
|
npx npm-check-updates --upgrade --packageFile "$PACKAGE_JSON" --filterVersion "^*"
|
|
NEW_HASH=$(md5sum "$PACKAGE_JSON")
|
|
if [[ "$OLD_HASH" != "$NEW_HASH" ]]; then
|
|
if [[ -f "$DIR/yarn.lock" ]]; then
|
|
yarn install
|
|
elif [[ -f "$DIR/pnpm-lock.yaml" ]]; then
|
|
pnpm install
|
|
else
|
|
npm install
|
|
fi
|
|
fi
|