- Jun 01, 2020
-
-
Steve Xuereb authored
-
Broken Master: Change license management to use rules See merge request !2096
-
Docker executor - wait for logs to be copied to job trace before closing reader See merge request !2101
-
- May 07, 2020
-
-
Tomasz Maczukin authored
-
Tomasz Maczukin authored
Fix removal of build volume when disable_cache set to true Closes #25438 See merge request !2042
-
Tomasz Maczukin authored
-
- Apr 22, 2020
-
-
Tomasz Maczukin authored
-
Tomasz Maczukin authored
Fix err checks from volume manager Closes #25428 See merge request !2034
-
Tomasz Maczukin authored
-
- Apr 21, 2020
-
-
Tomasz Maczukin authored
-
- Apr 20, 2020
-
-
Tomasz Maczukin authored
-
Tomasz Maczukin authored
Revert "Merge branch '4450-fix-container-wait' into 'master'" Closes gitlab#215037 See merge request gitlab-org/gitlab-runner!2026
-
- Apr 10, 2020
-
-
Tomasz Maczukin authored
-
Marcel Amirault authored
Minor rewording in PROCESS.md templates See merge request gitlab-org/gitlab-runner!2003
-
Marcel Amirault authored
Add info that ssh is also required to be accessible in the security group See merge request gitlab-org/gitlab-runner!1997
-
Marcel Amirault authored
Minor Update index.md See merge request gitlab-org/gitlab-runner!2004
-
- Apr 09, 2020
-
-
Steve Xuereb authored
Add attempts to Docker executor for container not found See merge request gitlab-org/gitlab-runner!1995
-
Steve Xuereb authored
Introduce a new variable `EXECUTOR_JOB_SECTION_ATTEMPTS` that the user can set. Check for this variable when using the Docker executor where it will attempt to run a specific stage to the set amount if the error returned from the stage is `No Such container`. This makes the executor a lot more resilient to issues where we are running a stage and the container gets removed by some other system and the ephemeral nature of Docker containers. The reason why we don't want this to be default behavior is that retrying the build might cause harm, which is explained in detail in gitlab-org/gitlab-runner!1995 (comment 320619026). The `safeBuffer` is necessary to prevent more data races inside of our codebase when we run with `go test -race`, this is because we are writing to the job log and reading from the job log to trigger specific parts of the integration test. The integration test turned out to be quite big and not a simple one. There is no way we can easily mock the client from the `docker_test` package since the main goal of this package is to be an E2E/integration test. reference gitlab-org/gitlab-runner#4450
-
Daniel Schwiperich authored
-
Steve Xuereb authored
Merge branch '17058-follow-up-from-retry-kubernetes-commands-when-error-dialing-backend-eof-error-is-hit-add' into 'master' Add retry when executing commands with kube attach Closes #17058 See merge request gitlab-org/gitlab-runner!1907
-
KATO Tomoyuki authored
-
- Apr 08, 2020
-
-
Tomasz Maczukin authored
Start watching container before starting See merge request gitlab-org/gitlab-runner!1990
-
Tomasz Maczukin authored
Use Docker volumes instead of cache containers See merge request gitlab-org/gitlab-runner!1989
-
Pedro Pombeiro authored
-
Steve Xuereb authored
Add support for `raw` variables Closes #4696 See merge request gitlab-org/gitlab-runner!1882
-
Steve Xuereb authored
Fix TestScanHandlesCancelledContext having a WaitGroup without a delta and a few other log processor flaky tests See merge request gitlab-org/gitlab-runner!1961
-
Steve Xuereb authored
When the machine is resource constrain the go routine to check the status of the container might not be scheduled soon enough and the container might be removed, which would result into a 404 when searching for the container. Make sure that `waitForContainer` has started before the container is started. reference #4450 (comment 316278797)
-
Steve Xuereb authored
This command was being used to initialize the cache directory with the correct permissions. This is no longer needed since `docker volume create` is being used and it has `rw` (read-write) so the directory already has the expected permissions. `docker volume create`: https://docs.docker.com/engine/reference/commandline/volume_create/ reference gitlab-org/gitlab-runner#4450
-
Steve Xuereb authored
Problem: `cache containers` are containers created specifically to create volumes and initialize them correctly and exit properly. Then each container that is created afterword the `--volumes-from` is passed specifying the container ids of the **exited** cache containers. As seen in gitlab-org/gitlab-runner#4450 (comment 316034514) the [`ContainerCreate`](https://docs.docker.com/engine/api/v1.25/#operation/ContainerCreate) can return a 404 if we define a `--volumes-from` to a nonexisting container. Exited containers can easily be removed/cleanup by some other system they are also susceptible to oom killer/cgroups so the resource is more temporary. Solution: Instead of creating a cache container and then keep reusing that container to specify volume mounts. Create a volume with `docker volume create` and define it part of the bindings, for example `$VOLUME_NAME:/cache`. Using volumes directly has the following benefits: - `gitlab.com/gitlab-org/gitlab-runner/executors/docker/internal/volumes` is much simpler since we don't have to manage more containers. - Volumes don't randomly get removed the same way as exited cache containers do. - Permissions are set by default since `rw` is implied, so no [`cache-init`](https://gitlab.com/gitlab-org/gitlab-runner/-/blob/ad6cd05d8a71d6e298e57f6b42242195e23739f0/commands/helpers/cache_init.go) command is needed. - If a volume with that name is already created it's reused, Docker doesn't return an error. - Achieve what we are doing in fewer steps, creating fewer containers which makes the build faster especially on Windows where we used large containers. The volumes aren't labeled the same as the current ones that we create, for this please take a look at gitlab-org/gitlab-runner#25300. Testing: gitlab-org/gitlab-runner!1989 Docker commands we used to run: ``` docker inspect $CACHE_CONTAINER docker create gitlab/gitlab-runner-helper:xxxx cache-init docker start $CACHE_CONTAINER docker wait $CACHE_CONTAINER docker run --volumes-from $CACHE_CONTAINER $IMAGE ``` Docker commands we run now: ``` docker volume create $VOLUME_NAME docker run -v $VOLUME_NAME:/cache $IMAGE ``` reference gitlab-org/gitlab-runner#4450
-
Tomasz Maczukin authored
-
Tomasz Maczukin authored
Allow Windows 1909 for Docker executor See merge request gitlab-org/gitlab-runner!1999
-
Marcel Amirault authored
Add further checks from GitLab project See merge request gitlab-org/gitlab-runner!2001
-
Steve Xuereb authored
Use unique container names for Docker executor Closes #4327 See merge request gitlab-org/gitlab-runner!1801
-
Evan Read authored
-
- Apr 07, 2020
-
-
Tomasz Maczukin authored
Fix golint issue for error starting with capital letter See merge request gitlab-org/gitlab-runner!1851
-
Tomasz Maczukin authored
-
Tomasz Maczukin authored
-
Tomasz Maczukin authored
-
Steve Xuereb authored
Allow users to run `docker-windows` on Docker hosts that run on Windows 1909. The helper image is not provided by GitLab at the moment and will be handled in the future gitlab-org/gitlab-runner#6212 Before: https://gitlab.com/steveazz/playground/-/jobs/502350018 After: https://gitlab.com/steveazz/playground/-/jobs/502347970 reference gitlab-org/gitlab-runner#6212
-
Daniel Schwiperich authored
-