You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add support for wait_for_services_timeout option (#861)
## Description
This PR adds the `wait_for_services_timeout` docker setting for the
executor (see
https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersdocker-section).
I've found #513 while looking for a solution to our problem. After
migrating from the Kubernetes executer to the docker-machine executer,
we have had a couple of Gitlab jobs that are always waiting 30s before
actually running the defined steps.
I am aware of #819 but I believe this might be a quick win.
## Migrations required
NO
## Test the change
In order to test my change, I recommend to set
```hcl
debug = { "output_runner_config_to_file": true, "output_runner_user_data_to_file": false }
```
and then run `terraform plan`.
It will print the locally rendered `config.toml` that now contains the
new setting:
```
[...]
pre_clone_script = ""
request_concurrency = 1
output_limit = 4096
limit = 0
wait_for_services_timeout = 30
[...]
```
---------
Co-authored-by: Matthias Kay <[email protected]>
The runners created by the module use spot instances by default for running the builds using the `docker+machine` executor.
@@ -693,6 +693,7 @@ Made with [contributors-img](https://contrib.rocks).
693
693
| <aname="input_runners_shm_size"></a> [runners\_shm\_size](#input\_runners\_shm\_size)| shm\_size for the runners, will be used in the runner config.toml |`number`|`0`| no |
694
694
| <aname="input_runners_token"></a> [runners\_token](#input\_runners\_token)| Token for the runner, will be used in the runner config.toml. |`string`|`"__REPLACED_BY_USER_DATA__"`| no |
695
695
| <aname="input_runners_use_private_address"></a> [runners\_use\_private\_address](#input\_runners\_use\_private\_address)| Restrict runners to the use of a private IP address. If `runner_agent_uses_private_address` is set to `true`(default), `runners_use_private_address` will also apply for the agent. |`bool`|`true`| no |
696
+
| <aname="input_runners_wait_for_services_timeout"></a> [runners\_wait\_for\_services\_timeout](#input\_runners\_wait\_for\_services\_timeout)| How long to wait for Docker services. Set to `-1` to disable. Default is `30`. |`number`|`30`| no |
696
697
| <aname="input_runners_userdata"></a> [runners\_userdata](#input\_runners\_userdata)| Cloud-init user data that will be passed to the runner ec2 instance. Available only for `docker+machine` driver. Should not be base64 encrypted. |`string`|`""`| no |
697
698
| <aname="input_runners_volume_type"></a> [runners\_volume\_type](#input\_runners\_volume\_type)| Runner instance volume type |`string`|`"gp2"`| no |
698
699
| <aname="input_runners_volumes_tmpfs"></a> [runners\_volumes\_tmpfs](#input\_runners\_volumes\_tmpfs)| Mount a tmpfs in runner container. https://docs.gitlab.com/runner/executors/docker.html#mounting-a-directory-in-ram| <pre>list(object({<br> volume = string<br> options = string<br> }))</pre> |`[]`| no |
0 commit comments