Skip to content

feat: support checkout field in importable shared workflows #26279

@yskopets

Description

@yskopets

Problem

When using the SideRepoOps pattern, every workflow that targets a side repository must define its own checkout block. For example:

checkout:
  - repository: org/target-repo
    ref: master
    path: target-repo
    current: true

This is repetitive boilerplate that cannot currently be centralized in a shared import, even though other side-repo-ops configuration like github-app and tools.github.mode: remote already support being defined in shared imports.

Proposed Solution

Allow the checkout field to be defined in shared/importable workflows so it gets merged into the importing workflow — similar to how github-app and tools.github fields are already handled.

This would allow a shared import (e.g. shared/side-repository.md) to declare:

checkout:
  - repository: org/target-repo
    ref: master
    path: target-repo
    current: true

And any workflow importing it would automatically inherit the checkout configuration without repeating it.

Use Case

Side-repo-ops workflows that all target the same repository could centralize the checkout block in their shared import, reducing duplication and ensuring consistency across all workflows in the pattern.


This issue was filed by Claude Code on behalf of a user.

Metadata

Metadata

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions