61 lines
1.3 KiB
Bash
Executable File
61 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# Automatischer Fix fuer Vulnerabilities
|
|
|
|
set -e
|
|
|
|
# Farben
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m'
|
|
|
|
echo "Dependency Vulnerability Fix"
|
|
echo "============================"
|
|
echo ""
|
|
|
|
# Package Manager erkennen
|
|
if [ -f "pnpm-lock.yaml" ]; then
|
|
PKG_MANAGER="pnpm"
|
|
elif [ -f "yarn.lock" ]; then
|
|
PKG_MANAGER="yarn"
|
|
else
|
|
PKG_MANAGER="npm"
|
|
fi
|
|
|
|
# Vorher: Audit Status
|
|
echo -e "${YELLOW}Status vor Fix:${NC}"
|
|
$PKG_MANAGER audit 2>/dev/null | tail -5 || true
|
|
echo ""
|
|
|
|
# Fix durchfuehren
|
|
echo -e "${YELLOW}Fuehre automatischen Fix durch...${NC}"
|
|
echo ""
|
|
|
|
case "$PKG_MANAGER" in
|
|
"pnpm")
|
|
# pnpm hat kein direktes audit fix
|
|
echo "pnpm: Update betroffene Pakete..."
|
|
pnpm update
|
|
;;
|
|
"yarn")
|
|
yarn audit fix || yarn upgrade
|
|
;;
|
|
"npm")
|
|
npm audit fix
|
|
;;
|
|
esac
|
|
|
|
echo ""
|
|
|
|
# Nachher: Audit Status
|
|
echo -e "${YELLOW}Status nach Fix:${NC}"
|
|
$PKG_MANAGER audit 2>/dev/null | tail -5 || true
|
|
|
|
echo ""
|
|
echo -e "${GREEN}Fix abgeschlossen!${NC}"
|
|
echo ""
|
|
echo "Naechste Schritte:"
|
|
echo " 1. Teste die Anwendung: pnpm dev"
|
|
echo " 2. Fuehre Tests aus: pnpm test"
|
|
echo " 3. Bei Problemen: git checkout package.json pnpm-lock.yaml"
|