php1ic / inch

The Interactive Nuclear CHart
GNU General Public License v3.0
3 stars 2 forks source link

Gitlab CI test failure #21

Closed php1ic closed 4 years ago

php1ic commented 4 years ago

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,

php1ic commented 4 years ago

Not fixed, need to watch my wording in commit messages.

php1ic commented 4 years ago

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.

php1ic commented 4 years ago

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.

php1ic commented 4 years ago

Closing as not an issue with gitlab CI. See #22