Skip to content

make build system smarter by figuring out true changes #70

@williamcroberts

Description

@williamcroberts

The build system is currently using the git diff to figure out if the docker file or an m4 module changed and if so is triggering that build to occur. The problem with this, is any change to a module means that everything gets rebuilt which can cause issues in non-modified containers because of dependency changes in their package managers. To solve this, an easy way would be to capture the true dependencies or changes of the docker file. I propose two solutions:

  1. look at the docker.m4 file for the container and see what "includes" it uses. Then if either the file or included modules are changed, allow the build to go through. This has the drawbacks of needing to look through the include with a grep or something.
  2. The other approach would be to checkout the master branch and type make and record the sha256sum of the built docker files, then checkout the PR and run make again and see what changed based on the sha256sums. This has the drawback on publish where their is no pr event but rather a push event how to define that delta. Approach 1 is probably the right solution.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions