Skip to content

Commit d08a8c2

Browse files
Merge branch 'main' into eric/more-cypress-tests
2 parents a450233 + 75db17d commit d08a8c2

File tree

17 files changed

+765
-399
lines changed

17 files changed

+765
-399
lines changed

README.dev.md

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
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

README.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,9 +227,27 @@ In another shell, start the web server. This will automatically point at the run
227227
GraphQL server (localhost:9002).
228228

229229
```
230-
% cd packages/web
230+
% cd web
231231
web % yarn && yarn compile
232232
web % yarn dev
233233
```
234234

235235
Open your browser to [localhost:3002](http://localhost:3002).
236+
237+
238+
### Run the desktop app
239+
240+
```
241+
% cd web
242+
web % yarn && yarn compile
243+
```
244+
In order to use local Dolt features, you'll need to install Dolt here as well.
245+
```
246+
web % yarn download:dolt
247+
```
248+
Start the Electron app. This will also point at the running GraphQL server (localhost:9002).
249+
```
250+
web % yarn dev:app
251+
```
252+
You should then see the Electron window open on your desktop.
253+

graphql-server/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@
2929
},
3030
"dependencies": {
3131
"@apollo/server": "^4.12.0",
32-
"@dolthub/web-utils": "^0.1.2",
32+
"@dolthub/web-utils": "^0.1.9",
3333
"@nestjs/apollo": "^13.1.0",
34-
"@nestjs/cli": "^11.0.7",
34+
"@nestjs/cli": "^11.0.10",
3535
"@nestjs/common": "^11.0.16",
3636
"@nestjs/config": "^4.0.2",
3737
"@nestjs/core": "^11.0.12",
3838
"@nestjs/graphql": "^13.0.4",
3939
"@nestjs/platform-express": "^11.1.2",
40-
"@nestjs/schematics": "^11.0.5",
40+
"@nestjs/schematics": "^11.0.7",
4141
"@nestjs/terminus": "^11.0.0",
4242
"@nestjs/typeorm": "^11.0.0",
4343
"cookie-parser": "^1.4.7",

0 commit comments

Comments
 (0)