-
Notifications
You must be signed in to change notification settings - Fork 15
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
Beaker broken for Fedora >20, Ubuntu 15.04 #63
Comments
* Without this, wouldn't be provisioned via RPM or tarball * Relevant to #32 and #63 Signed-off-by: Daniel Farrell <[email protected]>
Note that I'm not totally convinced that is really about tar/lack of tar. Could be something else and a cryptic (as normal) error message from Puppet. |
Here's the most relevant part of F21 Beaker error message, btw:
|
Until we get this line of code via a new Puppet release, F21 Beaker tests will be broken in the same way the F20 ones are. Note that CentOS 7 is not affected because of this line. Marking this as blocked on a Puppet release that includes 1b8737. |
The fix we need was included when the Puppet 3.7.5 release was cut. Hasn't been packaged for Fedora yet:
|
Tuns out they use a different Yum repo. Once I pointed Yum at yum.puppetlabs.com I got the 3.7.5 update. Direct link to RPM.
|
After I moved to Puppet 3.7.5 and got the associated fix I'm back to seeing tar-related errors.
I think that's caused by this puppetlabs/puppet code: def self.instance
if Puppet::Util.which('tar') && ! Puppet::Util::Platform.windows?
Gnu.new
elsif Puppet.features.minitar? && Puppet.features.zlib?
Mini.new
else
raise RuntimeError, 'No suitable tar implementation found'
end
end Which makes sense given that
|
Manually installing tar fixes the problem:
|
I don't think I'll be able to fix the tar issue by using a simple Puppet # Configure all nodes in nodeset
c.before :suite do
# Install opendaylight module on any/all Beaker hosts
# TODO: Should this be done in host.each loop?
puppet_module_install(:source => proj_root, :module_name => 'opendaylight')
hosts.each do |host|
# Install stdlib, a dependency of the odl mod
# TODO: Why is 1 an acceptable exit code?
on host, puppet('module', 'install', 'puppetlabs-stdlib'), { :acceptable_exit_codes => [0,1] }
# Install archive, a dependency of the odl mod use for tarball-type installs
on host, puppet('module', 'install', 'camptocamp-archive'), { :acceptable_exit_codes => [0] }
# Install Java Puppet mod, a dependency of the tarball install method
on host, puppet('module', 'install', 'puppetlabs-java'), { :acceptable_exit_codes => [0] }
end
end First debuging plan is to attempt to find an F21 Vagant box that does have tar installed by default (relevant to #15). |
The
|
After switching to the
Based on this thread, the issue seems to be fairly common and unclear-if-fixed. Ideas:
|
Using this Beaker node config:
So this F21 Vagrant box, using this Vagrantfile:
I see this error:
|
Same error as described above with the box-cutter/fedora21 Vagrant box. Debugging... |
Looks like it's actually an error with my VBox kernel mod version. sigh |
After fixing my local Vagrant setup, re-testing the box-cutter/fedora21 Vagrant box. Beaker config:
Resulting Vagrantfile:
Fails with (partial)
|
|
|
Building on the info provided in the two threads above, I'm able to reproduce the problem in a fairly simple setup.
It doesn't seem to matter which F21 box I use. Failing ExampleVagrantfile:
Output of
Working exampleJust removing the private network line in the Vagrantfile:
Output of
|
* Likely an issue with Vagrant image, not Puppet mod * Relevant to issue #63 Signed-off-by: Daniel Farrell <[email protected]>
As of this commit, beaker (2.14.1) is currently incompatible with vagrant/fedora 20+. See: dfarrell07/puppet-opendaylight#63 (comment)
As of this commit, beaker (2.14.1) is currently incompatible with vagrant/fedora 20+. See: dfarrell07/puppet-opendaylight#63 (comment)
As of this commit, beaker (2.14.1) is currently incompatible with vagrant/fedora 20+. See: dfarrell07/puppet-opendaylight#63 (comment)
I'm still seeing the failure from |
Seeing the same error for Beaker 2.18.3.
|
Upgrade CentOS box to one that tracks the latest version (15.05 atm). Use boxcutter boxes for all Vagrantfiles. Seem higher quality. Add a Fedora 22 box. Note that Beaker 2.18.3 (current version) is incompatible with F20+, so those tests are currently failing. See #63 Signed-off-by: Daniel Farrell <[email protected]>
|
Use (seemingly better) boxcutter Ubuntu 14.04 box. Add Ubuntu 15.04 box. Note that the 15.04 Beaker tests are currently failing (see #63). Update Rake tasks accordingly. Signed-off-by: Daniel Farrell <[email protected]>
Summery: Fedora 21, 22 and Ubuntu 15.04 Beaker tests are failing. The Fedora ones are clearly an issue with Beaker, it attempts invalid commands. The Ubuntu may be as well, I haven't looked as closely. Fedora 20, CentOS 7 and Ubuntu 14.04 work. |
Upgrade CentOS box to one that tracks the latest version (15.05 atm). Use boxcutter boxes for all Vagrantfiles. Seem higher quality. Add a Fedora 22 box. Note that Beaker 2.18.3 (current version) is incompatible with F20+, so those tests are currently failing. See #63 Signed-off-by: Daniel Farrell <[email protected]>
Use (seemingly better) boxcutter Ubuntu 14.04 box. Add Ubuntu 15.04 box. Note that the 15.04 Beaker tests are currently failing (see #63). Update Rake tasks accordingly. Signed-off-by: Daniel Farrell <[email protected]>
I'm addressing this by moving from Vagrant -> Docker as the Beaker provider. See #8. |
Update: Turns out the F21 failures have nothing to do with the info in the first few posts below. Skip to this comment.
Another update: ^^That was true, but now that we have Puppet 3.7.5 and the associated patch we're seeing the tar-related error again, so we're back to the first issue described.
Third update: Fedora 21, 22 and Ubuntu 15.04 Beaker tests are failing. The Fedora ones are clearly an issue with Beaker, it attempts invalid commands. The Ubuntu may be as well, I haven't looked as closely. Fedora 20, CentOS 7 and Ubuntu 14.04 work.
Apparently the Fedora 21 Vagrant box we're using doesn't ship with tar by default (not sure if that's the case with F21 generally, likely so).
It is is the repos, we just need to manually install it for Fedora 21.
The text was updated successfully, but these errors were encountered: