Skip to content

Commit

Permalink
fix: use full name for head branch to allow for repo renaming (#1164)
Browse files Browse the repository at this point in the history
  • Loading branch information
peter-evans authored Apr 8, 2022
1 parent f1a7646 commit bd72e1b
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 11 deletions.
11 changes: 6 additions & 5 deletions dist/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -950,8 +950,11 @@ class GitHubHelper {
repo: repo
};
}
createOrUpdate(inputs, baseRepository, headBranch) {
createOrUpdate(inputs, baseRepository, headRepository) {
return __awaiter(this, void 0, void 0, function* () {
const [headOwner] = headRepository.split('/');
const headBranch = `${headOwner}:${inputs.branch}`;
const headBranchFull = `${headRepository}:${inputs.branch}`;
// Try to create the pull request
try {
core.info(`Attempting creation of pull request`);
Expand All @@ -974,7 +977,7 @@ class GitHubHelper {
}
// Update the pull request that exists for this branch and base
core.info(`Fetching existing pull request`);
const { data: pulls } = yield this.octokit.rest.pulls.list(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { state: 'open', head: headBranch, base: inputs.base }));
const { data: pulls } = yield this.octokit.rest.pulls.list(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { state: 'open', head: headBranchFull, base: inputs.base }));
core.info(`Attempting update of pull request`);
const { data: pull } = yield this.octokit.rest.pulls.update(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { pull_number: pulls[0].number, title: inputs.title, body: inputs.body }));
core.info(`Updated pull request #${pull.number} (${headBranch} => ${inputs.base})`);
Expand All @@ -996,10 +999,8 @@ class GitHubHelper {
}
createOrUpdatePullRequest(inputs, baseRepository, headRepository) {
return __awaiter(this, void 0, void 0, function* () {
const [headOwner] = headRepository.split('/');
const headBranch = `${headOwner}:${inputs.branch}`;
// Create or update the pull request
const pull = yield this.createOrUpdate(inputs, baseRepository, headBranch);
const pull = yield this.createOrUpdate(inputs, baseRepository, headRepository);
// Apply milestone
if (inputs.milestone) {
core.info(`Applying milestone '${inputs.milestone}'`);
Expand Down
17 changes: 11 additions & 6 deletions src/github-helper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,12 @@ export class GitHubHelper {
private async createOrUpdate(
inputs: Inputs,
baseRepository: string,
headBranch: string
headRepository: string
): Promise<Pull> {
const [headOwner] = headRepository.split('/')
const headBranch = `${headOwner}:${inputs.branch}`
const headBranchFull = `${headRepository}:${inputs.branch}`

// Try to create the pull request
try {
core.info(`Attempting creation of pull request`)
Expand Down Expand Up @@ -76,7 +80,7 @@ export class GitHubHelper {
const {data: pulls} = await this.octokit.rest.pulls.list({
...this.parseRepository(baseRepository),
state: 'open',
head: headBranch,
head: headBranchFull,
base: inputs.base
})
core.info(`Attempting update of pull request`)
Expand Down Expand Up @@ -113,11 +117,12 @@ export class GitHubHelper {
baseRepository: string,
headRepository: string
): Promise<Pull> {
const [headOwner] = headRepository.split('/')
const headBranch = `${headOwner}:${inputs.branch}`

// Create or update the pull request
const pull = await this.createOrUpdate(inputs, baseRepository, headBranch)
const pull = await this.createOrUpdate(
inputs,
baseRepository,
headRepository
)

// Apply milestone
if (inputs.milestone) {
Expand Down

0 comments on commit bd72e1b

Please sign in to comment.