Skip to content
This repository has been archived by the owner on Oct 29, 2024. It is now read-only.

Commit

Permalink
feat: fork sync on releases
Browse files Browse the repository at this point in the history
  • Loading branch information
baumgm94 committed Dec 8, 2023
1 parent 2b416a2 commit 4b04efd
Showing 1 changed file with 39 additions and 6 deletions.
45 changes: 39 additions & 6 deletions .github/workflows/fork-sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,48 @@ name: Fork Sync

on:
schedule:
- cron: '0 7 * * 1,4'
# scheduled at 07:00 every Monday and Thursday
- cron: '0 0 * * *'
# scheduled once a day at midnight
workflow_dispatch: # click the button on Github repo!

jobs:
sync:
runs-on: ubuntu-latest
steps:
- uses: tgymnich/[email protected]
with:
base: main
head: main
- name: Checkout code
uses: actions/checkout@v2

- name: Fetch upstream changes
run: |
git remote add upstream https://github.com/ionic-team/stencil.git
git fetch upstream
- name: Check for new release in fork
id: check_fork_release
run: |
FORK_RELEASE=$(git tag -l | sort -V | tail -n 1)
echo "Latest fork release: $FORK_RELEASE"
echo "::set-output name=fork_release_tag::$FORK_RELEASE"
- name: Check for new release in upstream
id: check_upstream_release
run: |
UPSTREAM_RELEASE=$(git ls-remote --tags https://github.com/ionic-team/stencil.git | cut -d '/' -f 3 | sort -V | tail -n 1)
echo "Latest upstream release: $UPSTREAM_RELEASE"
echo "::set-output name=upstream_release_tag::$UPSTREAM_RELEASE"
- name: Create Pull Request
if: steps.check_fork_release.outputs.fork_release_tag != steps.check_upstream_release.outputs.upstream_release_tag
run: |
# Set up your branch for changes
git checkout -b sync-branch
# Make changes, update files, etc. based on the new release
# Commit and push changes to your forked repository
git add .
git commit -m "Sync with upstream release ${{ steps.check_upstream_release.outputs.upstream_release_tag }}"
git push origin sync-branch
# Create Pull Request
gh pr create --base main --head sync-branch --title "Sync with upstream release ${{ steps.check_upstream_release.outputs.upstream_release_tag }}" --body "Syncing with the latest upstream release."

0 comments on commit 4b04efd

Please sign in to comment.