gitlab-runner merge requestshttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests2017-09-28T21:01:10Zhttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/600Add support for logging services output into job's trace2017-09-28T21:01:10ZTomasz Maczukintomasz@gitlab.comAdd support for logging services output into job's trace## What does this MR do?
Adds `CI_DEBUG_SERVICES` variable which, if set to `trace`, prints the output of all used services to the job's trace, e.g.:
**without `CI_DEBUG_SERVICES` variable**:
```bash
Running with gitlab-ci-multi-...## What does this MR do?
Adds `CI_DEBUG_SERVICES` variable which, if set to `trace`, prints the output of all used services to the job's trace, e.g.:
**without `CI_DEBUG_SERVICES` variable**:
```bash
Running with gitlab-ci-multi-runner 9.3.0~beta.31.g34151514 (34151514)
on ()
Using Docker executor with image alpine ...
Starting service docker:dind ...
Using locally found image version due to if-not-present pull policy
Using docker image docker:dind ID=sha256:dee518b729774dca2b75e356b4e5d288f4abd00daea5a934c63c4a5a20fe6655 for docker service...
Waiting for services to be up and running...
Using docker image sha256:26e52dd033d4116759722e2f48d742d8f6fd26aa7d6aec045a2d5d7a44b8a0d1 for predefined container...
Using locally found image version due to if-not-present pull policy
Using docker image alpine ID=sha256:a41a7446062d197dd4b21b38122dcc7b2399deb0750c4110925a7dd37c80f118 for build container...
Running on runner--project-0-concurrent-0 via apollo.h.maczukin.pl...
Cloning repository...
Cloning into '/builds/project-0'...
done.
Checking out ca76bb21 as master...
Skipping Git submodules setup
$ i=0
$ while [ $i -lt 5 ]; do echo "${CI_JOB_NAME} ${i}"; i=$((i + 1)); sleep 1; done
job3 0
job3 1
job3 2
job3 3
job3 4
$ echo "done"
done
Running after script...
Job succeeded
```
**with `CI_DEBUG_SERVICES=trace` variable**:
```bash
Running with gitlab-ci-multi-runner 9.3.0~beta.31.g34151514 (34151514)
on ()
Using Docker executor with image alpine ...
Starting service docker:dind ...
Using locally found image version due to if-not-present pull policy
Using docker image docker:dind ID=sha256:dee518b729774dca2b75e356b4e5d288f4abd00daea5a934c63c4a5a20fe6655 for docker service...
Waiting for services to be up and running...
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:36.360349745Z" level=warning msg="could not change group /var/run/docker.sock to docker: group docker not found"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:36.360483302Z" level=warning msg="[!] DON'T BIND ON ANY IP ADDRESS WITHOUT setting --tlsverify IF YOU DON'T KNOW WHAT YOU'RE DOING [!]"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:36.361169393Z" level=info msg="libcontainerd: new containerd process, pid: 25"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.414726298Z" level=info msg="Graph migration to content-addressability took 0.00 seconds"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.414940969Z" level=warning msg="Your kernel does not support cgroup rt period"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.414954396Z" level=warning msg="Your kernel does not support cgroup rt runtime"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.415262018Z" level=info msg="Loading containers: start."
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.415978008Z" level=warning msg="Running modprobe bridge br_netfilter failed with message: modprobe: can't change directory to '/lib/modules': No such file or directory\n, error: exit status 1"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.416522557Z" level=warning msg="Running modprobe nf_nat failed with message: `modprobe: can't change directory to '/lib/modules': No such file or directory`, error: exit status 1"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.417023029Z" level=warning msg="Running modprobe xt_conntrack failed with message: `modprobe: can't change directory to '/lib/modules': No such file or directory`, error: exit status 1"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.486462608Z" level=info msg="Default bridge (docker0) is assigned with an IP address 172.18.0.0/16. Daemon option --bip can be used to set a preferred IP address"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.546004433Z" level=info msg="Loading containers: done."
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.557178020Z" level=info msg="Daemon has completed initialization"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.557240992Z" level=info msg="Docker daemon" commit=89658be graphdriver=vfs version=17.05.0-ce
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.573730716Z" level=info msg="API listen on [::]:2375"
[runner--project-0-concurrent-0-docker] time="2017-06-07T20:53:37.573817608Z" level=info msg="API listen on /var/run/docker.sock"
Using docker image sha256:26e52dd033d4116759722e2f48d742d8f6fd26aa7d6aec045a2d5d7a44b8a0d1 for predefined container...
Using locally found image version due to if-not-present pull policy
Using docker image alpine ID=sha256:a41a7446062d197dd4b21b38122dcc7b2399deb0750c4110925a7dd37c80f118 for build container...
Running on runner--project-0-concurrent-0 via apollo.h.maczukin.pl...
Cloning repository...
Cloning into '/builds/project-0'...
done.
Checking out ca76bb21 as master...
Skipping Git submodules setup
$ i=0
$ while [ $i -lt 5 ]; do echo "${CI_JOB_NAME} ${i}"; i=$((i + 1)); sleep 1; done
job1 0
job1 1
job1 2
job1 3
job1 4
$ echo "done"
done
Running after script...
Job succeeded
```
## Why was this MR needed?
Please read #2119 for a reference. ~~It may also help to investigate problems like #2347 where nothing helpful is logged into Runners logs and service's logs seems to be the only source of information~~ (linked issue seems to be not related to services feature).
## Are there points in the code the reviewer needs to double check?
## Does this MR meet the acceptance criteria?
- [ ] Documentation created/updated
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- [ ] Branch has no merge conflicts with `master` (if you do - rebase it please)
## What are the relevant issue numbers?
Closes #2119BacklogKamil TrzcińśkiKamil Trzcińśkihttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/573added information about chocolatey package2017-10-06T11:01:47Zusername-removed-775005added information about chocolatey packageBackloghttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/451WIP: Added functionality to create a network per build-ID and attach containe...2017-06-15T08:07:37Zusername-removed-753629WIP: Added functionality to create a network per build-ID and attach containers to it.## What does this MR do?
Add a docker network for each build.
## Why was this MR needed?
Docker links are deprecated in place of using networks. This also gives bidirectional communication between containers.
## Are there points ...## What does this MR do?
Add a docker network for each build.
## Why was this MR needed?
Docker links are deprecated in place of using networks. This also gives bidirectional communication between containers.
## Are there points in the code the reviewer needs to double check?
It isn't finished!
You may want to run `docker network prune` after running tests.
## TODO
- [ ] Delete networks after they are finished with.
- [ ] Test that config.toml's network settings aren't overwritten
- [ ] Add integration tests.
- [ ] Having run `go test gitlab.com/gitlab-org/gitlab-ci-multi-runner/executors/docker` there are many docker networks called build-0. I was expecting one, so it looks like docker.CreateNetwork can create many networks with the same name, but different IDs. Probably want to do a list networks before create to avoid this. Also change tests to use unique build IDs to keep them isolated if run in parallel.
## Does this MR meet the acceptance criteria?
- [ ] Documentation created/updated
- Tests
- [x] Added for this feature/bug
- [ ] All builds are passing
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
## What are the relevant issue numbers?
#1042Backloghttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/416WIP: [kubernetes] Switch to client-go2017-04-24T13:50:49Zusername-removed-182855WIP: [kubernetes] Switch to client-go> This is a general Merge Request template. Consider to choose a template
> from the list above if it will match your case more.
## What does this MR do?
This MR attempts to switch us to using kubernetes/client-go instead of kubernetes...> This is a general Merge Request template. Consider to choose a template
> from the list above if it will match your case more.
## What does this MR do?
This MR attempts to switch us to using kubernetes/client-go instead of kubernetes/kubernetes for calls to Kubernetes, in order to reduce binary & repository size.
This is incomplete as the exec.go file is not switched over yet.
## Why was this MR needed?
Reduce binary & repo size.
Bring calls to k8s up to date (client-go is now the recommended way to talk to k8s)
## Are there points in the code the reviewer needs to double check?
Currently incomplete
## Does this MR meet the acceptance criteria?
- [ ] Documentation created/updated
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- [ ] Branch has no merge conflicts with `master` (if you do - rebase it please)
## What are the relevant issue numbers?Backloghttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/363preserve branch information for checkouts2017-03-22T15:51:20Zusername-removed-163557preserve branch information for checkouts## What does this MR do?
Preserve branch information for checkouts.
## Why was this MR needed?
This patch adds `-B branchname` to checkout.
This is needed for tools that rely on branch information that gets lost with the curr...## What does this MR do?
Preserve branch information for checkouts.
## Why was this MR needed?
This patch adds `-B branchname` to checkout.
This is needed for tools that rely on branch information that gets lost with the current `git checkout hash`.
it's basically the same as running:
1. `git checkout branchname`
2. `git reset --hard hash`
https://github.com/composer/composer/issues/5432#issuecomment-255669875
## Are there points in the code the reviewer needs to double check?
Theoretically there may need to check if the remote branchname still exists when the build is ran.
Perhaps the runner was offline for a while and the time the job actually gets run developer has removed the branch on remote.
It's probably very rare situation and current solution would behave even better replicating scenario when the commit was made.
## Does this MR meet the acceptance criteria?
- [ ] Documentation created/updated
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- [ ] Branch has no merge conflicts with `master` (if you do - rebase it please)Backloghttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/322Add changelog entries generation script2016-09-27T13:31:32ZTomasz Maczukintomasz@gitlab.comAdd changelog entries generation script## What does this MR do?
Adds a script that helps to automatically prepare entries for `CHANGELOG.md` file.
Script assumes that a `GITLAB_PRIVATE_TOKEN` is set and it contains users API access token.
If nothing else is set it wi...## What does this MR do?
Adds a script that helps to automatically prepare entries for `CHANGELOG.md` file.
Script assumes that a `GITLAB_PRIVATE_TOKEN` is set and it contains users API access token.
If nothing else is set it will find all merge requests from the latest _stable_ tag (a tag with a `vX.Y.Z` pattern). However there may be a situation (like for `v1.6.0` release) that the previous stable tag is created not in the current branch history. In such case the `STARTING_POINT` may be used to set a SHA which should be used, eg. `STARTING_POINT=3e1ec38 ./scripts/prepare-changelog-entries.rb`
If there is a MR that was next reverted, we can use the `EXCLUDE_MR_IDS` variable, eg. `EXCLUDE_MR_IDS=123,456,777 ./scripts/prepare-changelog-entries.rb`
## Why was this MR needed?
While preparing a release process description we've decided that it would be good to automatically generate `CHANGELOG` entries basing on merge requests titles.
## What are the relevant issue numbers?
!176BacklogTomasz Maczukintomasz@gitlab.comTomasz Maczukintomasz@gitlab.comhttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/305[WIP] Feature/licenses check2017-03-07T00:06:47ZTomasz Maczukintomasz@gitlab.com[WIP] Feature/licenses check## What does this MR do?
Adds a tests step that checks compatibility of licenses in vendored packages.
## Does this MR meet the acceptance criteria?
- [ ] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/master/CH...## What does this MR do?
Adds a tests step that checks compatibility of licenses in vendored packages.
## Does this MR meet the acceptance criteria?
- [ ] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/master/CHANGELOG.md) entry added
- [ ] Documentation created/updated
- Tests
- [ ] Added for this feature/bug
- [ ] All builds are passing
- [ ] Branch has no merge conflicts with `master` (if you do - rebase it please)
## What are the relevant issue numbers?
Resolves #1608BacklogTomasz Maczukintomasz@gitlab.comTomasz Maczukintomasz@gitlab.comhttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/259Resolve "Show Size of Artifacts and Cache"2017-09-25T13:40:41ZNick ThomasResolve "Show Size of Artifacts and Cache"## What does this MR do?
Outputs upload progress for cache and artifacts to the build log
## Are there points in the code the reviewer needs to double check?
The progress bar updates as data is read from the source, rather than...## What does this MR do?
Outputs upload progress for cache and artifacts to the build log
## Are there points in the code the reviewer needs to double check?
The progress bar updates as data is read from the source, rather than written to the destination, so its accuracy depends on the size of the read buffer. This could probably be improved with a custom HTTP transport for the client library to use, but it's a lot of work for little gain.
Is the helper appropriate and in the right place?
## Why was this MR needed?
Sensible suggestion by a user.
## What are the relevant issue numbers?
Closes #1320 . Also see !255 for a less ambitious solution.
## Screenshots (if relevant)
```
Creating cache build/master...
./cache: found 1 matching files
Uploading cache.zip
cache.zip 0 B / 40.01 MB [---------------------------------------------] 0.00%
cache.zip 40.01 MB / 40.01 MB [======================================] 100.00% 0
cache.zip 40.01 MB / 40.01 MB [====================================] 100.00% 4s
Uploading artifacts...
./artifact: found 1 matching files
artifacts.zip 0 B / ? [-------------------------------------------------------=]
artifacts.zip 13.73 MB / ? [--------------------------------=-----------------]
artifacts.zip 25.36 MB / ? [--------------------=-----------------------------]
artifacts.zip 34.39 MB / ? [----------------------=---------------------------]
artifacts.zip 40.01 MB / 40.01 MB [=========================================] 3s
Uploading artifacts to coordinator... ok id=635 responseStatus=201 Created token=Sasexv-d
Build succeeded
```
Backloghttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/241Add mounting of used volumes to all services containers2017-08-08T12:27:58ZTomasz Maczukintomasz@gitlab.comAdd mounting of used volumes to all services containersFixes #1482, #1520Fixes #1482, #1520BacklogTomasz Maczukintomasz@gitlab.comTomasz Maczukintomasz@gitlab.comhttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/228[WIP] Add `info` command2017-03-07T00:06:08ZTomasz Maczukintomasz@gitlab.com[WIP] Add `info` commandA replacement for !219. Will be extended after we realize #1484 - then it will take statistics data (like uptime or current builds count) from files storage..
Prepared on top of !227 so need it to be merged first.
/cc @ayufan A replacement for !219. Will be extended after we realize #1484 - then it will take statistics data (like uptime or current builds count) from files storage..
Prepared on top of !227 so need it to be merged first.
/cc @ayufan BacklogTomasz Maczukintomasz@gitlab.comTomasz Maczukintomasz@gitlab.comhttps://staging.gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/179Add --no-color and --force-color options; set --no-color as default for windows2016-09-22T09:54:17ZTomasz Maczukintomasz@gitlab.comAdd --no-color and --force-color options; set --no-color as default for windowsCloses #1327 and #1266Closes #1327 and #1266BacklogTomasz Maczukintomasz@gitlab.comTomasz Maczukintomasz@gitlab.com