Upstream Sync #169
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Upstream Sync | |
| permissions: | |
| contents: write | |
| on: | |
| schedule: | |
| - cron: "0 0 * * *" | |
| workflow_dispatch: | |
| jobs: | |
| sync_latest_from_upstream: | |
| name: Sync latest commits from upstream repo | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| if: ${{ github.event.repository.fork }} | |
| steps: | |
| - name: Checkout target repo | |
| uses: actions/checkout@v4 | |
| with: | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| fetch-depth: 0 | |
| - name: Configure Git | |
| run: | | |
| git config --global user.name 'NET Sentinel Bot' | |
| git config --global user.email '224584266+NetSentinel-Bot@users.noreply.github.com' | |
| - name: Sync upstream changes | |
| id: sync | |
| uses: aormsby/Fork-Sync-With-Upstream-action@v3.4 | |
| with: | |
| upstream_sync_repo: NiREvil/vless | |
| upstream_sync_branch: main | |
| target_sync_branch: main | |
| target_repo_token: ${{ secrets.GITHUB_TOKEN }} | |
| test_mode: false | |
| - name: Handle merge conflicts | |
| if: failure() && steps.sync.conclusion == 'failure' | |
| run: | | |
| echo "⚠️ Merge conflicts detected!" | |
| echo "Please resolve conflicts manually in your fork." | |
| echo "After resolving conflicts, re-run this workflow." | |
| exit 1 | |
| - name: General sync failure | |
| if: failure() && steps.sync.conclusion != 'failure' | |
| run: | | |
| echo "[Error] Due to a change in the workflow file of the upstream repository, GitHub has automatically suspended the scheduled automatic update. You need to manually sync your fork." | |
| exit 1 | |
| - name: Success notification | |
| if: success() | |
| run: | | |
| echo "✅ Successfully synced with upstream repository!" | |
| echo "🔄 Your fork is now up to date with NiREvil/vless" | |
| echo "📅 Sync completed at: $(date)" |