ArchiveBox / ArchiveBox/archivebox-browser-extension

Automated release pipeline

Open
#8 0 comments 0 reactions 0 assignees View on GitHub
tech debt
Dominant language
TypeScript
Stars
477
Forks
43
PR merge metrics
No merged PRs in 30d

Description

When publishing a new version of this extension, these manual steps need to be taken by a human (me!):

**Chrome Web Store**

- Log into dashboard
- Zip extension `dist` directory
- Upload new version
- Update metadata if needed, for e.g. new permissions or changelog
- Submit for review

**Firefox Addons**

- Log into dashboard
- Zip extension `dist` directory
- Zip extension source code (manually excluding all the stuff in the `.gitignore`)
- Upload new version & source code
- Write changelog and reviewer notes
- Submit for review

That's a lot of work! And, more importantly, it's work that can be done by robots. There should be a GitHub Actions workflow that performs these actions on a release:

- [ ] Automatically writes a changelog based on commit messages between last version
- [ ] Automatically packages and uploads to Chrome Web Store
- [ ] Automatically packages and uploads **both** distribution and source to Firefox Addons
- [ ] Uploads a `.crx` and `.xpi` as release artifacts for people that want it for some reason

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by inspecting the repository's existing release configuration, the dist directory, and .gitignore. Determine how a GitHub Actions workflow could package the extension and source, generate a changelog, and authenticate with both store dashboards. Done means a release produces Chrome and Firefox uploads plus .crx and .xpi artifacts, with the listed metadata and review information handled automatically.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, typescript
Domain
ci-cd, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.