GitLab CI Pipeline Stage Timeout

Jackpot picture Jackpot · Jul 15, 2016 · Viewed 24k times · Source

I'm using a self-hosted GitLab CI server (community edition v8.9.5) and gitlab-ci-multi-runner 1.2.0 to build a project. One of my pipeline stages (test) takes a while to run and I get the following erm:

ERROR: Build failed: execution took longer than 3600 seconds

Where do I put the override for this timeout? Can I apply it to just the test pipeline stage?

Answer

tmt picture tmt · Jul 15, 2016

You can set a global timeout in "Project settings -> CI/CD Pipelines -> Timeout" or "Project settings -> Builds -> Timeout" in older versions.

As of version 12.3, you can set a timeout per stage in your CI .yml file using timeout:

timeout allows you to configure a timeout for a specific job. For example:

build:
  script: build.sh
  timeout: 3 hours 30 minutes

test:
  script: rspec
  timeout: 3h 30m

The job-level timeout can exceed the project-level timeout but can’t exceed the Runner-specific timeout.