| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With the previous behavior, any fact which depended on another fact in a file
not matching its name would fail to properly load the required fact, resulting
in missing, incorrect, or inconsistent values.
For instance, the operatingsystem fact depends on the lsbdistid fact found in
lsb.rb. The first time the operatingsystem fact is requested, it requires
lsb.rb, and so the required fact is loaded first. But if Facter is subsequently
cleared and the operatingsystem fact requested again, the require will not
occur, and the fact will not be automatically loaded because it doesn't match
its filename.
Now if a fact is requested and can't be found, we will attempt to load all the
facts to find it. Such an approach appears heavy-handed, but in the case where
we want a particular fact, this is the only way to make sure we've found it. In
the case where we eventually want other facts, we are conveniently eagerly
loading them.
Paired-With: Jacob Helwig <jacob@puppetlabs.com>
|
|\
| |
| |
| |
| |
| |
| |
| | |
'ticket/next/6728-facter_improperly_detects_openvzve_on_cloudlinux_systems' into next
* ticket/next/6728-facter_improperly_detects_openvzve_on_cloudlinux_systems:
(#6728) Facter improperly detects openvzve on CloudLinux systems
(#6883) Update Facter install.rb to be slightly more informative.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Make the openvz check for more than just the vz directory to be sure it's
OpenVZ.
Update the OpenVZ fact to be slightly more resilient in it's checking of
OpenVZ, so it doesn't clash with CloudLinux's LVE container system.
|
| |
| |
| |
| |
| | |
The sysctl uptime fixture was little endian, which fails on sparc
hardware. Added a big endian fixture and endian detection.
|
|/
|
|
|
| |
renames Facter::Util::Resolution#length to weight as a more generic
mechanism for allowing resolutions to state their importance
|
| |
|
|\
| |
| |
| |
| |
| | |
* tickets/next/6716-osx-ipv6-macaddress:
Clean up indentation, and alignment in macaddress_spec.rb
(#6716) fix facter issues on OSX with ipv6 in macaddress.rb.
|
| |
| |
| |
| |
| |
| |
| | |
This changes the spec file from 4-space indentations to 2-space
indentations to match the style guide[1].
[1] http://projects.puppetlabs.com/projects/puppet/wiki/Development_Lifecycle#Style
|
| |
| |
| |
| |
| |
| | |
Due to "netstat -rn" returning multiple protocols (IPv4 and IPv6) the
"default_interface" can get more than one entry in to it, causing the
macaddress resolving to break. This limits it to just one interface.
|
| |
| |
| |
| |
| | |
Added facts arp (like the ipaddress etc) facts
Added facts arp_interfacename
|
|/
|
|
|
|
|
|
|
|
| |
1. Fixed IP return to not filter lo/localhost and return it
as a proper interface
2. Fixed HP-UX netstat return to remove extraneous first line
of naming.
3. Updated tests to reflect changes
|
|
|
|
|
|
|
|
|
|
| |
It's not clear to me how these are now needed and apparently
weren't when we first checked this in. These stubs will let the
specs continue on so we can check the load order, which was the
original intent of (#5510) which caused the introduction of these
specs.
Signed-off-by: Rick Bradley <rick@rickbradley.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
Merged manually to the current state of the art. Minimal conflicts resolved
by adding both Darwin and GNU/KFreeBSD to the confine lines.
Author: Marc Fournier <marc.fournier@camptocamp.com>
Signed-off-by: Daniel Pittman <daniel@puppetlabs.com>
Signed-off-by: Rick Bradley <rick@rickbradley.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ruby's Dir.entries will return files in different orders depending on
the OS and/or filesystem. As a result Facter::Util::Loader will load
ruby custom fact definitions in different orders on different platforms.
Specs to expose the bugs, and code to ensure that custom fact files are
loaded in alphabetical order.
Addresses redmine issue #5510
http://projects.puppetlabs.com/issues/5510
Signed-off-by: Rick Bradley <rick@rickbradley.com>
Signed-off-by: Daniel Pittman <daniel@puppetlabs.com>
|
|
|
|
|
|
| |
Rename all the spec tests to follow the rspec convention of *_spec.rb rather
than unadorned *.rb; this also makes it easier to work with them consistently
without using the Rakefile support that customizes that.
|
|
|
|
|
|
| |
Because we pull in spec_helper in individual tests, we need to use a
consistent path or Ruby will evaluate it multiple times. Make the path
consistent by expanding it before require.
|
|
|
|
| |
We have moved to rspec2 for puppet, and facter should follow suit.
|
|
|
|
|
|
|
|
|
| |
'who -b' doesn't report the year of the last system boot on (at least)
Solaris 10, and OpenSolaris 2009.06. Try using 'kstat -p
unix:::boot_time', which reports as seconds since the epoch on these
systems before falling back to 'who -b'.
Reviewed-by: Paul Berry <paul@puppetlabs.com>
|
|
|
|
| |
Reviewed-by: Paul Berry <paul@puppetlabs.com>
|
|
|
|
|
|
|
| |
Just tests the regex, won't actually catch problems if prtdiag doesn't
return output like our test.
Paired-with: Nick Lewis
|
| |
|
|
|
|
|
| |
Parses `/usr/sbin/xm list` and returns a comma-separated list of
domains. Based on a patch submitted by Jonas Genannt.
|
|\
| |
| |
| |
| |
| | |
Manually resolved conflicts:
lib/facter/virtual.rb
spec/unit/virtual.rb
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With HP-UX you can build virtual machines that are often refered to as
HP-VMs.
This patch detecs HP-VMs by introducing a new function hpvm? that will
check the output of /usr/bin/getconf MACHINE_MODEL. This should not
depend on any tools that might be not installed.
If inside a HP-VM the command will say something like
ia64 hp server Integrity Virtual Machine
while on real hardware the output could be
ia64 hp server rx660
so searching for "Virtual Machine" should work.
Currently it only works if the guest is also running HP-UX.
(I guess this is the most common usecase).
|
| | | |
| \ | |
|\ \ \
| | |/
| |/|
| | | |
'pnasrat/tickets/master/4956' into next
|
| |/ |
|
|\ \ |
|
| |/
| |
| |
| | |
* With tests for 9.8.0, 10.3.0 and 10.6.4
|
|/
|
|
|
|
|
|
|
| |
Regexp tested the s_context or VxID field if /proc/self/status and
returned false for 0 and true for any other number. 0 indicates a host,
which is still virtual.
Fix changes regexp to correctly report hosts as virtual. Tested against
vserver 2.1 and 2.3.
|
|
|
|
|
|
|
| |
Updating the spec to check for the existence of /proc/vz to match the
change in the previously applied patch.
Signed-off-by: Rein Henrichs <rein@puppetlabs.com>
|
|\ |
|
| |
| |
| |
| |
| |
| | |
There was no support for detecting FreeBSD running in KVM as a virtual in facter. This patch detects KVM by getting "hw.model" kernel state via sysctl. Jails running in KVM are also correctly detected as "jail" not "kvm".
Signed-off-by: Jiri Kubicek <jiri.kubicek@kraxnet.cz>
|
| |
| |
| |
| |
| |
| | |
There was no support for detecting FreeBSD jails as a virtual in facter. This patch detects jail by getting "security.jail.jailed" kernel state via sysctl.
Signed-off-by: Jiri Kubicek <jiri.kubicek@kraxnet.cz>
|
| | | |
| \ | |
|\ \|
| | |
| | |
| | | |
'ticket/master/4453-rakefile'
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Rewrite of uptime facts and supporting utility methods. Works on unix,
BSD, windows. No longer makes redundant system calls.
Uses Facter::Util::Uptime utility methods:
* Implemented uptime_seconds_unix using /proc/uptime or who -b on unix,
sysctl on BSD.
Added unit tests for the behaviors of get_uptime_seconds_unix: read
from proc/uptime, read uptime from "sysctl -b kern.boottime", read
uptime from "who -b", and return nil if nothing else works.
* Implemented uptime_seconds_win using the Win32 API.
Facts implemented:
* uptime_{seconds,hours,days}
Returns the respective integer value.
* uptime
Returns human readable uptime statistic that preserves original
behavior.
Examples:
3 days
1 day
5:08 hours
0:35 hours
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The 2nd regex (with the 0x\d+) got removed because it appears
to never be used, even on SunOS, for which it has been
introduced (99833a1b / #1793).
The 3dn regex is changed to clearly confine the value between
mandatory newlines/whitespaces.
|
|/
|
|
|
| |
This test compares a fact made with dmidecode (linux and bsd) with one using
smbios (solaris).
|
|
|
|
| |
Includes Rspec tests
|
|
|
|
|
|
|
|
|
|
| |
This patch is originally by Daniel Berger <djberg96@gmail.com>, I
changed using Facter.value instead of repeatedly testing
Config['host_os'], removed Resolution::which, and fixed the specs.
Thanks to Paul Nasrat for helping with cross-platform debugging.
Signed-off-by: David Schmitt <david@dasz.at>
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Splitting dmi output on the string "/^Handle/" didn't work, and
caused the function to match the wrong key if it was found more
than once.
The intended behaviour of the function is restored by splitting
the dmi output on the regex /^Handle/.
|
|
|
|
|
|
| |
Process.waitall()
Thanks to Jos Backus for the fix.
|
|
|
|
| |
Based on initial patch by James Turnbull
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 33fb7709404e706801683e6c47ab7a0a5a1884b1.
This has broken master for some facts (eg OS X facts), it also breaks facter
platform support on win32 as popen3 does not work there.
I'd like to get master working, backlog of patches applied and revisit exec.
Paul
|
|
|
|
| |
This adds a test to ensure we are not prematurely splitting on Handle
|
|
|
|
|
|
|
|
|
| |
In addition to the stripping of the output of these facts this patchset:
Refactor - Extracted function to enable easier testing.
Tests - data driven tests for the dmidecode/smbios fact.
Paul
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
So far messages to stderr haven't been catched by
Facter::Util::Resolution.exec and were insted printed out to
stderr. This will cause facter and even puppet to print to stderr
themself, which is not very nice when running puppetd by cron,
as you might get every run a mail if a command outputs to stderr.
We are now wrapping the command execution with Open3.popen3 to
catch stderr and passing them to the new introduced Facter.warn
method.
We are also catching multiline outputs chomping newlines and
returning an array if there have been more than one line. Otherwise
we return an array containing the different lines.
This prevents in general cases as described in #2766 and should
handle command execution in a bit saner way.
|
|
|
|
| |
This adds a unit test on top of Kurt's patch
|