diff --git a/.forgejo/workflows/generate-m3u.yml b/.forgejo/workflows/generate-m3u.yml index 1983088..0022c6e 100644 --- a/.forgejo/workflows/generate-m3u.yml +++ b/.forgejo/workflows/generate-m3u.yml @@ -12,24 +12,22 @@ jobs: steps: - name: Checkout Repository uses: actions/checkout@v4 - + - name: Configure Git run: | git config --local user.email "actions@forgejo.plainrock127.xyz" git config --local user.name "IPTV Playlist Bot" - - - name: Setup Python Environment - run: | - echo "Setting up Python environment..." - python3 --version - echo "Setting up directories..." - mkdir -p reports/daily reports/logs backups config - echo "Setup completed" + + - name: Set up Python 3.10 + uses: actions/setup-python@v5 + with: + python-version: '3.10' - name: Check Import File run: | echo "Checking import file..." - if [ -f bulk_import.m3u ]; then + if [ -f bulk_import.m3u ]; + then LINES=$(wc -l < bulk_import.m3u) echo "Found bulk_import.m3u with $LINES lines" else @@ -40,7 +38,8 @@ jobs: - name: Verify Scripts Directory run: | echo "Checking scripts directory..." - if [ -d scripts ]; then + if [ -d scripts ]; + then echo "Scripts directory exists" ls -la scripts/ else @@ -50,11 +49,12 @@ jobs: - name: Run Playlist Generation run: | + set -x # Enable debug output echo "Running playlist generation..." - cd scripts - if [ -f generate_playlist.py ]; then + if [ -f scripts/generate_playlist.py ]; + then echo "Found generate_playlist.py, executing..." - python3 generate_playlist.py + python3 scripts/generate_playlist.py echo "Playlist generation completed" else echo "Error: generate_playlist.py not found" @@ -64,7 +64,8 @@ jobs: - name: Create Simple Report run: | echo "Creating report..." - if [ -f playlist.m3u ]; then + if [ -f playlist.m3u ]; + then CHANNELS=$(grep -c "^#EXTINF" playlist.m3u || echo "0") echo "Found $CHANNELS channels in playlist" @@ -84,10 +85,12 @@ jobs: run: | echo "Cleaning old reports..." cd reports/daily - if ls *.md >/dev/null 2>&1; then + if ls *.md >/dev/null 2>&1; + then COUNT=$(ls *.md | wc -l) echo "Found $COUNT reports" - if [ "$COUNT" -gt 3 ]; then + if [ "$COUNT" -gt 3 ]; + then echo "Removing excess reports..." ls -t *.md | tail -n +4 | xargs rm -f echo "Cleanup done" @@ -107,11 +110,13 @@ jobs: run: | echo "Committing changes..." git add . - if git diff --staged --quiet; then + if git diff --staged --quiet; + then echo "No changes to commit" else CHANNELS="0" - if [ -f playlist.m3u ]; then + if [ -f playlist.m3u ]; + then CHANNELS=$(grep -c "^#EXTINF" playlist.m3u || echo "0") fi git commit -m "📺 Updated playlist with $CHANNELS channels - $(date '+%Y-%m-%d %H:%M')" @@ -122,7 +127,8 @@ jobs: - name: Summary run: | echo "=== WORKFLOW COMPLETE ===" - if [ -f playlist.m3u ]; then + if [ -f playlist.m3u ]; + then CHANNELS=$(grep -c "^#EXTINF" playlist.m3u || echo "0") echo "✅ Playlist has $CHANNELS channels" fi