Skip to content

Build: Do not run two builds in one GitHub Actions Job #2482

@ann0see

Description

@ann0see

What is the current behaviour and why should it be changed?
Jamulus for macOS (and Debian) is being built in one job twice. There are some issues:

  1. macOS server and client binaries are basically almost the same. There's no technical need to have two almost identical binaries installed. JamulusServer.app should call Jamulus.app with the -s argument (maybe with a script or something smaller than a full Jamulus build). This might imply some changes in the build process - and should still not have visible changes for the user.
  2. The debian build consists of headless and gui builds which are both being built in the same job. CodeQl might not be able to detect two builds

Describe possible approaches

To 1: Provide a small .app which calls Jamlus.app with the -s argument (probably Automator could produce this app). However we should still allow the user to "only copy the server to his applications folder" (not sure how we handle this)
To 2: Maybe parallel builds could be implemented

Has this feature been discussed and generally agreed?
No, but see @hoffie s comment #2476 (comment):

Running Jamulus.app with -s might be possible (I haven't investigated where this "starter" is defined). Right now it is being implemented with a define (SERVER_BUNDLE) which changes the behavior of the actual binary.
I think both this case and Linux (HEADLESS) is problematic for building in a single go.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions