fix: don't fail on deleting non existent branch
This commit is contained in:
parent
10a735de2f
commit
1e77d4b768
@ -932,22 +932,10 @@ export default class API {
|
|||||||
async deleteUnpublishedEntry(collectionName, slug) {
|
async deleteUnpublishedEntry(collectionName, slug) {
|
||||||
const contentKey = this.generateContentKey(collectionName, slug);
|
const contentKey = this.generateContentKey(collectionName, slug);
|
||||||
const branchName = this.generateBranchName(contentKey);
|
const branchName = this.generateBranchName(contentKey);
|
||||||
return (
|
return this.retrieveMetadata(contentKey)
|
||||||
this.retrieveMetadata(contentKey)
|
.then(metadata => (metadata && metadata.pr ? this.closePR(metadata.pr) : Promise.resolve()))
|
||||||
.then(metadata => (metadata && metadata.pr ? this.closePR(metadata.pr) : Promise.resolve()))
|
.then(() => this.deleteBranch(branchName))
|
||||||
.then(() => this.deleteBranch(branchName))
|
.then(() => this.deleteMetadata(contentKey));
|
||||||
.then(() => this.deleteMetadata(contentKey))
|
|
||||||
// If the PR doesn't exist, then this has already been deleted -
|
|
||||||
// deletion should be idempotent, so we can consider this a
|
|
||||||
// success.
|
|
||||||
.catch(err => {
|
|
||||||
if (err.message === 'Reference does not exist') {
|
|
||||||
return Promise.resolve();
|
|
||||||
}
|
|
||||||
console.error(err);
|
|
||||||
return Promise.reject(err);
|
|
||||||
})
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async publishUnpublishedEntry(collectionName, slug) {
|
async publishUnpublishedEntry(collectionName, slug) {
|
||||||
@ -1003,7 +991,16 @@ export default class API {
|
|||||||
}
|
}
|
||||||
|
|
||||||
deleteBranch(branchName) {
|
deleteBranch(branchName) {
|
||||||
return this.deleteRef('heads', branchName);
|
return this.deleteRef('heads', branchName).catch(err => {
|
||||||
|
// If the branch doesn't exist, then it has already been deleted -
|
||||||
|
// deletion should be idempotent, so we can consider this a
|
||||||
|
// success.
|
||||||
|
if (err.message === 'Reference does not exist') {
|
||||||
|
return Promise.resolve();
|
||||||
|
}
|
||||||
|
console.error(err);
|
||||||
|
return Promise.reject(err);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
async createPR(title, head) {
|
async createPR(title, head) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user