satelliteqe / puppet-robottelo_slave Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v3.0
License: GNU General Public License v3.0
Both configure '/home/jenkins/.gitconfig', but in a different manner, so it is not detected at compile time and instead causes configuration to never converge at runtime.
This, in turn, causes false-positive changes in Puppet and prevents detection wither a node is fully configured.
Here is an excerpt from Puppet logs showing the issue:
Notice: /Stage[main]/Slave/File[/home/jenkins/.gitconfig]/content: content changed '{md5}7b2e0a20b9a4f007389e15d53d0d6927' to '{md5}947ecd2ca48489a210b9d6d64fa7d1ca'
Notice: /Stage[main]/Robottelo_slave::Config/Git::Config[http.sslVerify]/Git_config[http.sslVerify]/value: value changed '' to 'false'
The apply.sh
script tries to install librarian-puppet
with gem
and then assumes that it is in path.
Since gem
installs librarian-puppet
at /usr/local/bin/librarian-puppet
, and apply.sh
should probably be run as root
, this may not be the case because some distros do not place /usr/local/bin
in the path for the root
user.
The 'Slave/Slave::Rvm_config' resources include 'Exec' resources that get run every time Puppet is run instead of only when changes are needed.
This causes false-positive change notifications in the Puppet logs and makes the configuration not converge.
Following is an example of some of the Puppet errors yielded:
Notice: /Stage[main]/Slave/Package[mysql-dev]/ensure: created
Error: Cannot create /home/jenkins/pr_tests; parent directory /home/jenkins does not exist
Error: /Stage[main]/Slave/File[/home/jenkins/pr_tests]/ensure: change from absent to directory failed: Cannot create /home/jenkins/pr_tests; parent directory /home/jenkins does not exist
Notice: /Stage[main]/Slave/Package[libxslt1-dev]/ensure: created
Error: Could not set 'file' on ensure: No such file or directory - /home/jenkins/.katello-ca.cert20160118-689-1ln5jkv at 296:/root/src/puppet-robottelo_slave/modules/slave/manifests/init.pp
Error: Could not set 'file' on ensure: No such file or directory - /home/jenkins/.katello-ca.cert20160118-689-1ln5jkv at 296:/root/src/puppet-robottelo_slave/modules/slave/manifests/init.pp
Wrapped exception:
No such file or directory - /home/jenkins/.katello-ca.cert20160118-689-1ln5jkv
Error: /Stage[main]/Slave/File[/home/jenkins/.katello-ca.cert]/ensure: change from absent to file failed: Could not set 'file' on ensure: No such file or directory - /home/jenkins/.katello-ca.cert20160118-689-1ln5jkv at 296:/root/src/puppet-robottelo_slave/modules/slave/manifests/init.pp
This might back traced back to code from the theforeman/foreman-infra
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.