MCPcopy
hub / github.com/openupm/openupm / updateReleaseRecords

Function updateReleaseRecords

app/jobs/buildPackage.js:163–202  ·  view source on GitHub ↗
(packageName, remoteTags)

Source from the content-addressed store, hash-verified

161
162// Update release records for given remoteTags.
163const updateReleaseRecords = async function (packageName, remoteTags) {
164 // Remove failed local releases that not listed in remoteTags
165 let releases = await Release.fetchAll(packageName);
166 for (const rel of releases) {
167 if (rel.state == ReleaseState.Failed) {
168 // Remove failed but disappeared release. It happens when
169 // the remote tag has been removed
170 // the remote tag has been re-tagged
171 if (!remoteTags.find(x => x.tag == rel.tag && x.commit == rel.commit)) {
172 logger.warn(
173 {
174 pkg: packageName,
175 rel: `${packageName}@${rel.version}`,
176 tag: rel.tag,
177 commit: rel.commit
178 },
179 "remove failed release that not listed in remoteTags"
180 );
181 await removeRelease(packageName, rel.version);
182 }
183 }
184 }
185 // Convert remoteTags to releases
186 releases = [];
187 for (const remoteTag of remoteTags) {
188 let version = getVersionFromTag(remoteTag.tag);
189 let release = await Release.fetchOne(packageName, version);
190 if (!release) {
191 let record = {
192 packageName,
193 version,
194 commit: remoteTag.commit,
195 tag: remoteTag.tag
196 };
197 release = await Release.save(record);
198 }
199 releases.push(release);
200 }
201 return releases;
202};
203
204// Add build release jobs for given release records.
205const addReleaseJobs = async function (releases) {

Callers 1

buildPackageFunction · 0.85

Calls 2

removeReleaseFunction · 0.85
getVersionFromTagFunction · 0.85

Tested by

no test coverage detected