@steve31415/baselib 2.4.1 → 2.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -397,9 +397,11 @@ export async function runDeploy(options) {
397
397
  })),
398
398
  timingsMs: timer.timings,
399
399
  });
400
- if (hold && !hold.heldShas.includes(sha)) {
400
+ if (hold) {
401
+ // A successful deploy clears any hold: either a different SHA shipped
402
+ // (the fix landed) or the operator deliberately overrode the hold.
401
403
  await clearHold(runner, holdUri);
402
- log('cleared rollback hold (a newer build deployed successfully)');
404
+ log('cleared rollback hold');
403
405
  }
404
406
  log(`deployed ${sha.slice(0, 12)} (${record})`);
405
407
  log(`timings:\n${timer.table()}`);
@@ -141,7 +141,8 @@ export function releaseEntriesFrom(rows, prefix) {
141
141
  return [];
142
142
  return rows.flatMap((row) => {
143
143
  const r = row;
144
- const url = r.url ?? '';
144
+ // `gcloud storage ls --json` appends `#<generation>` to object URLs.
145
+ const url = (r.url ?? '').replace(/#\d+$/, '');
145
146
  const name = url.slice(url.lastIndexOf('/') + 1);
146
147
  const sha = name.endsWith('.json') ? name.slice(0, -5) : '';
147
148
  if (!SHA40.test(sha) || !url.includes(prefix))
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steve31415/baselib",
3
- "version": "2.4.1",
3
+ "version": "2.4.2",
4
4
  "description": "Plasticine new-world shared platform library: logging, auth, service-to-service auth, db, HTTP, sync, app updates",
5
5
  "type": "module",
6
6
  "license": "MIT",