Skip to content

Further reduce CI load #1392

@bertfrees

Description

@bertfrees

Follow-up of #1364.

  • Do we need to run any checks on pushes to master if we also run them on pull requests and we make pull requests for everything?
  • Run certain workflows only if the main workflow succeeds (e.g. emscripten, mingw, ...)
  • Make sure Fuzz lou_translateString is not run in forks
  • Run code formatting check only on changes to C files in the "liblouis" or "tools" directories
  • Run sanitizer checks only on changes to C files in the "liblouis" or "tools" directories
  • Run mingw workflow only on changes to C files in the "liblouis" or "tools" directories
  • Run license check only on changes in the "tables" directory (done for pushes to master but not for pull requests)
  • Extend the code formatting check with a check to see if fuzzing.yml needs to be updated
  • Some actions could be combined in a single workflow, e.g metadata, license and code formatting and checks, and the check to see if fuzzing.yml needs to be updated
  • Run make distcheck only if make check succeeds
  • The emscripten workflow could in principle only be executed on changes to C code. The reason why we do it on all changes is because we also want to apply table changes to https://github.com/liblouis/js-build/tree/master/tables. We could try to find an alternative for that. Note that we don't need table and test changes for the purpose of re-running tests because the tests are currently disabled. Also note that uploading build-no-tables-utf32.js to the "snapshot" release should ideally only be done when a win32 artifact is also uploaded, otherwise the reference to the commit hash in the release description isn't technically correct. Currently the mingw workflow is run only on changes to C code, but note that it would also make sense to do it on table (and test) changes, because the workflow runs the tests, and the resulting build artifact includes the tables.

Metadata

Metadata

Assignees

No one assigned

    Labels

    build systemAnything related to Autotools, the Windows build, CI, Fuzz, etc.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions