-
Notifications
You must be signed in to change notification settings - Fork 104
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
PDK 1.2.1 test unit
fails for unsupported OSes
#338
Comments
The facts for Debian9 in facterdb had an issue where some of them were from a sid system. This was fixed in voxpupuli/facterdb@5d61581 , which was shipped with 1.2.1. The error message itself looks like its coming from your module balking on operatingsystemrelease being |
I'm getting the same error for Debian 8.0, so is this really an issue of "my module"? (Note: I'm testing roles of a control repository.) $ pdk test unit 2> /dev/null
failed: rspec: ./spec/classes/role_server_customer_standalone_spec.rb:10: error during compilation: Evaluation Error: Error while evaluating a Function Call, The software module is not supported on Debian with version 8.0. at /builds/comsolit/puppet-control/spec/fixtures/modules/software/manifests/params.pp:192:5 on node runner-fa1040f1-project-186-concurrent-0.comsolit.local
role::server::customer_standalone on debian-8-x86_64 should compile into a catalogue without dependency cycles
Failure/Error:
end
it { is_expected.to compile.with_all_deps }
end
end
failed: rspec: ./spec/classes/role_server_customer_standalone_spec.rb:10: error during compilation: Evaluation Error: Error while evaluating a Function Call, The software module is not supported on Debian with version 9.1. at /builds/comsolit/puppet-control/spec/fixtures/modules/software/manifests/params.pp:192:5 on node runner-fa1040f1-project-186-concurrent-0.comsolit.local
role::server::customer_standalone on debian-9-x86_64 should compile into a catalogue without dependency cycles
Failure/Error:
end
it { is_expected.to compile.with_all_deps }
end
end
failed: rspec: ./spec/classes/role_workstation_backoffice_spec.rb:14: error during compilation: Evaluation Error: Error while evaluating a Function Call, The software module is not supported on Debian with version 8.0. at /builds/comsolit/puppet-control/spec/fixtures/modules/software/manifests/params.pp:192:5 on node runner-fa1040f1-project-186-concurrent-0.comsolit.local
role::workstation::backoffice on debian-8-x86_64 should compile into a catalogue without dependency cycles
Failure/Error:
end
it { is_expected.to compile.with_all_deps }
end
end
failed: rspec: ./spec/classes/role_workstation_backoffice_spec.rb:14: error during compilation: Evaluation Error: Error while evaluating a Function Call, The software module is not supported on Debian with version 9.1. at /builds/comsolit/puppet-control/spec/fixtures/modules/software/manifests/params.pp:192:5 on node runner-fa1040f1-project-186-concurrent-0.comsolit.local
role::workstation::backoffice on debian-9-x86_64 should compile into a catalogue without dependency cycles
Failure/Error:
end
it { is_expected.to compile.with_all_deps }
end
end
failed: rspec: ./spec/classes/role_workstation_developer_spec.rb:14: error during compilation: Evaluation Error: Error while evaluating a Function Call, The software module is not supported on Debian with version 8.0. at /builds/comsolit/puppet-control/spec/fixtures/modules/software/manifests/params.pp:192:5 on node runner-fa1040f1-project-186-concurrent-0.comsolit.local
role::workstation::developer on debian-8-x86_64 should compile into a catalogue without dependency cycles
Failure/Error:
end
it { is_expected.to compile.with_all_deps }
end
end
failed: rspec: ./spec/classes/role_workstation_developer_spec.rb:14: error during compilation: Evaluation Error: Error while evaluating a Function Call, The software module is not supported on Debian with version 9.1. at /builds/comsolit/puppet-control/spec/fixtures/modules/software/manifests/params.pp:192:5 on node runner-fa1040f1-project-186-concurrent-0.comsolit.local
role::workstation::developer on debian-9-x86_64 should compile into a catalogue without dependency cycles
Failure/Error:
end
it { is_expected.to compile.with_all_deps }
end
end This build result is from an adapted "operatingsystem_support": [
{
"operatingsystem": "Debian",
"operatingsystemrelease": ["8", "9"]
}, |
It looks like PDK only reports one dependency at a time. So, having around 40 modules of dependencies in our control repository, it will take me potentially 40 test runs and 40 Git repository forks and adaptions of Also note that each test run over our control repo takes around 3 minutes, because PDK installs all Not very encouraging prospects for us getting the build pass again. |
Looking at your errors,
it fails in Some more general notes: The PDK in its current form is targeted at single module development. Many modules have not yet switched to using the pdk (look at the |
I know, we're all pioneers, and only a vanishing portion of the modules out there use the thing that was just born a month ago. We all know that, and it's normal. And, maybe we at @comsolit are the only ones that are using PDK for testing control repos, despite the fact that it's not designed to do that. But: it worked, or seemed to work, just a few days ago. And now we need to get it working again. We need to get this fixed, not explained why "it's good as it is". It's broken now. And must be fixed. So, I'll go through all the modules that PDK complains about (
There's no "running the PDK" over anything, if I understand the inner workings right. It's |
Bottom line: It should probably be possible to turn the Error into a Warning to make the test run pass for arbitrary dependencies. |
Hey @bittner , this is definitely an interesting scenario that we'd like to see through for you. Given what @DavidS has found in regards to the recent changes to Debian facts in facterdb, can you try pinning the |
I'm testing roles in our control repository, and I've notices that while
pdk unit test
passed successfully last week (with PDK 1.2.0) it fails since the release of PDK 1.2.1, e.g.Our
metadata.json
specifies Debian 9 as our target OS version, that is why compiling mayflower-php (or puppet-php) seems to fail:It is probably intended to more strongly enforce the manifest now, correct?
The text was updated successfully, but these errors were encountered: