update
This commit is contained in:
@@ -1,32 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Array of known potentially hanging packages
|
||||
hanging_packages=("xmlhttprequest-ssl@latest" "engine.io-parser@latest")
|
||||
|
||||
# Timeout in seconds for each package installation attempt
|
||||
|
||||
|
||||
install_with_timeout() {
|
||||
package=$1
|
||||
echo "Attempting to install $package with a timeout of $timeout_duration seconds."
|
||||
# Start npm install in the background
|
||||
npm install $package --verbose &> $package.log &
|
||||
|
||||
# Get PID of the npm process
|
||||
pid=$!
|
||||
|
||||
# Wait for the npm process to finish or timeout
|
||||
(sleep $timeout_duration && kill -0 $pid 2>/dev/null && kill -9 $pid && echo "Timeout reached for $package, process killed." && echo $package >> exclude.log) &
|
||||
waiter_pid=$!
|
||||
|
||||
# Wait for the npm process to complete
|
||||
wait $pid
|
||||
|
||||
# Kill the waiter process in case npm finished before the timeout
|
||||
kill -0 $waiter_pid 2>/dev/null && kill -9 $waiter_pid
|
||||
}
|
||||
|
||||
# Install potentially hanging packages first with a timeout
|
||||
for package in "${hanging_packages[@]}"; do
|
||||
install_with_timeout $package
|
||||
done
|
||||
Reference in New Issue
Block a user