|
| 1 | +# Developer Guide |
| 2 | + |
| 3 | +## Releasing dolt-workbench |
| 4 | + |
| 5 | +### 1. Use the `Release dolt-workbench` GitHub Action |
| 6 | + |
| 7 | +See [here](https://github.com/dolthub/dolt-workbench/actions/workflows/cd-release.yaml). The version used should match the `version` in `web/package.json` (which can be updated before or after running this action). |
| 8 | + |
| 9 | +This creates the release and starts two other Actions: generating the release notes and pushing the Docker image to Docker Hub. |
| 10 | + |
| 11 | +### 2. Build and release the desktop app |
| 12 | + |
| 13 | +First, build the graphql-server. |
| 14 | + |
| 15 | +```bash |
| 16 | +# in `graphql-server` |
| 17 | +yarn |
| 18 | +yarn build |
| 19 | +``` |
| 20 | + |
| 21 | +Then install dependencies in `web` and download Dolt. |
| 22 | + |
| 23 | +```bash |
| 24 | +# in web |
| 25 | +yarn |
| 26 | +yarn download:dolt |
| 27 | +``` |
| 28 | + |
| 29 | +If this is your first time releasing dolt-workbench, see more in-depth instructions for set up in [this README](./web/README.desktop-app.md) and [this blog](https://www.dolthub.com/blog/2025-07-31-mac-and-windows-release/). |
| 30 | + |
| 31 | +#### Mac |
| 32 | + |
| 33 | +1. Increment `buildVersion` in `build/mac/builder-mas-config.yaml` and `build/mac/builder-dmg-config.yaml`. |
| 34 | + |
| 35 | +2. Build for Mac Store |
| 36 | + |
| 37 | +```bash |
| 38 | +# in web |
| 39 | +yarn build:mas |
| 40 | +``` |
| 41 | + |
| 42 | +3. Upload `dist/DoltWorkbench-mac-universal.pkg` to the [Transporter app](https://apps.apple.com/us/app/transporter/id1450874784) and click Deliver |
| 43 | + |
| 44 | +4. Go to [appstoreconnect.apple.com](https://appstoreconnect.apple.com/) and click on Apps > Dolt Workbench. Go to the TestFlight tab and assign the `workbench-test` test group to the new version (it may take a bit for it to be delivered by the Transporter app) |
| 45 | + |
| 46 | +5. Make sure the new version works using the [TestFlight](https://apps.apple.com/us/app/testflight/id899247664) app |
| 47 | + |
| 48 | +6. Add a new version using the `+` sign in the left panel. Add a version that matches the `package.json` version. Fill out what's new in this version and choose the build you just tested. Click Submit for Review. |
| 49 | + |
| 50 | +7. Build for outside Mac Store (to attach to the GitHub release) |
| 51 | + |
| 52 | +```bash |
| 53 | +# in web |
| 54 | +yarn build:dmg |
| 55 | +``` |
| 56 | + |
| 57 | +8. Sign the DMG package |
| 58 | + |
| 59 | +```bash |
| 60 | +# in web |
| 61 | +yarn sign-dmg |
| 62 | +``` |
| 63 | + |
| 64 | +9. Attach the generated package in `dist` to the GitHub release that was generated in the first step |
| 65 | + |
| 66 | +#### Windows |
| 67 | + |
| 68 | +Note that you must use a Windows machine for this. |
| 69 | + |
| 70 | +1. Increment the `buildVersion` in `web/build/builder-win-config.yaml` |
| 71 | + |
| 72 | +2. Build the Windows package |
| 73 | + |
| 74 | +```bash |
| 75 | +# in web |
| 76 | +yarn build:win |
| 77 | +``` |
| 78 | + |
| 79 | +3. Log into [Microsoft Partner Center](https://partner.microsoft.com/en-us/dashboard/apps-and-games/overview). To submit, choose DoltHub.Inc -> Apps and Games -> Dolt-Workbench. Choose Start Update in Product Release. |
| 80 | + |
| 81 | +4. Upload the `AppX` file from `dist`. In Product Update > Store listings click on a language and fill out "What's new in this version". Click Submit for certification. |
| 82 | + |
| 83 | +5. Upload the `Application` file file from `dist` to the GitHub release that was generated in the first step |
| 84 | + |
| 85 | +#### Linux |
| 86 | + |
| 87 | +1. Increment the `buildVersion` in `web/build/builder-linux-config.yaml` |
| 88 | + |
| 89 | +2. Build the package for Linux |
| 90 | + |
| 91 | +```bash |
| 92 | +# in web |
| 93 | +yarn build:linux |
| 94 | +``` |
| 95 | + |
| 96 | +3. Upload the `dolt-arm64` and `dolt-x64` binaries located in `web/build/linux` to the GitHub release that was generated in the first step |
0 commit comments