Skip to content

Commit

Permalink
feat: add github action to sync mellanox fork from k8swg upstream
Browse files Browse the repository at this point in the history
Signed-off-by: Michael Zeevi <[email protected]>
  • Loading branch information
maze88 committed Jul 16, 2024
1 parent a28c842 commit a69af8e
Showing 1 changed file with 59 additions and 0 deletions.
59 changes: 59 additions & 0 deletions .github/workflows/fork-sync.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Fork Sync

on:
schedule:
- cron: '0 0 * * *' # nightly
workflow_dispatch: # enable manual trigger

jobs:
lookup-most-recent-release-branch:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Lookup most recent release branch
id: lookup-most-recent-release-branch
run: |
git fetch --all
echo most_recent_release_branch=$(git branch --remotes --sort refname | grep network-operator- | tail -n 1 | cut -d '/' -f 2-) >> $GITHUB_OUTPUT
outputs:
most_recent_release_branch: ${{ steps.lookup-most-recent-release-branch.outputs.most_recent_release_branch }}

sync-fork:
runs-on: ubuntu-latest
needs: lookup-most-recent-release-branch
strategy:
fail-fast: false
matrix:
branch:
- master
- ${{ needs.lookup-most-recent-release-branch.outputs.most_recent_release_branch }}
steps:
- uses: tgymnich/[email protected]
if: ${{ matrix.branch != '' }}
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
owner: k8snetworkplumbingwg # upstream # TODO: revert to "k8snetworkplumbingwg" after troubleshooting
head: master # upstream
base: ${{ matrix.branch }} # downstream
pr_title: 'sync: from upstream master to ${{ matrix.branch }}'
pr_message: 'Created by [*${{ github.job }}* workflow job](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) to sync changes from [upstream](${{ github.server_url }}/k8snetworkplumbingwg/${{ github.event.repository.name }}) to [downstream](${{ github.server_url }}/${{ github.repository }}).'
retries: 1
retry_after: 3
# token: ${{ secrets.GH_TOKEN_NVIDIA_CI_CD }}
token: ${{ secrets.GITHUB_TOKEN }}
auto_approve: true
auto_merge: true
merge_method: rebase
# - uses: tgymnich/[email protected] # input `auto_approve` is broken in versions above 1.3 (https://github.com/tgymnich/fork-sync/issues/153#issuecomment-1868494745) and at least until 2.0.10
# if: ${{ matrix.branch != '' }}
# with:
# owner: k8snetworkplumbingwg # upstream
# head: master # upstream
# base: ${{ matrix.branch }} # downstream
# github_token: ${{ secrets.GH_TOKEN_NVIDIA_CI_CD }}
# pr_title: 'sync: from upstream master to ${{ matrix.branch }}'
# pr_message: 'Created by [*${{ github.job }}* workflow job](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) to sync changes from [upstream](${{ github.server_url }}/k8snetworkplumbingwg/${{ github.event.repository.name }}) to [downstream](${{ github.server_url }}/${{ github.repository }}).'
# personal_token: ${{ secrets.GITHUB_TOKEN }}
# auto_approve: true
# merge_method: rebase

0 comments on commit a69af8e

Please sign in to comment.