Skip to content
  • Thomas Huth's avatar
    12a917a1
    gitlab-ci.yml: Avoid recompiling the sources in the test jobs · 12a917a1
    Thomas Huth authored
    
    
    Currently, our check-system-* jobs are recompiling the whole sources
    again. This happens due to the fact that the jobs are checking out
    the whole source tree and required submodules again, and only try
    to use the "build" directory with the binaries and object files as an
    artifact from the previous stage - which simply does not work right
    anymore (with the current version of meson). Due to some changed
    time stamps, meson/ninja are always trying to rebuild the whole tree.
    
    In the long run, we could likely use "meson test --no-rebuild", but
    there is still some work going on in that area to improve the user
    experience. So until this has been done, simply avoid recompiling the
    sources with a trick: pass NINJA=":" to the make process in the test
    jobs. Also check out the submodules manually before updating the
    timestamps in the build folder, so that the binaries are definitely
    newer that all the source files.
    This saves ca. 10 - 15 minutes of precious CI cycles in each run.
    
    Suggested-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    Message-Id: <20210126065757.403853-1-thuth@redhat.com>
    Tested-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
    Reviewed-by: default avatarWainer dos Santos Moschetta <wainersm@redhat.com>
    Reviewed-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
    Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
    12a917a1
    gitlab-ci.yml: Avoid recompiling the sources in the test jobs
    Thomas Huth authored
    
    
    Currently, our check-system-* jobs are recompiling the whole sources
    again. This happens due to the fact that the jobs are checking out
    the whole source tree and required submodules again, and only try
    to use the "build" directory with the binaries and object files as an
    artifact from the previous stage - which simply does not work right
    anymore (with the current version of meson). Due to some changed
    time stamps, meson/ninja are always trying to rebuild the whole tree.
    
    In the long run, we could likely use "meson test --no-rebuild", but
    there is still some work going on in that area to improve the user
    experience. So until this has been done, simply avoid recompiling the
    sources with a trick: pass NINJA=":" to the make process in the test
    jobs. Also check out the submodules manually before updating the
    timestamps in the build folder, so that the binaries are definitely
    newer that all the source files.
    This saves ca. 10 - 15 minutes of precious CI cycles in each run.
    
    Suggested-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    Message-Id: <20210126065757.403853-1-thuth@redhat.com>
    Tested-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
    Reviewed-by: default avatarWainer dos Santos Moschetta <wainersm@redhat.com>
    Reviewed-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
    Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
Loading