# Perform a subtree sync (pull) using the josh-sync tool once every few days (or on demand).
name: rustc-pull

on:
  workflow_dispatch:
  schedule:
    # Run at 04:00 UTC every Monday and Thursday
    - cron: "0 4 * * 1,4"

env:
  JOSH_SYNC_VERBOSE: true

jobs:
  pull:
    if: github.repository == 'rust-lang/compiler-builtins'
    uses: rust-lang/josh-sync/.github/workflows/rustc-pull.yml@8970a6eb3a6095db68e4d765b3b5fba5e9c42cf6 # main
    with:
      github-app-id: ${{ vars.APP_CLIENT_ID }}
      pr-author: "workflows-compiler-builtins[bot]"
      # https://rust-lang.zulipchat.com/#narrow/channel/219381-t-libs/topic/compiler-builtins.20subtree.20sync.20automation/with/528482375
      zulip-stream-id: 219381
      zulip-topic: "compiler-builtins subtree sync automation"
      zulip-bot-email: "compiler-builtins-ci-bot@rust-lang.zulipchat.com"
      pr-base-branch: main
      branch-name: rustc-pull
    secrets:
      zulip-api-token: ${{ secrets.ZULIP_API_TOKEN }}
      github-app-secret: ${{ secrets.APP_PRIVATE_KEY }}
    permissions:
      contents: write
      pull-requests: write
