aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Maa <jmaa@berkeley.edu>2024-04-29 12:58:32 -0600
committerGitHub <noreply@github.com>2024-04-29 18:58:32 +0000
commitcc08ab29e3c2c0a7511dd8dea225c28982eaa621 (patch)
treeab988b2ef745730c2c8754d310feff2af6ea7af8
parent62e2032f362a173e9096c1d35705cec82559bcd2 (diff)
Add operation docs (#865)
* Add operation docs * Add warning
-rw-r--r--docs/operations/deployments.md25
1 files changed, 25 insertions, 0 deletions
diff --git a/docs/operations/deployments.md b/docs/operations/deployments.md
new file mode 100644
index 00000000..45c8bd49
--- /dev/null
+++ b/docs/operations/deployments.md
@@ -0,0 +1,25 @@
+# Deployments
+
+We deploy yomitan to the Firefox and Chrome webstore via two channels -- the dev build and the stable build. We do this via a series of Github Actions.
+
+Only collaborators with deployment permissions are allowed to deploy.
+
+## Deploying a dev build
+
+1. Tag the commit with a version number. Like: `git tag 24.4.28.0 HEAD` (do this after pulling in the latest changes in master) or `git tag 24.4.28.0 abc123`
+
+> [!WARNING]
+> You can not use leading zeroes in the version tags (e.g. `24.04.28.0`). Firefox store does not allow them and the deploy will fail.
+
+2. Push the tag to origin. `git push origin 24.4.28.0`
+3. The [`Create prerelease on tag`](https://github.com/themoeway/yomitan/actions/workflows/create-prerelease-on-tag.yml) GH workflow will run and will publish a new release in [Releases](https://github.com/themoeway/yomitan/releases) as well as kick off a workflow each for publishing to Firefox and Chrome.
+4. Find the corresponding `publish-chrome-development` GH action run and unblock the deployment.
+5. Find the corresponding `publish-firefox-development` GH action run and unblock the deployment.
+6. Wait anywhere between 5mins to a few hours for the build to show up on the [Chrome extension page](https://chromewebstore.google.com/detail/yomitan-development-build/glnaenfapkkecknnmginabpmgkenenml). Firefox does not have a yomitan dev listing and users would have to down the extension locally from "Assets" section of each release.
+
+## Deploying a stable build
+
+1. Go to ["Releases"](https://github.com/themoeway/yomitan/releases) and pick a version you want to promote to stable.
+2. On the top right corner click on "Edit" and on the bottom there are two options `Set as a pre-release` and `Set as the latest release`. Uncheck `Set as a pre-release` and check `Set as the latest release`.
+3. This will trigger the [`release`](https://github.com/themoeway/yomitan/actions/workflows/release.yml) workflow which will in turn trigger the `publish-chrome` and `publish-firefox` GH workflows.
+4. Unblock `publish-chrome` and `publish-firefox` respectively and wait 5 mins to a few hours for the extensions to reflect on [Chrome](https://chromewebstore.google.com/detail/yomitan/likgccmbimhjbgkjambclfkhldnlhbnn) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/yomitan/)