Skip to content
This repository was archived by the owner on Jun 28, 2024. It is now read-only.

test: backport fixes to stable-1.6 branch#1404

Merged
egernst merged 21 commits into
kata-containers:stable-1.6from
chavafg:topic/backport-1.6-fixes
Apr 3, 2019
Merged

test: backport fixes to stable-1.6 branch#1404
egernst merged 21 commits into
kata-containers:stable-1.6from
chavafg:topic/backport-1.6-fixes

Conversation

@chavafg
Copy link
Copy Markdown
Contributor

@chavafg chavafg commented Apr 3, 2019

56144e6 test: Fix aerospike test
4ac87b1 ci: remove unexistent blogbench URL
c49cb1a clean-up: clean stale kata resource on ARM CI
76ced81 gocache: clean GOCACHE on AArch64
beed7b4 ci: Fix that the docker installation sometimes fails in opensuse
260eae7 lib: extract_kata_env: don't rely on docker output
3f7b06e ci: k8s: install cni 0.6.0
1d80ad3 lib/common: extract_kata_env: Convert $rpath to pathname
98a0b26 integration/docker: Don't use RandID directly
a6a3e5c integration/docker: make API consistent
111ede9 integration/docker: use random repo names
edd730c s390x: run docker test in serial
6c74b58 integration/docker: include number of parallel node in the container's name
b08fa57 ci: fix .ci/lib.sh to not require go installed
b513620 makefile: run docker tests faster
4b69b6e makefile: increase timeout
c1d006b integration/docker: pull images before running tests
883afae cri-o: fix name of skipped test
8c653d9 makefile: honor FOCUS environment variable
3ac2459 integration/functional: stop running the tests after a failure occurs

Julio Montes and others added 21 commits April 3, 2019 08:03
To avoid generating the same container ID or name for two
different tests, the random seed should be generated when
the random string is required.

fixes kata-containers#1304

Signed-off-by: Julio Montes <julio.montes@intel.com>
When a test fails, the CI fails. To improve CI time and allow other jobs
run, integration and functional test should fail and stop running the tests
after a failure occurs.

fixes kata-containers#1302

Signed-off-by: Julio Montes <julio.montes@intel.com>
Run sequentially only the tests that match with FOCUS.
The FOCUS environment variable is used to debug and put attention on
certain tests.

fixes kata-containers#1306

Signed-off-by: Julio Montes <julio.montes@intel.com>
The name of the test is 'ctr stats output'.
Add the complete name of the test in the list instead
of only part of it.

Fixes: kata-containers#1311.

Signed-off-by: Salvador Fuentes <salvador.fuentes@intel.com>
SynchronizedBeforeSuite is used to synchronize parallel test.
Use SynchronizedBeforeSuite to pull all docker images before running any test.

fixes kata-containers#1308

Signed-off-by: Julio Montes <julio.montes@intel.com>
Docker integration tests fail randomly because they run in parallel and
sometimes docker needs time to setup the bridge and assign an ip address to
the new container. To avoid the test be killed, the default timeout should
be increased.

Signed-off-by: Julio Montes <julio.montes@intel.com>
Run docker test in parallel with auto-detected number of nodes.

Signed-off-by: Julio Montes <julio.montes@intel.com>
`.ci/lib.sh` was using `go env` to get GOPATH value,
but this library is also used by the `install_go.sh`
script, which shouldn't require `go` to be installed.

Fix this issue, by adding a default value to GOPATH
if no `go` command is available.

Fixes: kata-containers#1324.

Signed-off-by: Salvador Fuentes <salvador.fuentes@intel.com>
…s name

Each parallel test has its own node number, to avoid two or more test using
the same container name at the same time, parallel node should be included in
the container's name.

fixes kata-containers#1304

Signed-off-by: Julio Montes <julio.montes@intel.com>
Ginkgo doesn't skip the tests when they're run in parallel.

Fixes: kata-containers#1330

Signed-off-by: Alice Frosi <afrosi@de.ibm.com>
Use random repositories names to avoid collisions between
parallel tests.

fixes kata-containers#1332

Signed-off-by: Julio Montes <julio.montes@intel.com>
move randomDockerName to docker.go file

Signed-off-by: Julio Montes <julio.montes@intel.com>
Use randomDockerName to generate random names since this function
is designed to always generate unique random names.

fixes kata-containers#1334

Signed-off-by: Julio Montes <julio.montes@intel.com>
Cannot pass vm_templating_test.sh if kata-runtime is not pathname
in docker config because extract_kata_env determines $rpath
cannot execute.

Convert $rpath to pathname to handle the issue.

Fixes: kata-containers#1347

Signed-off-by: Hui Zhu <teawater@hyper.sh>
Install cni 0.6.0 to be able to install
kuberentes 1.13.
This is a workaround needed until
kubernetes/kubernetes#75683
gets fixed.

Fixes: kata-containers#1352.

Signed-off-by: Salvador Fuentes <salvador.fuentes@intel.com>
We are getting the runtime path (rpath) from docker info, but
it may be the case where we try to run `extract_kata_env` and
not running docker, so we shouldn't fail to get the kata
runtime path if docker service is down or not healthy.

Fixes: kata-containers#1356.

Signed-off-by: Salvador Fuentes <salvador.fuentes@intel.com>
This will fix that sometimes the docker installation fails in opensuse.
This will start the docker service so we can retrieve properly the docker
version that we have installed in the system.

Fixes kata-containers#1326

Signed-off-by: Gabriela Cervantes <gabriela.cervantes.tellez@intel.com>
Go command caches build outputs under $GOCACHE, The default location
for cache data is a subdirectory named 'go-build' in the
standard user cache directory, like $XDG_CACHE_HOME in linux.
Since some CI, including ARM CI, is running on bare metal. We need
to clean GOCACHE before each run.

Fixes: kata-containers#1365

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Directories "/usr/share/kata-containers" and
"/usr/share/defaults/kata-containers" must be cleaned up before
each run.

Fixes: kata-containers#1373

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
blogbench URL https://www.pureftpd.org/project/blogbench
doesn't exist anymore. Seems that our CI has been failing
when testing master branch since March 19th. Lets remove this
unexistent URL.

Fixes: kata-containers#1386.

Signed-off-by: Salvador Fuentes <salvador.fuentes@intel.com>
Aerospike server needs at least 6G of memory to run.

Fixes kata-containers#1394

Signed-off-by: Gabriela Cervantes <gabriela.cervantes.tellez@intel.com>
@chavafg chavafg requested a review from a team as a code owner April 3, 2019 14:18
@chavafg
Copy link
Copy Markdown
Contributor Author

chavafg commented Apr 3, 2019

/test

@jcvenegas
Copy link
Copy Markdown
Member

http://jenkins.katacontainers.io/job/kata-containers-tests-ubuntu-18-04-PR/297/console

09:30:48 not ok 32 ctr update resources
09:30:48 # (in test file ctr.bats, line 1107)
09:30:48 #   `[ "$status" -eq 0 ]' failed
09:30:48 # 0
09:30:48 # time="2019-04-03 15:30:34.151665804Z" level=debug msg="[graphdriver] trying provided driver "overlay"" 
09:30:48 # time="2019-04-03 15:30:34.189048399Z" level=debug msg="overlay test mount with multiple lowers succeeded" 
09:30:48 # time="2019-04-03 15:30:34.867088103Z" level=warning msg="Not using native diff for overlay, this may cause degraded performance for building images: kernel has CONFIG_OVERLAY_FS_REDIRECT_DIR enabled" 

Metrics:

08:26:30  > git checkout -f 37f144678beaddf5fd34648ac2604ae8525dd7a4 # timeout=10
08:26:30 FATAL: java.io.IOException: Unexpected termination of the channel

@chavafg
Copy link
Copy Markdown
Contributor Author

chavafg commented Apr 3, 2019

the cri-o failure is a known issue: kata-containers/agent#476, restarted the job.

@jcvenegas
Copy link
Copy Markdown
Member

Metrics:

| *F* | memory-footprint     | 95.0% | 85.1%  | 105.0% | 10.0% | 85.1% | 85.1%  | 0.0%  | 0.0% |   1 |

@egernst egernst merged commit 61f1d0d into kata-containers:stable-1.6 Apr 3, 2019
@grahamwhaley
Copy link
Copy Markdown
Contributor

Heh, just a note then on metrics and backports to stables etc.
The metrics only really knows about the current performance of HEAD - so, if it runs on a PR of a backport/stable branch, and there have been any performance changes that are not in that branch, the metrics will fail (hopefully!). I suspect that is what is going on here.
@chavafg - we should see/make sure the metrics only fires on HEAD, and not any other branch I suspect. Do we know how to do that? (I'm not sure if that is a github end or jenkins end thing).

@chavafg
Copy link
Copy Markdown
Contributor Author

chavafg commented Apr 4, 2019

@grahamwhaley, I think this is the option that we would need to change on the jenkins job:

Branch Specifier (blank for 'any'): 

@grahamwhaley
Copy link
Copy Markdown
Contributor

@chavafg - I went to have have a look at the Jenkins config. That Branch Specifier currently has ${sha1} in it, so I thought I should work out what that currently means.... it looks like the Branch Specifier dialog is part of the Jenkins git plugin, and is describing how to create (co and merge etc.) the branch to test - at present it is being handed the sha to check from the ghprb plugin.... So, I went to check the ghprb plugin, and it has both black and whitelists for which branches to trigger PR builds on... I think that is probably a better place for us to filter the branches?

Whitelist Target Branches:
  Adding branches to this whitelist allows you to selectively test pull requests destined for these branches only.
  Supports regular expressions (e.g. 'master', 'feature-.*'). 

I reckon we need to leave the ${sha1} in place for the git plugin, and get the ghprb plugin to do the filtering? WDYT?

@chavafg
Copy link
Copy Markdown
Contributor Author

chavafg commented Apr 8, 2019

@grahamwhaley ohh, you are right. the whitelist target branches should be a better place.

@chavafg chavafg deleted the topic/backport-1.6-fixes branch April 8, 2019 16:57
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants