MCPcopy Create free account
hub / github.com/decaporg/decap-cms / resetOriginRepo

Function resetOriginRepo

cypress/plugins/gitlab.js:114–140  ·  view source on GitHub ↗
({ owner, repo, tempDir })

Source from the content-addressed store, hash-verified

112}
113
114async function resetOriginRepo({ owner, repo, tempDir }) {
115 console.log('Resetting origin repo:', `${owner}/${repo}`);
116
117 const { token } = getEnvs();
118 const client = getGitLabClient(token);
119
120 const projectId = `${owner}/${repo}`;
121 const mergeRequests = await client.MergeRequests.all({
122 projectId,
123 state: 'opened',
124 });
125 const ids = mergeRequests.map(mr => mr.iid);
126 console.log('Closing merge requests:', ids);
127 await Promise.all(
128 ids.map(id => client.MergeRequests.edit(projectId, id, { state_event: 'close' })),
129 );
130 const branches = await client.Branches.all(projectId);
131 const toDelete = branches.filter(b => b.name !== 'master').map(b => b.name);
132
133 console.log('Deleting branches', toDelete);
134 await Promise.all(toDelete.map(branch => client.Branches.remove(projectId, branch)));
135
136 console.log('Resetting master');
137 const git = getGitClient(tempDir);
138 await git.push(['--force', 'origin', 'master']);
139 console.log('Done resetting origin repo:', `${owner}/${repo}`);
140}
141
142async function resetRepositories({ owner, repo, tempDir }) {
143 await resetOriginRepo({ owner, repo, tempDir });

Callers 1

resetRepositoriesFunction · 0.70

Calls 5

getGitLabClientFunction · 0.85
getGitClientFunction · 0.85
mapMethod · 0.80
filterMethod · 0.80
getEnvsFunction · 0.70

Tested by

no test coverage detected