summaryrefslogtreecommitdiff
path: root/.gitlab-ci
AgeCommit message (Collapse)Author
2019-12-03.gitlab-ci/skopeo: Provide credentials on the cmd lineArkadiusz Hiler
Newer version of skopeo seems to be broken when it comes to using the credentials file. Let's workaround this by providing them on the cmd line. Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-09-09.gitlab-ci: Fix listing undocumented subtestsArkadiusz Hiler
Looking at this code: description = "" current_subtest = None for line in proc.stdout.decode().splitlines(): if line.startswith("SUB "): output += [Subtest(current_subtest, description)] So if there is no documentation on the top level we will get subtest == None and description == "". Let's check for those properly so we won't falsely flag the whole binary. Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-09-04.gitlab-ci: List test binaries with missing top-level description correctlyArkadiusz Hiler
Boolean logic with string is hard. Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-09-04.gitlab-ci: Produce a list of undocumented testsArkadiusz Hiler
We have a requirement that all new tests should be documented using igt_describe() & family since 2f273018ac42 ("CONTRIBUTING: Rework a bit and update"). Let's start actually enforcing that by having this as a part of the CI. For consumption by: https://gitlab.freedesktop.org/gfx-ci/i915-infra/merge_requests/55 Cc: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2019-09-03.gitlab-ci: Don't pull images until they are neededArkadiusz Hiler
We were pulling and tagging images locally ahead of time just in case the next build may need it (i.e. debian-minimal for the fully featured debian). Instead of doing that we can specify the registry in Dockerfile's FROM cluse, so the image is pulled only when we are need it. Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-09-03Dockerfile: Clean package manager caches and squash imagesArkadiusz Hiler
To save some space and bandwidth. Without --squash the caches would get cleaned up only from the last layer which would save us nothing. Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-09-03.gitlab-ci: Switch to podman/buildah/skopeoArkadiusz Hiler
The current setup uses docker-inside-docker setup which seems to fail quite often: WARNING: Service runner-HnMPegeT-project-3185-concurrent-0-docker-0 probably didn't start properly. Using docker image XYZ for docker:stable ... ERROR: Job failed (system failure): Error response from daemon: No such container: XYZ (executor_docker.go:743:0s) Switching over to buildah (invoked via podman - docker's drop-in replacement) everything will happen locally without the need to engage any daemons, which should make the build more reliable. We force using docker format for the containers as only the very latest docker can understand OCI and it does not have widespread adoption yet. Buildah can also use chroot for isolation which simplifies network handling for nested containers and have a potential of being a tad bit faster. To query remotes and manage remote tags we can use skopeo, which saves us from pulling full images from the remote without an actual need. Fixes: https://gitlab.freedesktop.org/freedesktop/freedesktop/issues/187 Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-09-03.gitalb-ci: Use only the necessary tagsArkadiusz Hiler
Tag build-* images only with dockerfile-$FILE_SHA1 for changes detection and commit-$COMMIT_SHA1, so we know which set of images we have to use for any given commit. The igt container needs only ref (e.g. master) and commit-$COMMIT_SHA1 tags, as the dockerfile-$FILE_SHA1 one is irrelevant - we build build every time anyway. Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-09-03.gitlab-ci: Remove dead codeArkadiusz Hiler
TAG is unused since few revisions of the original patchset ago and never was cleaned up properly. Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-09-03Dockerfile: Make sure that we use correct base imageArkadiusz Hiler
Correct one = the one tagged with current commit, so in case of parallel pipelines we don't take the wrong "latest". Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-08-29gitlab-ci: introduce containers with IGT insideOleg Vasilev
Currently, the containers are used only to build IGT. We also want to have an option to run IGT inside a container. For this, new build stage is added. v2: help touch-ups (Arek) Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com>
2019-08-29gitlab-ci: rebuild images only on Dockerfile changesOleg Vasilev
Base images rarely change, there is not much sense in rebuilding it on every commit. GitLab already has mechanism for detecting such changes. However, it is only able to prevent rebuilding whenever there is no changes within the same ref. Since in our CI system, git tag is created on every series, the mechanism doesn't work. One possible way to workaround that is to compute a checksum of a Dockerfile, and rebuilding only if there was no image built with the same checksum. V2: - Rename gitlab-ci to .gitlab-ci (Arek) - Add commit-$CI_COMMIT_SHA Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Signed-off-by: Oleg Vasilev <oleg.vasilev@intel.com>