Skip to content

Fleet Merge

Fleet Merge #10

Workflow file for this run

# Generated by @google/jules-fleet init
# https://github.com/google-labs-code/jules-sdk
name: Fleet Merge
on:
schedule:
- cron: '0 */3 * * *'
workflow_dispatch:
inputs:
mode:
description: 'PR selection mode'
type: choice
options:
- label
- fleet-run
default: 'label'
fleet_run_id:
description: 'Fleet run ID (required for fleet-run mode)'
type: string
default: ''
redispatch:
description: 'Enable smart conflict resolution'
type: boolean
default: true
concurrency:
group: fleet-merge
cancel-in-progress: true
jobs:
merge:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
- run: |
REDISPATCH_FLAG="--redispatch"
if [ "${{ inputs.redispatch }}" = "false" ]; then
REDISPATCH_FLAG=""
fi
npx -y --package=@google/jules-fleet jules-fleet merge --mode ${{ inputs.mode || 'label' }} --run-id "${{ inputs.fleet_run_id }}" $REDISPATCH_FLAG
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
JULES_API_KEY: ${{ secrets.JULES_API_KEY }}
FLEET_APP_ID: ${{ secrets.FLEET_APP_ID }}
FLEET_APP_PRIVATE_KEY_BASE64: ${{ secrets.FLEET_APP_PRIVATE_KEY_BASE64 }}
FLEET_APP_INSTALLATION_ID: ${{ secrets.FLEET_APP_INSTALLATION_ID }}