Skip to content

Only run Autobuild if necessary #1974

@ann0see

Description

@ann0see

Has this feature been discussed and generally agreed?
Related to #1806
No. However @ignotus666 developed something comparable on the website: jamulussoftware/jamuluswebsite#586

Describe the solution you'd like
Currently the CI runs even if it is not needed (e.g. twice if there's a merge, if .md files which do not contribute to the build are changed,...).
The CI should only run if necessary.

This means if we change...

  • .md files
  • merge to master and we already had a PR run
  • .gitignore/.clang-format* is changed, we don't need to run ci at all

... the CI doesn't have to run

Every PR does not need to:

  • Start a legacy build (since there's a beta release before each build, we'd see if something breaks on older Qt versions)
  • JACK build (not yet implemented)

Note:
if: ${{ contains(steps.jamulus-build-vars.outputs.PUBLISH_TO_RELEASE, 'true') }}

specifies if we have a release or just a normal build.
... but every (beta, nightly,...) release needs to build them all.

Why I consider this as important

  • We're wasting resources (storage, power) --> environment
  • We're wasting time (there should be no need to run multiple builds which take ages all over the exactly same code)

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