Closed php1ic closed 4 years ago
Not fixed, need to watch my wording in commit messages.
Gitlab clones to - /builds/php1ic/inch/
This build directory /builds/php1ic/inch/build
is created and then passed between stages via the path:artifacts.
Everything looks good in the test stage
$ cd ./build
$ ctest -j2 -V
UpdateCTestConfiguration from :/builds/php1ic/inch/build/DartConfiguration.tcl
UpdateCTestConfiguration from :/builds/php1ic/inch/build/DartConfiguration.tcl
Test project /builds/php1ic/inch/build
However the path to the data files is set as - "/builds/php1ic/inch/build/tests/../data_files/"
and this causes the failure.
I've removed the stages from gitlab so everything is done in the same container and nothing is passed via artifacts, but it is still setting the path as "/builds/php1ic/inch/build/tests/../data_files/"
Thinking out loud, I can't even see where this part of the path - /builds/php1ic/inch/build/tests/..
- is coming from.
Closing as not an issue with gitlab CI. See #22
Gitlab CI expands Options::getAbolutePath() to be relative causing tests to fail.
See 708fea2ac75e and the pipeline logs for different CI providers: GitlabCI, Test 48 - "../data_files/" https://gitlab.com/php1ic/inch/-/jobs/634917536 CircleCI, Test 48 - "/home/circleci/project/data_files/" https://app.circleci.com/pipelines/github/php1ic/inch/210/workflows/32a5ee0e-10b7-4a8a-bafa-21130cfd2e4a/jobs/808 AppVeyor, Test 25 - "C:\projects\inch\data_files\" https://ci.appveyor.com/project/php1ic/inch/builds/34050948/job/fi3x64xxxj1am0oi
Gitlab and CircleCI are both use gcc 8.4.0. So issue looks to be gitlab related,