30 lines
1.1 KiB
Bash
30 lines
1.1 KiB
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
echo "🚀 Starting ALwrity Build Process..."
|
|
|
|
# 1. Update pip and essential build tools
|
|
python -m pip install --upgrade pip setuptools wheel
|
|
|
|
# 2. Install requirements based on mode
|
|
echo "📦 Checking ALWRITY_ENABLED_FEATURES..."
|
|
ENABLED_FEATURES="${ALWRITY_ENABLED_FEATURES:-all}"
|
|
|
|
if [[ "$ENABLED_FEATURES" == *"podcast"* ]]; then
|
|
echo "🔊 Podcast-only mode: Installing lean requirements..."
|
|
python -m pip install --no-cache-dir -r requirements-podcast.txt --only-binary :all: --retries 10 --timeout 120
|
|
else
|
|
echo "📦 Full mode: Installing all requirements..."
|
|
python -m pip install --no-cache-dir -r requirements.txt --only-binary :all: --retries 10 --timeout 120
|
|
# Download spaCy/NLTK models for full mode
|
|
echo "🧠 Installing spaCy and NLTK models..."
|
|
python -m spacy download en_core_web_sm
|
|
python -m nltk.downloader punkt_tab stopwords averaged_perceptron_tagger
|
|
fi
|
|
|
|
# 3. Clean up unnecessary build artifacts
|
|
find . -type d -name "__pycache__" -exec rm -rf {} + 2>/dev/null || true
|
|
rm -rf /root/.cache/pip 2>/dev/null || true
|
|
|
|
echo "✅ Build Complete!"
|