Adds additional check for osx puppet group creation

Accounts for circumstances where the puppet user is created, but the
puppet group is not (created user via syspref window).

Previously would not create group if user already existed
(maint) Skip IPv6 examples that cannot pass on MRI 1.9.3-p327

Without this patch applied the following examples fail on MRI
1.9.3-p327, but not other versions.

Failures:

  1) Puppet::Network::AuthStore::Declaration when the pattern is a valid IP such as ::2:3:4:5:6:7:8 should match the specified IP
     Failure/Error: @declaration = Puppet::Network::AuthStore::Declaration.new(:allow_ip,ip)
     ArgumentError:
       invalid address
     # ./lib/puppet/network/authstore.rb:252:in `new'
     # ./lib/puppet/network/authstore.rb:252:in `parse_ip'
     # ./lib/puppet/network/authstore.rb:171:in `pattern='
     # ./lib/puppet/network/authstore.rb:151:in `initialize'
     # ./spec/unit/network/authstore_spec.rb:304:in `new'
     # ./spec/unit/network/authstore_spec.rb:304:in `block (4 levels) in <top (required)>'

  2) Puppet::Network::AuthStore::Declaration when the pattern is a valid IP such as ::2:3:4:5:6:7:8 should not match other IPs
     Failure/Error: @declaration = Puppet::Network::AuthStore::Declaration.new(:allow_ip,ip)
     ArgumentError:
       invalid address
     # ./lib/puppet/network/authstore.rb:252:in `new'
     # ./lib/puppet/network/authstore.rb:252:in `parse_ip'
     # ./lib/puppet/network/authstore.rb:171:in `pattern='
     # ./lib/puppet/network/authstore.rb:151:in `initialize'
     # ./spec/unit/network/authstore_spec.rb:304:in `new'
     # ./spec/unit/network/authstore_spec.rb:304:in `block (4 levels) in <top (required)>'

These failures are a result of Bug https://bugs.ruby-lang.org/issues/7477 in MRI itself.

This patch addresses the problem by explicitly excluding the examples that will
fail because of the bugged Ruby interpreter.  The patch targets very specific
patch level versions of MRI so that future and past MRI versions will
explicitly fail, notifying us when the root cause of the issue is resolved.
(maint) Use conditional pending mechanism for ruby issue 7477

Without this patch Daniel's concern isn't being addressed, "It seems
like this would be much better handled with the "conditional pending"
mechanism that rspec provides." [1]

This patch switches over to conditional pending messages to disable the
examples.

[1]: http://goo.gl/5VzBa
Merge pull request #1367 from jeffmccune/fix/master/ipaddress_specs

(maint) Skip IPv6 examples that cannot pass on MRI 1.9.3-p327
Fixup use of conditional pending

Without this patch the tests aren't actually getting marked as pending
because exceptions are being raised in the before blocks.  This patch
addresses the problem by switching the declaration references to a lazy
evaluated let method rather than a preemptive before block.  This
prevents the exception and allows the pending methods to execute.
(maint) Add Travis CI Support

This patch adds Travis support.  It also makes sure that `bundle install
--path vendor` works with `bundle exec rake spec`.

This patch should coincide with enabling Travis CI support for pull requests.
A build status image is also included in the project README.
Future proof authstore ruby issue 7477

Without this patch once a new patch level version of MRI comes out,
Travis CI will start failing because the test that fails on
`IPAddr.new('::2:3:4:5:6:7:8')` because of ruby issue 7477 [1].  This
patch fixes the problem by raising an exception if the bugged code is
still bugged.  When the issue is fixed the blocks of code that cause the
examples to be marked as pending will pass without exception.

[1]: http://goo.gl/Bb1LU
Merge pull request #1373 from jeffmccune/feature/master/travis_ci

(maint) Add Travis CI Support
(maint) Add Travis CI support to active branches

Without this patch all active branches do not have proper Travis configuration
files.  This is a problem because Travis will exercise any branch pushed to the
puppetlabs organization repository on Github.  The default behavior is to email
notifications which is undesirable.

To address this problem Travis configuration settings are added to an active
branch.

Active branches are those that have recent activity when compared against the
following command:

    for k in `git branch -r |grep origin/|perl -pe s/^..//`
    do
      echo -e `git show --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" $k|head -n 1`\\t$k;
    done | sort -r | grep origin

Which should produce output like:

    2013-01-06 02:10:28 -0800 14 hours ago  origin/master
    2013-01-02 16:59:15 -0800 4 days ago    origin/3.0.x
    2012-12-18 10:36:18 -0800 3 weeks ago   origin/2.7.x
    2012-07-09 15:34:04 -0700 6 months ago  origin/2.6.x
    2011-11-03 15:02:03 -0700 1 year, 2 months ago  origin/0.24.x
    2011-10-21 23:15:37 -0700 1 year, 3 months ago  origin/0.25.x
Merge branch 'fix/2.7.x/travis_active_branches' into 2.7.x

* fix/2.7.x/travis_active_branches:
  (maint) Add Travis CI support to active branches
Merge branch '2.7.x' into 3.0.x

* 2.7.x:
  (maint) Add Travis CI support to active branches

Conflicts:
	.gitignore
	Gemfile
	puppet.gemspec
Merge branch '3.0.x'

* 3.0.x:
  (maint) Add Travis CI support to active branches

Conflicts:
	.travis.yml
	Gemfile
Relax gem dependencies on Facter and Hiera

Without this patch applied an older version of Hiera is
automatically installed as a dependency installing Puppet.  This is a
problem because there are important bug fixes happening in later minor
versions of Hiera.  The same is true of Facter.  The cause of the
problem is a tight specification of `gem :hiera, "~> 1.0.0"` which means
"greater than 1.0.0 but less then 1.1.0".  1.1.2 is the current latest
bug fix version of Hiera.

This patch fixes the problem by relaxing the dependency to "~> 1.0"
which means "greater than 1.0.0 and less than 2.0.0"
Merge pull request #1372 from jeffmccune/fix/master/gem_dependencies

Relax gem dependencies on Facter and Hiera
(#18394) Remove puppet-queue.conf from redhat spec

conf/puppet-queue.conf was removed from source in commit ade52f7, This broke
puppet redhat packaging, which references the file explicitly. This commit
updates the packaging to reflect its absence.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Merge pull request #1368 from mrzarquon/osx_pkg_groupcheck

Adds additional check for osx puppet group creation
(Maint) Update the supported ruby versions

The list of ruby versions was incorrect (1.8.5 is no longer supported)
and unclear (there is no best effort support of other versions). This
simplifies the language there.
(Maint) Point users to mailing list and IRC
(Maint) Remove "RVM considered harmful"

Many of the developers on puppet actually use RVM for developing. There
is no need to call it out in this manner.
(Maint) Remove references to 'I'

There is no 'I' in this document. Removing the first person allows us to
be more direct in the language used for expressing things.