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

Incompatibility with Puppet 4+ #31

Open
jorritfolmer opened this issue Apr 19, 2015 · 11 comments
Open

Incompatibility with Puppet 4+ #31

jorritfolmer opened this issue Apr 19, 2015 · 11 comments

Comments

@jorritfolmer
Copy link
Contributor

It seems this module is incompatible with the just released Puppet 4.
I haven't tested this yet on a VM myself, but the Travis CI builds that are used in testing Pull Requests fail big time. Example 1 and example 2:

[SNIP]
Installing puppet 4.0.0
[SNIP]
Could not parse for environment *root*: Illegal fully qualified name in file /home/travis/build/arildjensen/cis-puppet/manifests/el6/1_1_1.pp at line 6:17
Could not parse for environment *root*: Illegal fully qualified name in file /home/travis/build/arildjensen/cis-puppet/manifests/el6/1_1_10.pp at line 6:17
Could not parse for environment *root*: Illegal fully qualified name in file /home/travis/build/arildjensen/cis-puppet/manifests/el6/1_1_14.pp at line 6:17
Could not parse for environment *root*: Illegal fully qualified name in file /home/travis/build/arildjensen/cis-puppet/manifests/el6/1_1_15.pp at line 6:17
Could not parse for environment *root*: Illegal fully qualified name in file /home/travis/build/arildjensen/cis-puppet/manifests/el6/1_1_16.pp at line 6:17
[SNIP]

After some Googling, this came up from the Puppetlabs website:

Each namespace segment must begin with a lowercase letter and can include Lowercase letters, Numbers and Underscores.

So for compatibility with Puppet 4.0.0+ it looks classes like el6::1_1_1 will need to be renamed to el6::c1_1_1 or something similar that makes seach namespace segment begin with a lowercase letter.

@grantholly
Copy link

grantholly commented May 5, 2016

This is still an issue with Puppet 4.x. I'm running Puppet 4.2.2

Error: Illegal fully qualified name at /etc/puppetlabs/code/environments/production/modules/cis/manifests/el6all.pp:8:21 on node mypuppethost.business.com

The line that is complaining about looks like:

include cis::el6::1_1_10

@empressalae
Copy link

empressalae commented Jun 1, 2016

@grantholly we're trying to resolve this by renaming and working around the limitations, if we can get it working I'll reach out and perhaps push it up.

@jeff1evesque
Copy link

Ran into same problem. The solution is quite simple, yet tedious. You'll need to change all hardening manifests to be prefixed with a consistent string. For example, 1_1_10.pp will need to be changed to something like remediate_1_1_10.pp. Then you'll need to adjust all corresponding class namespace, and corresponding import statements.

@jeff1evesque
Copy link

I can submit a pull request with the corresponding fix, if someone is will to review, and merge.

@empressalae
Copy link

I forgot I had posted this here, that's what we did, and then used a fancy for loop to edit all the files in one go and it's in use now.

@jeff1evesque
Copy link

@AngelusDulcis, do you have your this module for puppet 4x available on a public repository?

@empressalae
Copy link

@jeff1evesque I do not, in the middle of the process for our own devices I excised many of the modules to fit our unique needs and it wouldn't be a "full" copy so I didn't make it available, sorry.

@jeff1evesque
Copy link

jeff1evesque commented Jan 13, 2017

I've made the class namespace changes, by adding a prefix remediate_ to all the numeric cis puppet files. However, upon running them, I get the following traceback error:

Error: Failed to apply catalog: Parameter noop failed on Package[procps]: Invalid value "". Valid values are true, false.  at /etc/puppetlabs/code/modules/sysctl/manifests/init.pp:145

Also, if I generalize this solution, for puppet 4x, do you guys want me to push commits to this repository?

@empressalae
Copy link

@jeff1evesque is that procps like - https://gitlab.com/procps-ng/procps -?

@jeff1evesque
Copy link

@AngelusDulcis, that may be it. I manually added the following modules as dependency for this project:

But, I didn't add procps. Do you know if there are other required dependencies?

@empressalae
Copy link

@jeff1evesque I don't recall about others, but I did have procps-ng installed on the puppet server I am using it on. Maybe check and install it see if that resolves that issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants