47 lines
1.5 KiB
YAML
47 lines
1.5 KiB
YAML
name: Automatically sync branch from upstream.
|
|
|
|
on:
|
|
schedule:
|
|
- cron: "*/5 * * * *"
|
|
|
|
workflow_dispatch:
|
|
inputs:
|
|
force:
|
|
description: Use GitHub --force push.
|
|
default:
|
|
|
|
repository_dispatch:
|
|
|
|
|
|
jobs:
|
|
Sync-Branch-From-Upstream:
|
|
name: Automatic sync 'master' from The-OpenROAD-Project/OpenSTA
|
|
runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-latest' }}
|
|
|
|
# Only allow one action to run at a time.
|
|
concurrency: sync-branch-from-upstream
|
|
|
|
# Action needs no permissions, as push is granted via adding a deploy key
|
|
# with write access to the $DEPLOY_KEY secret.
|
|
permissions:
|
|
contents: read
|
|
|
|
# Don't run on the upstream repository and only run on the right branch.
|
|
if: ${{ (github.repository != 'The-OpenROAD-Project/OpenSTA') && endsWith(github.ref, '/master') }}
|
|
|
|
steps:
|
|
|
|
- uses: The-OpenROAD-Project/actions/upstream_sync@main
|
|
env:
|
|
HAS_DEPLOY_KEY: ${{ !!(secrets.DEPLOY_KEY) }}
|
|
if: ${{ env.HAS_DEPLOY_KEY == 'true' }}
|
|
with:
|
|
upstreamRepo: The-OpenROAD-Project/OpenSTA
|
|
upstreamBranch: master
|
|
# To always overwrite master branch, set UPSTREAM_SYNC to the exact
|
|
# string 'always overwrite master branch'.
|
|
# You can also manually trigger a workflow dispatch with the force
|
|
# value equal to 'true'.
|
|
force: ${{ github.event.inputs.force || (secrets.UPSTREAM_SYNC == 'always overwrite master branch') }}
|
|
deployKey: ${{ secrets.DEPLOY_KEY }}
|