NOTE: This method of releasing the workbench has now been automated. See "Releasing dolt-workbench (automated)" below.
See here. The version used should match the version in web/package.json (which can be updated before or after running this action).
This creates the release and starts two other Actions: generating the release notes and pushing the Docker image to Docker Hub.
First, build the graphql-server.
# in `graphql-server`
yarn
yarn buildThen install dependencies in web and download Dolt.
# in web
yarn
yarn download:doltIf this is your first time releasing dolt-workbench, see more in-depth instructions for set up in this README and this blog.
-
Increment
buildVersioninbuild/mac/builder-mas-config.yamlandbuild/mac/builder-dmg-config.yaml. -
Build for Mac Store
# in web
yarn build:mas-
Upload
dist/DoltWorkbench-mac-universal.pkgto the Transporter app and click Deliver -
Go to appstoreconnect.apple.com and click on Apps > Dolt Workbench. Go to the TestFlight tab and assign the
workbench-testtest group to the new version (it may take a bit for it to be delivered by the Transporter app) -
Make sure the new version works using the TestFlight app
-
Add a new version using the
+sign in the left panel. Add a version that matches thepackage.jsonversion. Fill out what's new in this version and choose the build you just tested. Click Submit for Review. -
Build for outside Mac Store (to attach to the GitHub release)
# in web
yarn build:dmg- Sign the DMG package
# in web
yarn sign-dmg- Attach the generated package in
distto the GitHub release that was generated in the first step
Note that you must use a Windows machine for this.
-
Increment the
buildVersioninweb/build/builder-win-config.yaml -
Build the Windows package
# in web
yarn build:win-
Log into Microsoft Partner Center. To submit, choose DoltHub.Inc -> Apps and Games -> Dolt-Workbench. Choose Start Update in Product Release.
-
Upload the
AppXfile fromdist. In Product Update > Store listings click on a language and fill out "What's new in this version". Click Submit for certification. -
Upload the
Applicationfile file fromdistto the GitHub release that was generated in the first step
-
Increment the
buildVersioninweb/build/builder-linux-config.yaml -
Build the package for Linux
# in web
yarn build:linux- Upload the
dolt-arm64anddolt-x64binaries located inweb/build/linuxto the GitHub release that was generated in the first step
The input to this GitHub Action is a version number. You should use the version number that you would like to be associated with this release. The action will automatically create a new commit to update the version in web/package.json to the version number you pass here. It will also create a new GitHub release with the title being the new version number.
This action will kick off a separate workflow for Windows, Linux, Mac App Store, and Mac (.dmg) builds. If the builds were successful, you should see
- A new commit bumping the
buildVersionfield by one for each builder config yaml file inweb/build. - The packages uploaded as assets to the new release that was just created.
Note that you can also run each of the platform-specific actions by themselves. For example, if you
run the Release dolt-workbench action and everything succeeds except for the Linux build, you can
run the Build dolt-workbench for Linux action by itself (passing as input an existing release version number),
and it will just build the Linux package and upload it to the release you specified.