Skip to content

Keep latest 60 results #43

Keep latest 60 results

Keep latest 60 results #43

name: Keep latest 60 results
on:
schedule:
# Runs at 5 AM UTC (10 PM PDT / 9 PM PST)
- cron: '0 5 * * *'
# Allows manual trigger from the GitHub UI
workflow_dispatch:
jobs:
cleanup:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Cleanup old test results
run: |
# Count the number of top-level directories (assuming they are dated test results)
total_dirs=$(ls -d 20*/ | wc -l)
echo "Total directories: $total_dirs"
# If there are more than 60 directories, delete the oldest
if [ $total_dirs -gt 60 ]; then
# List directories sorted by date and delete the oldest
ls -dt 20*/ | tail -n +61 | xargs rm -rf
fi
- name: Commit and push changes
run: |
git config --global user.email "action@github.com"
git config --global user.name "GitHub Action"
git add -A
git commit -m "Removed old test results to maintain last 60 results" || echo "No changes to commit"
git push