Files
27-combi/generate_excel.sh

78 lines
2.1 KiB
Bash
Raw Normal View History

#!/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 ""