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:
timeoutallows 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.