78 lines
2.1 KiB
Bash
78 lines
2.1 KiB
Bash
|
|
#!/bin/bash
|
||
|
|
# Linux/WSL script to generate DeFi_Collateral_Simulation.xlsx
|
||
|
|
|
||
|
|
set -e
|
||
|
|
|
||
|
|
# Check if virtual environment exists and is complete
|
||
|
|
if [ ! -d "venv" ] || [ ! -f "venv/bin/activate" ]; then
|
||
|
|
# Remove incomplete venv if it exists
|
||
|
|
if [ -d "venv" ]; then
|
||
|
|
echo "Removing incomplete virtual environment..."
|
||
|
|
rm -rf venv
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo "Creating virtual environment..."
|
||
|
|
if ! python3 -m venv venv 2>&1; then
|
||
|
|
echo ""
|
||
|
|
echo "ERROR: Failed to create virtual environment"
|
||
|
|
echo ""
|
||
|
|
echo "On Debian/Ubuntu systems, install the venv package:"
|
||
|
|
PYTHON_VERSION=$(python3 --version 2>&1 | grep -oP '\d+\.\d+' | head -1)
|
||
|
|
echo " sudo apt install python${PYTHON_VERSION}-venv"
|
||
|
|
echo ""
|
||
|
|
echo "Or install the general package:"
|
||
|
|
echo " sudo apt install python3-venv"
|
||
|
|
echo ""
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Verify venv was created successfully
|
||
|
|
if [ ! -f "venv/bin/activate" ]; then
|
||
|
|
echo ""
|
||
|
|
echo "ERROR: Virtual environment created but activation script is missing"
|
||
|
|
echo "This usually means ensurepip is not available."
|
||
|
|
echo ""
|
||
|
|
PYTHON_VERSION=$(python3 --version 2>&1 | grep -oP '\d+\.\d+' | head -1)
|
||
|
|
echo "Install the venv package:"
|
||
|
|
echo " sudo apt install python${PYTHON_VERSION}-venv"
|
||
|
|
echo ""
|
||
|
|
rm -rf venv
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Activate virtual environment
|
||
|
|
echo "Activating virtual environment..."
|
||
|
|
source venv/bin/activate
|
||
|
|
|
||
|
|
# Install xlsxwriter in virtual environment
|
||
|
|
echo "Installing xlsxwriter..."
|
||
|
|
pip install --quiet --upgrade pip
|
||
|
|
pip install --quiet xlsxwriter
|
||
|
|
|
||
|
|
if [ $? -ne 0 ]; then
|
||
|
|
echo ""
|
||
|
|
echo "ERROR: Failed to install xlsxwriter"
|
||
|
|
echo "Please install Python 3 and venv first:"
|
||
|
|
echo " sudo apt-get install python3-venv"
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "Generating DeFi_Collateral_Simulation.xlsx..."
|
||
|
|
python generate_defi_simulation.py
|
||
|
|
|
||
|
|
if [ $? -ne 0 ]; then
|
||
|
|
echo ""
|
||
|
|
echo "ERROR: Failed to generate workbook"
|
||
|
|
deactivate
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
deactivate
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "SUCCESS: DeFi_Collateral_Simulation.xlsx has been generated!"
|
||
|
|
echo ""
|
||
|
|
|