Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

puppet-lint 3.0.0 refuses to run on multiple platforms when recommended vox pupuli gems installed #65

Closed
jhowe-uw opened this issue Oct 13, 2022 · 3 comments · Fixed by #66
Labels
bug Something isn't working community

Comments

@jhowe-uw
Copy link

Describe the Bug

puppet-lint fails to run

Expected Behavior

puppet-lint runs without issue.

Steps to Reproduce

gem install puppet-lint ( 3.0.0 )
run puppet-lint locally

MacOS

λ $ puppet-lint .
/opt/local/lib/ruby3.1/gems/3.1.0/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:22:in `load': cannot load such file -- /opt/local/lib/ruby3.1/gems/3.1.0/gems/puppet-lint-absolute_classname-check-3.0.1/lib (LoadError)
	from /opt/local/lib/ruby3.1/gems/3.1.0/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:22:in `block in load_from_gems'
	from /opt/local/lib/ruby3.1/gems/3.1.0/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:21:in `each'
	from /opt/local/lib/ruby3.1/gems/3.1.0/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:21:in `load_from_gems'
	from /opt/local/lib/ruby3.1/gems/3.1.0/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:86:in `<top (required)>'
	from <internal:/opt/local/lib/ruby3.1/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from <internal:/opt/local/lib/ruby3.1/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /opt/local/lib/ruby3.1/gems/3.1.0/gems/puppet-lint-3.0.0/lib/puppet-lint.rb:260:in `<top (required)>'
	from <internal:/opt/local/lib/ruby3.1/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from <internal:/opt/local/lib/ruby3.1/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /opt/local/lib/ruby3.1/gems/3.1.0/gems/puppet-lint-3.0.0/bin/puppet-lint:5:in `<top (required)>'
	from /opt/local/bin/puppet-lint:25:in `load'
	from /opt/local/bin/puppet-lint:25:in `<main>'

GitLab runner

Using docker image sha256:417499d154c34b955ac04d275e72d7f6cecd57d8b704012c1507219862f0d796 for ruby:3.1.2-bullseye with digest ruby@sha256:6781439a7d59c79e289a03baa98c2aad419077f9686e95651bdf78624d2f8e86 ...
$ gem install puppet-lint --version '>= 2.5.0'
Successfully installed puppet-lint-3.0.0
1 gem installed
$ gem install puppet-lint-absolute_classname-check --version '>= 2.0.0'
Successfully installed puppet-lint-2.5.2
Successfully installed puppet-lint-absolute_classname-check-3.0.1
2 gems installed
$ gem install puppet-lint-anchor-check puppet-lint-classes_and_types_beginning_with_digits-check puppet-lint-file_ensure-check puppet-lint-leading_zero-check puppet-lint-legacy_facts-check puppet-lint-lookup_in_parameter-check puppet-lint-manifest_whitespace-check puppet-lint-optional_default-check puppet-lint-param-docs puppet-lint-params_empty_string-check puppet-lint-param-types puppet-lint-resource_reference_syntax puppet-lint-strict_indent-check puppet-lint-top_scope_facts-check puppet-lint-topscope-variable-check puppet-lint-trailing_comma-check puppet-lint-unquoted_string-check puppet-lint-variable_contains_upcase puppet-lint-version_comparison-check
Successfully installed puppet-lint-anchor-check-1.0.1
Successfully installed puppet-lint-classes_and_types_beginning_with_digits-check-1.0.0
Successfully installed puppet-lint-file_ensure-check-1.0.0
Successfully installed puppet-lint-leading_zero-check-1.0.0
Successfully installed puppet-lint-legacy_facts-check-1.0.4
Successfully installed puppet-lint-lookup_in_parameter-check-1.0.0
Successfully installed puppet-lint-manifest_whitespace-check-0.2.5
Successfully installed puppet-lint-optional_default-check-1.0.0
Successfully installed puppet-lint-param-docs-1.7.5
Successfully installed puppet-lint-params_empty_string-check-1.0.0
Successfully installed puppet-lint-param-types-0.0.1
Successfully installed puppet-lint-resource_reference_syntax-1.1.0
Successfully installed puppet-lint-strict_indent-check-2.0.8
Successfully installed puppet-lint-top_scope_facts-check-1.0.1
Successfully installed puppet-lint-topscope-variable-check-1.1.0
Successfully installed puppet-lint-trailing_comma-check-0.4.3
Successfully installed puppet-lint-unquoted_string-check-2.1.0
Successfully installed puppet-lint-variable_contains_upcase-1.2.0
Successfully installed puppet-lint-version_comparison-check-1.0.0
19 gems installed
$ puppet-lint .
/usr/local/bundle/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:22:in `load': cannot load such file -- /usr/local/bundle/gems/puppet-lint-absolute_classname-check-3.0.1/lib (LoadError)
	from /usr/local/bundle/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:22:in `block in load_from_gems'
	from /usr/local/bundle/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:[21](https://******/puppet-*****/-/jobs/13772#L21):in `each'
	from /usr/local/bundle/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:21:in `load_from_gems'
	from /usr/local/bundle/gems/puppet-lint-3.0.0/lib/puppet-lint/plugins.rb:86:in `<top (required)>'
	from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /usr/local/bundle/gems/puppet-lint-3.0.0/lib/puppet-lint.rb:260:in `<top (required)>'
	from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /usr/local/bundle/gems/puppet-lint-3.0.0/bin/puppet-lint:5:in `<top (required)>'
	from /usr/local/bundle/bin/puppet-lint:[25](https://*********/puppet-****/-/jobs/13772#L25):in `load'
	from /usr/local/bundle/bin/puppet-lint:25:in `<main>'
Cleaning up project directory and file based variables

Environment(s)

  • macOS Montery + MacPorts 2.7.2 + ruby31 @3.1.2_1
  • Linux ( Debian 11.x + gitlab runner 15.4 + docker image ruby:3.1.2-bullseye )

Additional Context

None

@jhowe-uw jhowe-uw added the bug Something isn't working label Oct 13, 2022
@jhowe-uw
Copy link
Author

Additional info: works using puppet-lint 2.5.2 ( and I'm trying to use standard voxpopuli add-ons )

puppet-lint (2.5.2)
puppet-lint-absolute_classname-check (3.0.1)
puppet-lint-anchor-check (1.0.1)
puppet-lint-classes_and_types_beginning_with_digits-check (1.0.0)
puppet-lint-empty_string-check (1.0.0)
puppet-lint-file_ensure-check (1.0.0)
puppet-lint-leading_zero-check (1.0.0)
puppet-lint-legacy_facts-check (1.0.4)
puppet-lint-lookup_in_parameter-check (1.0.0)
puppet-lint-manifest_whitespace-check (0.2.5)
puppet-lint-no_erb_template-check (1.0.0)
puppet-lint-optional_default-check (1.0.0)
puppet-lint-param-docs (1.7.5)
puppet-lint-param-types (0.0.1)
puppet-lint-params_empty_string-check (1.0.0)
puppet-lint-resource_reference_syntax (1.1.0)
puppet-lint-strict_indent-check (2.0.8)
puppet-lint-top_scope_facts-check (1.0.1)
puppet-lint-topscope-variable-check (1.1.0)
puppet-lint-trailing_comma-check (0.4.3)
puppet-lint-unquoted_string-check (2.1.0)
puppet-lint-variable_contains_upcase (1.2.0)
puppet-lint-version_comparison-check (1.0.0)

@jhowe-uw jhowe-uw changed the title puppet-lint 3.0.0 refuses to run on multiple platforms puppet-lint 3.0.0 refuses to run on multiple platforms when recommended vox pupuli gems installed Oct 13, 2022
@ekohl
Copy link

ekohl commented Oct 19, 2022

I can at least confirm it's breaking the test suite of a plugin.

@chelnak
Copy link

chelnak commented Oct 20, 2022

It looks like I broke things in 3.0.0 - the change proposed by @ekohl will will resolve the issue.

I will get a release cut as soon as it's merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working community
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants