forked from osmocom/wireshark
GitLab CI: Speed up our fetching/cloning.
Fetching the complete Wireshark repository in GitLab's CI currently takes about 3.5 minutes. GitLab CI lets you do shallow cloning, but only up to 1000 commits. This isn't sufficient for any of our jobs that might need a reachable tag since it's currently about 1200 commits away in master. Set GIT_DEPTH to 1 (which appears to trigger the required shallow clone logic in GitLab's CI), then deepen it by setting GIT_FETCH_EXTRA_FLAGS to "--depth=5000". This is *should* be much faster than a full checkout and still give us a reachable tag: $ git rev-list --count v3.3.0rc0..v3.5.0rc0 2330 $ git rev-list --count v3.1.0rc0..v3.3.0rc0 2198 $ git rev-list --count v2.9.0rc0..v3.1.0rc0 3449
This commit is contained in:
parent
71f4712532
commit
e5adb4b506
|
@ -11,6 +11,12 @@
|
|||
# https://hub.docker.com/r/wireshark/wireshark-ubuntu-dev
|
||||
|
||||
variables:
|
||||
# Ensure that checkouts are a) fast and b) have a reachable tag. In a
|
||||
# brighter, more glorious future we might be able to use --shallow-since:
|
||||
# https://gitlab.com/gitlab-org/gitlab-runner/-/issues/3460
|
||||
# In the mean time, fetching the last 5000 commits does the job.
|
||||
GIT_DEPTH: "1"
|
||||
GIT_FETCH_EXTRA_FLAGS: "--depth=5000"
|
||||
CCACHE_DIR: "${CI_PROJECT_DIR}/ccache"
|
||||
|
||||
.build:
|
||||
|
@ -264,8 +270,6 @@ merge-req:commit-checks:
|
|||
- docker
|
||||
rules:
|
||||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
||||
variables:
|
||||
GIT_DEPTH: 10
|
||||
script:
|
||||
# build-ubuntu puts us in `build`.
|
||||
- cd ..
|
||||
|
@ -278,8 +282,6 @@ merge-req:ubuntu-dpkg:
|
|||
- docker
|
||||
rules:
|
||||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
||||
variables:
|
||||
GIT_DEPTH: 10
|
||||
script:
|
||||
# build-ubuntu puts us in `build`.
|
||||
- cd ..
|
||||
|
@ -296,8 +298,6 @@ merge-req:ubuntu-gcc-ctest:
|
|||
- docker
|
||||
rules:
|
||||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
||||
variables:
|
||||
GIT_DEPTH: 10
|
||||
script:
|
||||
# build-ubuntu puts us in `build`.
|
||||
- CC=gcc CXX=g++ cmake -DENABLE_EXTRA_COMPILER_WARNINGS=on -DCMAKE_EXPORT_COMPILE_COMMANDS=on -DENABLE_CCACHE=ON -G Ninja ..
|
||||
|
@ -312,8 +312,6 @@ merge-req:ubuntu-clang-other-tests:
|
|||
- docker
|
||||
rules:
|
||||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
||||
variables:
|
||||
GIT_DEPTH: 10
|
||||
script:
|
||||
# build-ubuntu puts us in `build`.
|
||||
- cd ..
|
||||
|
@ -348,8 +346,6 @@ merge-req:windows:
|
|||
# The wireshark-windows-dev image is only available via a dedicated runner.
|
||||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_PROJECT_URL =~ /.*gitlab.com\/wireshark\/wireshark/'
|
||||
when: always
|
||||
variables:
|
||||
GIT_DEPTH: 10
|
||||
before_script:
|
||||
# XXX Find a better location.
|
||||
- cmd.exe /c "set CI_PIPELINE_SOURCE"
|
||||
|
|
Loading…
Reference in New Issue