declarativesystems / onceover-codequality

Lint and syntax validation for onceover
Apache License 2.0
3 stars 7 forks source link

getting strange errors in CI-container... #2

Closed salderma closed 6 years ago

salderma commented 6 years ago

Hi, first off, thanks for this, second I just started trying to use it today.

On my dev workstation, I can run bundle exec onceover run codequality, and all passes just fine. Unfortunately, when I push to my git system (which I've got setup to use docker image ruby:2.4.4), I get crazy errors down in the gems for puppet-syntax, puppet-5.5.1, puppet-lint, puppet-strings, etc.

Here's a gist with the output from the CI container: https://gist.github.com/salderma/e83211a8b90ee97c3ca1208d11873b3a

Anyway, I'm not familiar enough with this to have a clue yet, just trying to get started with it, but I hope there's something simple I'm missing. Thanks!

GeoffWilliams commented 6 years ago

looks like this is caused by the rubygems being installed inside the checked-out control repo by the CI. Syntax plugin then finds the testcases in puppet-syntax and errors. Suggest installing the rubygems to a directory outside of the control repo

salderma commented 6 years ago

Confirmed! The repo's CI config file had bundler install --path vendor/bundle and so all gems were dropping into the repo's directory. Removing that --path arg resolved the issue completely!