Skip to content

ci: Sync issues to a target GitHub project #1235

Description

@dgutierr

Summary

A GitHub Actions workflow that syncs issue lifecycle events from this repo
to a target GitHub Project in another organization.

Goals

  • Automatically add an issue to a target GitHub Project when it is opened
  • Automatically set the project item Status to Done when the issue is closed
  • Support cross-org project targeting with no custom fields required
  • Keep configuration minimal via a single repo variable and secret

Proposed Solution

A workflow triggered on issues: [opened, closed] that uses the GitHub GraphQL
API to:

  1. On opened — add the issue to the target project via addProjectV2ItemById,
    establishing a native link between the project item and the source issue
  2. On closed — find the project item by matching content.node_id to the
    issue's node ID, then update its Status field to Done

Configuration:

  • PSYNC_TARGET (repo variable) — target project in org:project_number
    format (e.g. my-org:1)
  • PSYNC_PAT (repo secret) — PAT with project and read:org scopes on
    the target org

Non-goals

  • Does not sync issue edits, label changes, or assignee updates to the project
  • Does not create or manage custom fields in the target project
  • Does not support GitHub Projects v1 (classic)

Activity

  1. added 5 commits that reference this issue on Mar 16, 2026
    1d1c2c0
    ed8d05f
    e8d29dc
    bc87105
    a25a127
  2. self-assigned this
    on Mar 17, 2026
  3. added a commit that references this issue on Mar 20, 2026
    cc86c46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions