25 lines
842 B
YAML
25 lines
842 B
YAML
name: Beets
|
|
on:
|
|
schedule:
|
|
# Run 4 times a day: 6am, 12pm, 6pm, 12am UTC
|
|
- cron: '0 6,12,18,0 * * *'
|
|
workflow_dispatch: # Allow manual trigger
|
|
|
|
jobs:
|
|
sync-beets:
|
|
runs-on: [home-server]
|
|
steps:
|
|
- name: Run Beets sync
|
|
working-directory: /home/github/infrastructure/infrastructure/home-server/beets
|
|
run: |
|
|
echo "Starting Beets audiobook sync at $(date)"
|
|
git pull
|
|
docker compose pull -q
|
|
docker compose up -d
|
|
docker compose restart
|
|
sleep 2
|
|
docker exec -u 1000 beets bash -c 'beet -v import -i -q /managed/*' || true
|
|
# Clean up empty directories after import (but not /managed itself)
|
|
docker exec -u 1000 beets bash -c 'find /managed -mindepth 1 -type d -empty -delete' || true
|
|
echo "Beets sync completed"
|