You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
The pipeline is running in Jenkins instance with Kubernetes plugin. Both Jenkins and Kube plugin pods are running in the EKS.
Tests are failing when trying to create Reaper container, i.e. it times out when waiting for the Reaper to come alive.
To Reproduce
Set up Jenkins server with a Kubernetes cloud defined which connectes to a EKS instance.
A test scenario uses Testcontainers to create a container.
A test step just run go test.
The following error appears in the output:
$ go test
go: downloading github.com/testcontainers/testcontainers-go v0.8.0
2020/09/17 15:50:09 Starting container id: d3eb2438b8d6 image: quay.io/testcontainers/ryuk:0.2.3
2020/09/17 15:50:10 Waiting for container id d3eb2438b8d6 image: quay.io/testcontainers/ryuk:0.2.3
test: 2020/09/17 15:50:10 failed to create container: creating reaper failed: could not start container: port not found
exit status 1
There are two issues related to the EKS and similar setup:
Docker instance on the EKS node by default has bridge network disabled. This pretty much means that any port exposure has no effect but does not fail either as in this case none network becomes default which means no networking. Reaper has currently no option to use a non default network which leads to the failure.
While trying to resolve the first issue by creating a new network with bridge driver and using it instead of default one, it appeared that in this setup the IP returned by the GetGatewayIP is non-routable, again it is probably because bridge network does not exist, althouh I'm surprised that it did not fail in this case.
I have a working code that rectifies the above error but need to do a bit more cleaning prior to submitting PR.
The text was updated successfully, but these errors were encountered:
ikolomiyets
added a commit
to ikolomiyets/testcontainers-go
that referenced
this issue
Sep 17, 2020
… to run the tests in the Docker environment with disabled "bridge" network.
The CreateContainer or CreateNetwork function will check if bridge network exists and if does not it creates a reaper_default
network and ensure that container is attached to the reaper_default network.
ikolomiyets
changed the title
Unable execute tests when they are running in Jenkins with Kubernetes plugin when Pods are running in EKS
Unable to execute tests when they are running in Jenkins with Kubernetes plugin when Pods are running in EKS
Sep 17, 2020
Describe the bug
The pipeline is running in Jenkins instance with Kubernetes plugin. Both Jenkins and Kube plugin pods are running in the EKS.
Tests are failing when trying to create Reaper container, i.e. it times out when waiting for the Reaper to come alive.
To Reproduce
Set up Jenkins server with a Kubernetes cloud defined which connectes to a EKS instance.
A test scenario uses Testcontainers to create a container.
A test step just run
go test
.The following error appears in the output:
Expected behavior
Test succeeds
** docker info **
Additional context
There are two issues related to the EKS and similar setup:
bridge
network disabled. This pretty much means that any port exposure has no effect but does not fail either as in this casenone
network becomes default which means no networking. Reaper has currently no option to use a non default network which leads to the failure.bridge
network does not exist, althouh I'm surprised that it did not fail in this case.I have a working code that rectifies the above error but need to do a bit more cleaning prior to submitting PR.
The text was updated successfully, but these errors were encountered: