diff --git a/CHECKLIST.md b/CHECKLIST.md new file mode 100644 index 000000000..de91d2c8b --- /dev/null +++ b/CHECKLIST.md @@ -0,0 +1,107 @@ +# Platform Release Checklist + +## Dev + +- [ ] `./pear.dev sidecar shutdown` +- [ ] `git pull` +- Build Update? + - [ ] NO: continue + - [ ] YES: + - [ ] `npm install` + - [ ] `npm run bootstrap -- --dlruntime` +- [ ] `rm -fr node_modules` +- [ ] `npm install --omit=dev` +- [ ] `npm run prune` +- [ ] `./pear.dev sidecar` (own terminal) +- [ ] `./pear.dev seed dev` (own terminal) +- [ ] `./pear.dev stage --dry-run dev` +- Dry Run Correct? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - [ SECOND MACHINE ] `pear sidecar --key=[devkey]` + - [ ] - [ SECOND MACHINE ] `pear sidecar` + - [ ] - Version is latest? + - [ ] NO: wait for update, then `pear sidecar` + - [ ] YES: continue + - [ ] - [ SECOND MACHINE ] Open Keet + - [ ] - `./pear.dev stage dev` + - [ ] [ SECOND MACHINE ] Update observed in Sidecar and Keet? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - [ SECOND MACHINE ] Platform Restart via Keet Button successful? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - `pear sidecar` (own terminal) + - [ ] - System Pear is Latest `dev`? + - [ ] - NO: diagnose, correct, if platform issue resolved, [restart](./CHECKLIST.md), if system issue resolved, continue to **Staging** + - [ ] - YES: continue to **Staging** + +## Staging + +- [ ] - Staging RC Versioned? + - [ ] - NO: + - [ ] - `npm version `, `git push --follow-tags` + - [ ] - Complete Dev Checklists to update +- [ ] - `pear seed staging` (own terminal) +- [ ] - `pear dump .` +- [ ] - `pear stage --dry-run staging` +- Dry Run Correct? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - [ SECOND MACHINE ] `pear sidecar --key=[stagekey]` + - [ ] - [ SECOND MACHINE ] `pear sidecar` + - [ ] - Version is latest? + - [ ] NO: wait for update, then `pear sidecar` + - [ ] YES: continue + - [ ] - [ SECOND MACHINE ] Open Keet + - [ ] - `pear stage staging` + - [ ] [ SECOND MACHINE ] Update observed in Sidecar and Keet? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - [ SECOND MACHINE ] Platform Restart via Keet Button successful? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - `pear sidecar` (own terminal) + - [ ] - System Pear is Latest `staging`? + - [ ] - NO: diagnose, correct, if platform issue resolved, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - Only Changelog and/or Version update? + - [ ] NO: Await QA Approval then continue + - [ ] YES: continue + +## Release-Candidate + +- [ ] - Changelog Updated & Versioned? + - [ ] - NO: + - [ ] - Update Changelog, `git push` + - [ ] - `npm version `, `git push --follow-tags` + - [ ] - Complete Dev & Stage Checklists to update +- [ ] - `pear seed rc` (own terminal) +- [ ] - `pear dump .` +- [ ] - `pear stage --dry-run rc` +- Dry Run Correct? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - [ SECOND MACHINE ] `pear sidecar --key=[stagekey]` + - [ ] - [ SECOND MACHINE ] `pear sidecar` + - [ ] - Version is latest? + - [ ] NO: wait for update, then `pear sidecar` + - [ ] YES: continue + - [ ] - [ SECOND MACHINE ] Open Keet + - [ ] - `pear stage staging` + - [ ] [ SECOND MACHINE ] Update observed in Sidecar and Keet? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - [ SECOND MACHINE ] Platform Restart via Keet Button successful? + - [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md) + - [ ] - YES: + - [ ] - `pear sidecar` (own terminal) + - [ ] - System Pear is Latest Release-Candidate? + - [ ] - NO: diagnose, correct, if platform issue resolved, [restart](./CHECKLIST.md) + - [ ] - YES: Await QA Approval then continue to **Production** + +## Production + +- [ ] - Drive Watcher has triggered in Keet Multisig Room, two stakeholders have signed blobs and drive. + - [ ] - NO: await stakeholder signing + - [ ] - YES: use signatures to write to production hypercore [ TODO: sepcific steps ] \ No newline at end of file diff --git a/package.json b/package.json index e0f64c9bf..92ac4edc1 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,8 @@ "lint": "standard", "lint:fix": "standard --fix", "archdump": "node scripts/bootstrap.js --archdump", - "bootstrap": "node scripts/bootstrap.js" + "bootstrap": "node scripts/bootstrap.js", + "prune": "node scripts/prune-dual-prebuilds.mjs" }, "author": "Holepunch", "pear": {