name: Update Gitea Profile & Team Telemetry on: schedule: # Täglich um 00:00 Uhr UTC - cron: '0 0 * * *' # Erlaubt das manuelle Ausführen über das Gitea Web-Interface workflow_dispatch: # Optional: Auch ausführen, wenn manuelle Änderungen an Code oder README gepusht werden push: branches: - main paths-ignore: - 'heatmap.svg' - 'team-stats.svg' - 'README.md' jobs: update-profile: runs-on: ubuntu-latest # Berechtigungen für das Schreiben ins Repository permissions: contents: write steps: - name: 📥 Repository auschecken uses: actions/checkout@v4 with: fetch-depth: 0 token: ${{ secrets.GITEA_TOKEN || secrets.GITHUB_TOKEN }} - name: ⚙️ .NET 10 SDK einrichten uses: actions/setup-dotnet@v4 with: dotnet-version: '10.0.x' - name: 🚀 C# Profile-Manager ausführen env: GITEA_API_URL: 'https://git.webcore-consulting.dev/api/v1' GITEA_USERNAME: 'NickiCloud' GITEA_TOKEN: ${{ secrets.GITEA_TOKEN || secrets.GITHUB_TOKEN }} run: | dotnet run --project src/ProfileManager - name: 📝 Änderungen prüfen, committen und pushen run: | # Git-Identität für den Bot konfigurieren git config --global user.name "NickiBot[bot]" git config --global user.email "bot@webcore-consulting.dev" # Prüfen, ob sich SVG-Dateien oder README.md geändert haben if git status --porcelain | grep -E "(heatmap.svg|team-stats.svg|README.md)"; then echo "Änderungen an Grafiken oder README.md erkannt. Committe..." git add heatmap.svg team-stats.svg README.md # GANZ WICHTIG: [skip ci] verhindert Endlosschleifen in Gitea Actions! git commit -m "chore(profile): update personal & team telemetry [skip ci]" # Änderungen pushen git push echo "Profil & Team-Telemetrie erfolgreich aktualisiert und gepusht! ✨" else echo "Keine Änderungen vorhanden. Alles auf dem neuesten Stand. 👍" fi