Closed mschmieder closed 1 year ago
Hello Matthias!
There were a couple of updates to the README.md
since this issue was created.
Could you please provide some concrete examples of the current functionality and limitations that you find needing the clarification?
prepare_args = ["prepare", "--concurrency 2", "--cpu auto", "--memory auto"]
should be
prepare_args = ["prepare", "--concurrency", "2", "--cpu", "auto", "--memory", "auto"]
We also need some documentation on the use of cache dir. Reading the MR is quite confusing but if I understand correctly, I need to set the path in config_args
as well as the cache_dir
* value, for example:
[[runners]]
executor = "custom"
builds_dir = "/Users/admin/builds"
cache_dir = "/Users/admin/cache"
[runners.custom]
config_exec = "gitlab-tart-executor"
config_args = ["config", "--cache-dir", "/Users/admin/cache"]
[runners.environment]
# force all jobs to use a temp dir mounted from the host as `builds_dir`
TART_EXECUTOR_HOST_DIR = true
# host `--cache-dir` always gets mounted as `/Volumes/My Shared Files/cachedir` inside VM
#TART_EXECUTOR_INTERNAL_CACHE_DIR = "/Volumes/My Shared Files/cachedir"
I don't understand why you couldn't use the runners.cache_dir
path to append args in the config stage, then the environment variable could just be TART_EXECUTOR_SHARED_CACHE_DIR = "true"
. Is that because gitlab-runner
does not pass that config through to gitlab-tart-executor
?
In addition both
builds_dir
andcache_dir
inside of the [[runners]] are required fields.
Is that because
gitlab-runner
does not pass that config through togitlab-tart-executor
?
This, and also because the cache_dir
has a very different meaning when we run VMs: we essentially need two cache_dir
values, one for the host, and the other for VM.
In addition both
builds_dir
andcache_dir
inside of the [[runners]] are required fields.
I am afraid that this is just a poor documentation.
Both of these fields are obviously not required for a custom executor that has a config
stage which provides these values automatically.
These fields are also not required for Docker executor, as it provides these default values automatically.
The documentation should be improved to better clarify on