Skip to content
Elliot Jordan edited this page Jun 11, 2023 · 2 revisions

Building from source

NOTE: Unless you wish to make customizations (e.g. using your own signing certificate, modifying the name, or changing the bundle identifier) you do not need to build Escrow Buddy from its source code. Use the latest release on GitHub for simplest deployment.

If you do wish to build from source, you'll need Xcode installed. Follow these steps:

  1. Run the build and packaging script:

     ./scripts/build_and_pkg.sh
    
  2. Sign and notarize the resulting package. (Requires an Apple developer account.)

GitHub Actions

This repo uses GitHub Actions workflows to automatically build new versions of Escrow Buddy, make an installer package, and sign/notarize the package. This happens automatically when changes are merged into the main branch, but the workflow can be triggered by adding the buildable label to the PR.

Creating a new release

To build a new version of Escrow Buddy and attach it to a new release on GitHub, project maintainers can follow these steps:

  1. If one does not already exist, commit and push all changes for the new version into a branch. The changes should include, at minimum:

    • Incremented Version and Build numbers. (The version should always follow semantic versioning.)
    • Updates to changelog that describe the new features and changes.
  2. Create a PR that merges the new branch into main. If additional testing is desired, add the buildable label and download/test the resulting artifact on a test Mac.

  3. Merge the PR, then wait for the GitHub Actions workflow to run.

  4. Download the resulting artifact, which should be a signed/notarized pkg file. Inspect the file to ensure its contents are as expected.

  5. Create a new release on GitHub. Add the following:

    • The release title should be Escrow Buddy 1.2.3 (substituting the appropriate version)
    • The associated tag should be v1.2.3 (substituting the appropriate version)
    • The description should be copied from the relevant section of the changelog
    • Upload the signed/notarized pkg file as the release asset
  6. Publish the release.

Clone this wiki locally