Skip to content

Latest commit

 

History

History
114 lines (73 loc) · 4.3 KB

File metadata and controls

114 lines (73 loc) · 4.3 KB

Developer Guide

Releasing dolt-workbench (manual)

NOTE: This method of releasing the workbench has now been automated. See "Releasing dolt-workbench (automated)" below.

1. Use the Release dolt-workbench GitHub Action

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.

2. Build and release the desktop app

First, build the graphql-server.

# in `graphql-server`
yarn
yarn build

Then install dependencies in web and download Dolt.

# in web
yarn
yarn download:dolt

If this is your first time releasing dolt-workbench, see more in-depth instructions for set up in this README and this blog.

Mac

  1. Increment buildVersion in build/mac/builder-mas-config.yaml and build/mac/builder-dmg-config.yaml.

  2. Build for Mac Store

# in web
yarn build:mas
  1. Upload dist/DoltWorkbench-mac-universal.pkg to the Transporter app and click Deliver

  2. Go to 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)

  3. Make sure the new version works using the TestFlight app

  4. 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.

  5. Build for outside Mac Store (to attach to the GitHub release)

# in web
yarn build:dmg
  1. Sign the DMG package
# in web
yarn sign-dmg
  1. Attach the generated package in dist to the GitHub release that was generated in the first step

Windows

Note that you must use a Windows machine for this.

  1. Increment the buildVersion in web/build/builder-win-config.yaml

  2. Build the Windows package

# in web
yarn build:win
  1. Log into Microsoft Partner Center. To submit, choose DoltHub.Inc -> Apps and Games -> Dolt-Workbench. Choose Start Update in Product Release.

  2. 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.

  3. Upload the Application file file from dist to the GitHub release that was generated in the first step

Linux

  1. Increment the buildVersion in web/build/builder-linux-config.yaml

  2. Build the package for Linux

# in web
yarn build:linux
  1. Upload the dolt-arm64 and dolt-x64 binaries located in web/build/linux to the GitHub release that was generated in the first step

Releasing dolt-workbench (automated)

Use the Release dolt-workbench GitHub Action

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

  1. A new commit bumping the buildVersion field by one for each builder config yaml file in web/build.
  2. 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.