Skip to content

docs(rfc): Add RFC for Phab support in Runway - #761

Open
manjari25 wants to merge 2 commits into
mainfrom
manjari/phab-changeref
Open

manjari25 wants to merge 2 commits into
mainfrom
manjari/phab-changeref

Conversation

@manjari25

Copy link
Copy Markdown
Contributor

Why?

This change helps onboard Phabricator repos to SubmitQueue.

What?

This PR proposes adding phab:// change URI support to Runway's git merger so Phabricator-based repositories can use SubmitQueue end-to-end.

Test Plan

RFC only; code changes to follow.

Issue

Comment thread doc/rfc/runway/phabricator-support.md Outdated
}, nil
```

### 2. SHA resolution in `ensureObject`

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SHA resolution in ensureObject

not sure if understand this part? is this suggesting to fetch from the underlying staging git repo?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes - basically convert the underlying staging ref to a sha.

// tryApply uses the resolved steps
```

### 4. Configurable staging ref format

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Configurable staging ref format

do we need anything in OSS for this? i would assume we can add this internally and not add anything to OSS... leverage GitFarm for git ops

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated the PR per discussion offline.


Object resolution (fetching commits, resolving refs to SHAs, checking staleness) is currently embedded in the git merger. This RFC extracts it into a pluggable interface so the same orchestration logic works with any VCS backend — the OSS git implementation, or an alternative implementation that a deployment substitutes.

```

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

│ └── resolver.go — ObjectResolver interface + shared orchestration

can this resolve be internal to git? i am thinking we just need to get the git commit? can it be just get commit for Phab, get commit for PR and so on. Interface also looks very gitty so make sense to keep that sub-extension under git? Thoughts.

then you end up different objectResolve or changeresolver for github, phab, git, gitlab etc?

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants