| 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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is in line with our proposed plan to change
from the GPL license to Apache 2.0.
Please see this link for further explanation:
https://groups.google.com/d/topic/puppet-users/NuspYhMpE5o/discussion
|
| |
| |
| |
| |
| | |
renames Facter::Util::Resolution#length to weight as a more generic
mechanism for allowing resolutions to state their importance
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On an OSX host:
$ facter operatingsystem
Darwin
$ facter_operatingsystem=Not_Darwin facter operatingsystem
Not_Darwin
But on a linux/solaris host:
$ facter operatingsystem
CentOS
$ facter_operatingsystem=Not_CentOS facter operatingsystem
CentOS
As the operatingsystem fact resolution for linux-based kernels has higher
precedence than the environment variable as it has more matching confines than
the value from the environment variable.
This patch adds from_environment to the resolution mechanism, which makes the
resolution have an artificially high weight by claiming the length of its
confines array is 1 billion.
|
| |
|
| |
|
|
|
|
|
| |
If xend is not running, xm list writes to stderr and facter propagates
this to the user. Redirect stderr to /dev/null.
|
|\
| |
| |
| |
| |
| | |
* 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.
|
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There's no easy defined way of getting memory information from the command
line.
Copying mainly the OpenBSD facts, but having to pull in memory free from
the vm_stat utility, and parsing the weird vm.swapusage sysctl value for
swap. Parsing "top -l 1 -n 0" seemed an option, but that took over a
second to run each time, so this appears cheaper.
|
|\ \ |
|
| |/
| |
| |
| | |
Patch modified from Hector Rivas
|
|/
|
|
|
|
|
|
|
|
| |
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
|
|\ |
|
| |
| |
| |
| | |
Tested on Ruby 1.9.2p180
|
|\ \ |
|
| |/
| |
| |
| | |
compatibility
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that IPocalypse has happened, IPv6 support in Facter core would be nice to
have. So, we add the appropriate code to start handling that.
The ipaddress6 fact as supplied included some smart code to try determining
the "primary" address using DNS to resolve the AAAA record for the host FQDN.
While this was smart, it actually didn't work: facter prefers the longest
confine list, so the *stupid* mechanisms that were kernel-specific would
override the smarter and more portable mechanisms.
We strip that code out for now, which also brings this into line with the
existing ipaddress fact; improving both would be good, but it should be uniform.
Paired-With: Matt Robinson <matt@puppetlabs.com>
Paired-With: Max Martin <max@puppetlabs.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>
|
|
|
|
|
|
|
|
|
| |
'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>
|
|
|
|
| |
Signed-off-by: William Van Hevelingen <wvan13@gmail.com>
|
|
|
|
|
| |
Add total memory from prtconf output, free from vmstat plus swap free and
total from swap -l listing.
|
|
|
|
|
| |
Use prtdiag output on Solaris/SPARC to determine manufacturer and productname as
smbios is unavailable.
|
|
|
|
|
| |
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).
|
|\ \
| | |
| | |
| | |
| | |
| | | |
Conflicts:
bin/facter
lib/facter/application.rb
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Patch removes reliance on clock ticks and instead queries for last boot time and subtracts from Time.now
Signed-off-by: William Van Hevelingen <wvan13@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* getTickCount.call() is not an epoch time value so compute_uptime
is not necessary
Signed-off-by: William Van Hevelingen <wvan13@gmail.com>
|
|\ \ \
| | |/
| |/| |
|
| | |
| | |
| | |
| | | |
Resolution.exec used to ensure that any shell errors are suppressed.
|
|\| | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Patch removes reliance on clock ticks and instead queries for last boot time and subtracts from Time.now
Signed-off-by: William Van Hevelingen <wvan13@gmail.com>
|
| |/
| |
| |
| |
| |
| |
| | |
* getTickCount.call() is not an epoch time value so compute_uptime
is not necessary
Signed-off-by: William Van Hevelingen <wvan13@gmail.com>
|
|\ \ |
|
| |/
| |
| |
| | |
* 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.
|
|
|
|
|
|
|
|
|
|
| |
Patch from the ticket[1] checks for /proc/vz instead of /proc/vz/vzinfo.
NOTE that this causes a spec failure since the spec was not changed to
match.
[1] http://projects.reductivelabs.com/issues/4156
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'
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Per #4466, Ruby has trouble reading files in /proc [1]. The
alternative is to use `bin/cat`.
* Also refactored methods to explicitly redirect standard error to
/dev/null for *nix and BSD system calls.
[1] http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/155745
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|