Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

checklist & prune script field #338

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
128 changes: 128 additions & 0 deletions CHECKLIST.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
# Platform Release Checklist

**Legend:** [ 2M ] - Second Machine

## Dev

- [ ] `./pear.dev sidecar shutdown`
davidmarkclements marked this conversation as resolved.
Show resolved Hide resolved
- [ ] `git pull`
- [ ] `npm install`
- [ ] `rm -fr by-arch`
- [ ] `npm run archdump`
- [ ] `rm -fr node_modules`
- [ ] `npm install --omit=dev`
- [ ] `npm run prune`
mafintosh marked this conversation as resolved.
Show resolved Hide resolved
- [ ] `./pear.dev sidecar` (own terminal)
- [ ] `./pear.dev seed dev` (own terminal)
- [ ] `rm package-lock.json`
- [ ] `./pear.dev stage --dry-run dev`
- **Dry Run Correct?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- [ ] - [ 2M ] `pear sidecar --key=[devkey]`
- [ ] - [ 2M ] `pear sidecar`
- **[ 2M ] Version is latest?**
- [ ] NO: wait for update, then [ 2M ] `pear sidecar`
- [ ] YES: continue
- [ ] - [ 2M ] Open Keet
- [ ] - `./pear.dev stage dev`
- **[ 2M ] Update observed in Sidecar and Keet?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- **[ 2M ] Platform Restart via Keet Button successful?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- [ ] - [ 2M ] `pear sidecar`
- **[ 2M ] System Pear is Latest `dev`?**
- [ ] - NO: diagnose, correct, if platform issue resolved, [restart](./CHECKLIST.md), if system issue resolved then YES
- [ ] - YES:
- **RC Versioned?**
- [ ] - NO:
- [ ] - `npm version <major.minor.patch-rc.n>`, `git push --follow-tags`
- [ ] - [restart](./CHECKLIST.md)
- [ ] - YES: continue to **Staging**


## Staging

- **RC Versioned?**
- [ ] - NO: complete **Dev**
- [ ] - YES: continue
- **System Pear is on Latest Devkey?**
- [ ] - NO: ensure devkey is seeding, ensure pear sidecar --key is correct, ensure sys sidecar is on latest, then continue
- [ ] - YES: continue
- [ ] - `pear seed staging` (own terminal)
- [ ] - `pear dump <devkey> .`
- [ ] - `pear stage --dry-run staging`
- **Dry Run Correct?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- [ ] - [ 2M ] `pear sidecar --key=[stagekey]`
- [ ] - [ 2M ] `pear sidecar`
- **[ 2M ] Version is latest?**
- [ ] NO: wait for update, then [ 2M ] `pear sidecar`
- [ ] YES: continue
- [ ] - [ 2M ] Open Keet
- [ ] - `pear stage staging`
- **[ 2M ] Update observed in Sidecar and Keet?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- **[ 2M ] Platform Restart via Keet Button successful?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- [ ] - [ 2M ] `pear sidecar`
- **[ 2M ] 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 YES
- [ ] YES:
- **Changelog Updated & Versioned?**
- [ ] - NO:
- [ ] - Update Changelog, `git push`
- [ ] - `npm version <major.minor.patch>`, `git push --follow-tags`
- [ ] - Complete **Dev** & **Staging** Checklists
- [ ] - YES: continue to **Release-Candidate**


## Release-Candidate

- **Changelog Updated & Versioned?**
- [ ] - NO:
- [ ] - complete **Staging**
- [ ] YES: continue
- **System Pear is on Latest Stagekey or on Devkey matching Stagekey?**
- [ ] - NO: ensure stagekey is seeding, ensure `pear sidecar --key` is correct, ensure sys sidecar is on latest, then continue
- [ ] - YES: continue
- [ ] - `pear seed staging` (own terminal)
- [ ] - `pear dump <devkey> .`
- [ ] - `pear stage --dry-run staging`
- [ ] - `pear seed rc` (own terminal)
- [ ] - `pear dump <stagekey> .`
- [ ] - `pear stage --dry-run rc`
- **Dry Run Correct?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- [ ] - [ 2M ] `pear sidecar --key=[stagekey]`
- [ ] - [ 2M ] `pear sidecar`
- **[ 2M ] Version is latest?**
- [ ] NO: wait for update, then [ 2M ] `pear sidecar`
- [ ] YES: continue
- [ ] - [ 2M ] Open Keet
- [ ] - `pear stage staging`
- **[ 2M ] Update observed in Sidecar and Keet?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- **[ 2M ] Platform Restart via Keet Button successful?**
- [ ] - NO: diagnose, correct, [restart](./CHECKLIST.md)
- [ ] - YES:
- [ ] - [ 2M ] `pear sidecar`
- **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

- **Has Drive Watcher triggered in Keet Multisig Room and have two stakeholders signed blobs and drive?**
- [ ] - NO: await stakeholder signing
- [ ] - YES: use signatures to write to production hypercore [ TODO: SPECIFIC STEPS ]
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -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": {
Expand Down
1 change: 0 additions & 1 deletion scripts/bootstrap.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
#!/usr/bin/env bare
'use strict'

const { platform, arch, isWindows, isBare } = require('which-runtime')
const fs = isBare ? require('bare-fs') : require('fs')
const path = isBare ? require('bare-path') : require('path')
Expand Down