I’m trying to integrate my Gitlab server with Kubernetes.
I’m testing this on a freshly new project created with NodeJs Express template.
My Kubernetes cluster is a self hosted cluster running behind Rancher2.
Kubernetes version: v1.15.5
Rancher2 version: 2.3.2
My Gitlab server version: 12.5.0-ee
My Gitlab server is running on the cluster and has been setup via Gitlab’s Helm charts.
I’ve correctly set up the API Url, CA Certificate and token but wasn’t sure about the namespace so I leave it blank but it seems to have been automatically created by Gitlab.
I’ve run a pipeline that has passed the “build” job but is now stuck in the “production” job with the following logs:
Waiting for deployment "production" rollout to finish: 0 of 1 updated replicas are available...
I figured out that the pod could not be initialized because of a missing docker image and is failing with the following error:
Failed to pull image "registry.mydomain.com/root/test-integration-7/master:cca5d1d2fb24ad6e945aa56f2c848c76a2cc1c61": rpc error: code = Unknown desc = Error response from daemon: manifest for registry.mydomain.com/root/test-integration-7/master:cca5d1d2fb24ad6e945aa56f2c848c76a2cc1c61 not found
I assume the image should have been pushed by Gitlab during the “build” job ?
I’ve checked the logs of this job and found these lines:
Building Dockerfile-based application... Error response from daemon: manifest for registry.mydomain.com/root/test-integration-7/master:0000000000000000000000000000000000000000 not found: manifest unknown: manifest unknown Error response from daemon: manifest for registry.mydomain.com/root/test-integration-7/master:latest not found: manifest unknown: manifest unknownSending build context to Docker daemon 131.6kB
I’ve also find out that the build job has been marked as “succeeded” but it doesn’t seems to have succeed:
Step 6/10 : RUN npm install ---> Running in 2bb6549ee526 npm WARN deprecated email@example.com: Please note that v5.0.1+ of superagent removes User-Agent header by default, therefore you may need to add it yourself (e.g. GitHub blocks requests without a User-Agent header). This notice will go away with v5.0.2+ once it is released.npm WARN deprecated firstname.lastname@example.org: core-js@<3.0 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3. npm WARN notice [SECURITY] clean-css has the following vulnerability: 1 low. Go here for more details: https://www.npmjs.com/advisories?search=clean-css&version=3.4.28 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info. Job succeeded
So it seems the build operation has stopped on the 6/10 task and didn’t run the last 4.
The build job has taken 30 minutes 23 seconds and the timeout is set to 1h but I think most of the time has been spent on this 6th task. Maybe their is an hidden timeout that has been triggered?
By the way, not sure does npm warnings are relevant but you could prove me wrong.
I’ve also found this in the “production” job’s logs:
Hang tight while we grab the latest from your chart repositories... ...Unable to get an update from the "local" chart repository (http://127.0.0.1:8879/charts): Get http://127.0.0.1:8879/charts/index.yaml: dial tcp 127.0.0.1:8879: connect: connection refused ...Successfully got an update from the "gitlab" chart repository ...Successfully got an update from the "stable" chart repository Update Complete.
Any help is welcome.
Thanks for any information.