Gitlab-ci runner fails after repo retrieval

I’m trying to set up a new gitlab-ci runner. All appears well but once the runner gets a job it reports the following:

Running with gitlab-ci-multi-runner 1.4.0 (5dd9b2f)
Using Shell executor…
Running on VISSIMLAB-TEST…

Fetching changes…

HEAD is now at 611a4fb Testing CI
Checking out 611a4fb0 as srs_osgEarth…

… was unexpected at this time.

ERROR: Build failed: exit status 255

The repo has been checked out, but none of the artifacts that should be there from the previous build stage have been fetched. It does not seem to have gotten to the point of running my yml yet. Trying to figure out how to debug this. ramping up the debugging for the runner server doesn’t produce anything obvious so far.

Did you try to checkout in the same folder (/home/gitlab-runner/builds/…), with the gitlab-runner user manually?
i.e: sudo gitlab-runner git clone #repo_url# . ?
Just to check if it is related to any permission issue.

A little context: The runner is executing under Windows. “git” does not appear to be a command line option for gitlab-ci-multi-runner-windows-amd64.exe. The following:

C:\Multi-Runner>gitlab-ci-multi-runner-windows-amd64.exe git clone repo

reports

Command git not found.

Ok, since it is Windows, permissions is not the right direction for investigation.
Could you share your .gitlab-ci.yml?

So the .gitlab-ci.yml looks like this:

winBuild:
  stage: build
  tags:
- VisualStudio
  script:
    - call misc\ci\stageone.bat
  cache:
    paths:
      - cibuild/vsl-4.0.0-win64.zip
      - cibuild/package.log
      - cibuild/build.log
      - cibuild/package.log
      - cibuild/install.log
  artifacts:
    expire_in: 1 day
    paths:
      - cibuild/vsl-4.0.0-win64.zip
      - cibuild/package.log
      - cibuild/build.log
      - cibuild/package.log
      - cibuild/install.log

winSikuliNvidia:
  stage: test
  tags:
    - win7
    - nvidia
  script:
- call misc\ci\stagetwo.bat
winSikuli:
  stage: test
  tags:
    - win7
    - bare
  script:
    - call misc\ci\stagetwo.bat

The fun part here is that we have one runner set up for our “stageone” build and two runners set up for our “stagetwo” test runners. One runs in a virtual machine and is successful. The other runs on actual hardware (so it can use GPU graphics). It is the second one that we cannot get to run properly. Initially we had gitlab-ci-multi-runner version 1.1.4 on the vm and 1.4.0 on the native hardware machine. Running version 1.1.4 on both machines produced a successful run on both configurations. At this point I suspect this is a bug in version 1.4.0 of the runner.

Actually i tested the yml file in the gitlab-ci linter and it gives me syntax errors:

Did you check that?

I understand. It passes lint on my end. I suspect the error you are experiencing is brought on by passing the file through the forum. I used the “insert 4 spaces at beginning of line” to post it before. That probably broke something in the formatting. The forum won’t allow me to upload a text file, only image files:

Sorry, the file you are trying to upload is not authorized (authorized extension: jpg, jpeg, png, gif, ico).

So I’ve dropped the file on a server (disregard the warnings that the SSL certificate isn’t registered) for direct download: gitlab YAML if you want to look at it.

My gitlab server is version 8.9.6 if that helps.

So far my fix is to drop back to version 1.1.4 of gitlab-ci-multi-runner-windows-amd64.exe

1 Like