]> gitweb.fluxo.info Git - puppet-stdlib.git/log
puppet-stdlib.git
14 years ago(maint) Add semantic versioning info to README
Jeff McCune [Fri, 30 Dec 2011 19:46:21 +0000 (11:46 -0800)]
(maint) Add semantic versioning info to README

This patch adds semantic versioning information to the README of this
module.  This information is missing and unclear without this patch.
This should help clarify the support matrix for the Standard Library as
it relates to Puppet Enterprise released versions.

14 years agoMerge pull request #16 from nfagerlund/docs/v2.0.0/XXXX_function_doc_updates
Jeff McCune [Thu, 18 Aug 2011 20:45:28 +0000 (13:45 -0700)]
Merge pull request #16 from nfagerlund/docs/v2.0.0/XXXX_function_doc_updates

Docs/v2.0.0/xxxx function doc updates

14 years agoDocs: Clarify the use case for the anchor type
nfagerlund [Wed, 17 Aug 2011 23:43:22 +0000 (16:43 -0700)]
Docs: Clarify the use case for the anchor type

This commit tweaks the docs for the anchor resource type to give more context
for its existence.

14 years agoDocs: Remove author emails from stdlib functions
nfagerlund [Wed, 17 Aug 2011 22:55:07 +0000 (15:55 -0700)]
Docs: Remove author emails from stdlib functions

Author email addresses were included in the doc strings for some (but not all)
stdlib functions. This commit removes them in the interest of consistency.

14 years agoDocs: Copyedit function doc strings
nfagerlund [Wed, 17 Aug 2011 22:53:27 +0000 (15:53 -0700)]
Docs: Copyedit function doc strings

This commit makes several minor consistency and wording edits to the doc
strings of the stdlib functions.

14 years agoDocs: Correct indentation of markdown code examples
nfagerlund [Wed, 17 Aug 2011 22:20:26 +0000 (15:20 -0700)]
Docs: Correct indentation of markdown code examples

Code examples in several function doc strings were only indented by two
spaces, which would not result in proper display when rendered as HTML. This
commit corrects the indentation to four spaces.

14 years agoDocs: Update documentation of stdlib classes
nfagerlund [Wed, 17 Aug 2011 22:09:03 +0000 (15:09 -0700)]
Docs: Update documentation of stdlib classes

This commit edits the puppetdoc text of the stdlib and stdlib::stages classes
to remove redundancy and add additional information.

14 years agoDocs: Update file_line documentation
Jeff McCune [Tue, 16 Aug 2011 23:09:01 +0000 (16:09 -0700)]
Docs: Update file_line documentation

This commit clarifies the behavior of the file_line resource type.

14 years agoDocs: Improve example in merge function
Jeff McCune [Tue, 16 Aug 2011 22:57:47 +0000 (15:57 -0700)]
Docs: Improve example in merge function

This commit replaces the example in the merge function with a much clearer
one. It also mentions that the rightmost value wins in the event of duplicated
hash keys.

14 years agoUpdate CHANGELOG, README and Modulefile for v2.1.1
Jeff McCune [Thu, 18 Aug 2011 17:52:54 +0000 (10:52 -0700)]
Update CHANGELOG, README and Modulefile for v2.1.1

14 years agoMerge branch 'ticket/v2.x/9080_match_facts.d_to_facter2dot0' into v2.x
Jeff McCune [Thu, 18 Aug 2011 19:06:30 +0000 (12:06 -0700)]
Merge branch 'ticket/v2.x/9080_match_facts.d_to_facter2dot0' into v2.x

* ticket/v2.x/9080_match_facts.d_to_facter2dot0:
  (#9080) Make facts.d match Facter 2.0

14 years ago(#9080) Make facts.d match Facter 2.0
Jeff McCune [Thu, 18 Aug 2011 17:44:40 +0000 (10:44 -0700)]
(#9080) Make facts.d match Facter 2.0

Based on feedback from Luke, the facts.d directory should at least match
the directory that will be used by Facter 2.0.

Reading #2157 I believe the Facter 2.0 facts.d feature is reasonably API
compatible with this custom fact from R.I. so I'm comfortable using the
same filesystem path.

Change in behavior:  Now look for facts in:
 * /etc/facter/facts.d
 * /etc/puppetlabs/facter/facts.d

14 years agoUpdate CHANGELOG, Modulefile and README for 2.1.0
Jeff McCune [Wed, 17 Aug 2011 23:37:20 +0000 (16:37 -0700)]
Update CHANGELOG, Modulefile and README for 2.1.0

14 years agoMerge branch 'ticket/v2.x/9080_add_static_facts' into v2.x
Jeff McCune [Wed, 17 Aug 2011 23:32:46 +0000 (16:32 -0700)]
Merge branch 'ticket/v2.x/9080_add_static_facts' into v2.x

* ticket/v2.x/9080_add_static_facts:
  (#9080) Add facts from /etc/puppetlabs/facts.d

14 years ago(#9080) Add facts from /etc/puppetlabs/facts.d
Jeff McCune [Wed, 17 Aug 2011 23:13:59 +0000 (16:13 -0700)]
(#9080) Add facts from /etc/puppetlabs/facts.d

This fact is a direct copy of R.I.'s work at
https://github.com/ripienaar/facter-facts

This is necessary plumbing to allow the installer to write a simple text
file based on the role the node is receiving.  For example:

    $ cat /etc/puppetlabs/facts.d/puppet_enterprise_mcollective.txt
    fact_stomp_port=61613
    fact_stomp_server=puppetmaster
    fact_is_puppetagent=true
    fact_is_puppetmaster=true

The mcollectivepe module relies on these facts being set and we need a
persistent place to write them during the interview process and later
read them when puppet agent runs to configure MCollective on the agent
systems.

Since stdlib is a public module, both /etc/facts.d and
/etc/puppetlabs/facts.d are scanned for static facts.

14 years agoMerge pull request #11 from jeffmccune/ticket/master/8793_cut_version_2.0.0
Jeff McCune [Mon, 8 Aug 2011 18:00:26 +0000 (11:00 -0700)]
Merge pull request #11 from jeffmccune/ticket/master/8793_cut_version_2.0.0

Update CHANGELOG and Modulefile for 2.0.0 release

Reviewed-by: Dan Bode
14 years agoUpdate CHANGELOG and Modulefile for 2.0.0 release
Jeff McCune [Fri, 5 Aug 2011 02:42:30 +0000 (19:42 -0700)]
Update CHANGELOG and Modulefile for 2.0.0 release

14 years agoMerge pull request #10 from jeffmccune/ticket/master/8792_rename_whole_line_to_file_line
Ken Barber [Mon, 8 Aug 2011 16:47:30 +0000 (09:47 -0700)]
Merge pull request #10 from jeffmccune/ticket/master/8792_rename_whole_line_to_file_line

(#8792) Rename whole_line type to file_line.

14 years ago(#8792) Rename basic smoke test to reflect file_line rename
Jeff McCune [Mon, 8 Aug 2011 16:33:56 +0000 (09:33 -0700)]
(#8792) Rename basic smoke test to reflect file_line rename

Without this patch the basic smoke test in the module tests/ directory
did not math up with the renamed whole_line => file_line resource type.

This patch updates the smoke test file to match the most recently
selected name of file_line.  The filename has been changed, comments
added to the smoke test file, and resource declarations inside the file
changed.

14 years ago(#8792) Rename whole_line type to file_line
Jeff McCune [Fri, 5 Aug 2011 02:17:48 +0000 (19:17 -0700)]
(#8792) Rename whole_line type to file_line

Without this patch the resource whole_line would be included in the
stable stdlib module shipping in PE 1.2.  Ideally the name will be
stable and unchanging in the future.

There was quite a bit of concern over whole_line being an unwise name.
file_line appears to be the most suitable name and least likely to need
another rename in the future.

14 years agoUpdate CHANGELOG and Modulefile for 1.1.0
Jeff McCune [Fri, 5 Aug 2011 01:34:32 +0000 (18:34 -0700)]
Update CHANGELOG and Modulefile for 1.1.0

14 years agoMerge branch 'refactor/master/8665_whole_line'
Jeff McCune [Fri, 5 Aug 2011 00:58:05 +0000 (17:58 -0700)]
Merge branch 'refactor/master/8665_whole_line'

* refactor/master/8665_whole_line:
  (#8665) Change type from append_line to whole_line

14 years agoUpdate CHANGELOG and README for 1.0.0
Jeff McCune [Fri, 5 Aug 2011 00:20:39 +0000 (17:20 -0700)]
Update CHANGELOG and README for 1.0.0

14 years agoMerge branch 'ticket/master/8678_validate_array_string'
Jeff McCune [Thu, 4 Aug 2011 23:05:49 +0000 (16:05 -0700)]
Merge branch 'ticket/master/8678_validate_array_string'

* ticket/master/8678_validate_array_string:
  (#8678) Add validate_array and validate_string functions

14 years ago(#8678) Add validate_array and validate_string functions
Jeff McCune [Wed, 3 Aug 2011 22:51:27 +0000 (15:51 -0700)]
(#8678) Add validate_array and validate_string functions

The accounts module is making use of validate_array() and
validate_string() which do not exist int he stdlib module without this
patch.

This patch adds the two functions to the stdlib with unit tests.

Reviewed-by: Dan Bode
14 years agoMerge branch 'ticket/master/8717_merge_function_ruby_185'
Jeff McCune [Mon, 1 Aug 2011 18:48:50 +0000 (11:48 -0700)]
Merge branch 'ticket/master/8717_merge_function_ruby_185'

* ticket/master/8717_merge_function_ruby_185:
  (#8717) Make merge() function work with Ruby 1.8.5

14 years ago(#8717) Make merge() function work with Ruby 1.8.5
Jeff McCune [Mon, 1 Aug 2011 18:30:28 +0000 (11:30 -0700)]
(#8717) Make merge() function work with Ruby 1.8.5

The previous behavior of the merge() function used Array#inject with two
arguments.  Ruby 1.8.5 only supports inject being used with one
argument.

This change initializes and empty Hash object and merges each argument
into the accumulator.  The last argument still "wins" in the merge.

rspec tests (cd spec; rspec **/*_spec.rb) verified as passing with this
change.

Reviewed-by: Dan Bode
14 years agoMerge branch 'feature/master/add_merge_has_key'
Dan Bode [Fri, 29 Jul 2011 22:42:53 +0000 (15:42 -0700)]
Merge branch 'feature/master/add_merge_has_key'

14 years ago(#8709) Add hash merging function
Dan Bode [Fri, 29 Jul 2011 22:28:21 +0000 (15:28 -0700)]
(#8709) Add hash merging function

In Puppet, it is not possible to reassign hash
values.

This function allows a reasonable way to perform
hash munging in Puppet.

Reviewed-by: Jeff McCune
14 years ago(#8708) Add has_key function
Dan Bode [Fri, 29 Jul 2011 22:10:13 +0000 (15:10 -0700)]
(#8708) Add has_key function

It is difficult to use existance of keys in a hash
as a boolean condition in Puppet (see #8705)

This function provides a working solution until
the underlying issue in Puppet can be resolved.

Reviewed-by: Jeff McCune
14 years ago(#8665) Change type from append_line to whole_line
Dan Bode [Wed, 27 Jul 2011 22:28:44 +0000 (15:28 -0700)]
(#8665) Change type from append_line to whole_line

Changed the type name from append_line to
whole_line.

After feedback that having a type with a verb in
the name was confusing.

14 years agoMerge branch 'ticket/master/8585_load_yaml_function'
Jeff McCune [Tue, 26 Jul 2011 22:46:23 +0000 (15:46 -0700)]
Merge branch 'ticket/master/8585_load_yaml_function'

* ticket/master/8585_load_yaml_function:
  (#8575) Add loadyaml() function

14 years ago(#8575) Add loadyaml() function
Jeff McCune [Mon, 25 Jul 2011 17:42:27 +0000 (10:42 -0700)]
(#8575) Add loadyaml() function

This change adds a loadyaml() puppet function that takes a path to a
YAML data file and returns the contents as a Puppet variable.  There is
currently no validation of the contents of the file.

This commit is intentionally lacking unit tests because of time
constraints.

Reviewed-by: Dan Bode
14 years agoMerge branch 'feature/master/8628_append_line'
Dan Bode [Tue, 26 Jul 2011 22:35:52 +0000 (15:35 -0700)]
Merge branch 'feature/master/8628_append_line'

14 years ago(#8628) Add append_line native type
Dan Bode [Tue, 26 Jul 2011 22:27:42 +0000 (15:27 -0700)]
(#8628) Add append_line native type

This commit adds a native type that can check if
a line exists and append it to a file.

This use case seems common enough to warrant its
inclusion into stdlib.

Reviewed-by: Jeff McCune
14 years agoUpdate CHANGELOG and version for 0.1.7
Jeff McCune [Wed, 22 Jun 2011 00:08:05 +0000 (17:08 -0700)]
Update CHANGELOG and version for 0.1.7

14 years agoUpdate README with getvar() and validate_hash()
Jeff McCune [Wed, 22 Jun 2011 00:06:46 +0000 (17:06 -0700)]
Update README with getvar() and validate_hash()

The README now provides quick examples of how to take advantage of the
getvar() and validate_hash() functions included in this release of the
stdlib.

14 years agoMerge branch 'ticket/master/8010_validate_hash_function'
Jeff McCune [Wed, 22 Jun 2011 00:03:25 +0000 (17:03 -0700)]
Merge branch 'ticket/master/8010_validate_hash_function'

* ticket/master/8010_validate_hash_function:
  (#8010) Add validate_hash spec tests
  (#8010) Add validate_hash function

14 years ago(#8010) Add validate_hash spec tests
Jeff McCune [Wed, 22 Jun 2011 00:02:22 +0000 (17:02 -0700)]
(#8010) Add validate_hash spec tests

These tests run through a number of example cases and exercise the
behavior of the validate_hash function.

To run, simple execute rspec validate_hash_spec.rb

14 years ago(#8010) Add validate_hash function
Jeff McCune [Wed, 22 Jun 2011 00:01:33 +0000 (17:01 -0700)]
(#8010) Add validate_hash function

This function validates all passed variables are hashes.  This is
similar to the validate_bool function and is copied from it.

14 years agoMerge branch 'ticket/master/8010_getvar_function'
Jeff McCune [Wed, 22 Jun 2011 00:01:14 +0000 (17:01 -0700)]
Merge branch 'ticket/master/8010_getvar_function'

* ticket/master/8010_getvar_function:
  (#8010) Add getvar() rvalue function

14 years ago(#8010) Add getvar() rvalue function
Jeff McCune [Tue, 21 Jun 2011 21:10:33 +0000 (14:10 -0700)]
(#8010) Add getvar() rvalue function

This isn't directly related to #8010, but rather indirectly fills the
need to allow the end user to configure where data values are looked up.

This allows the namespace to be passed as a class parameter.  A module
may then quickly and easily look up data from the user-defined
namespace.

14 years agoRemove metadata.json from repository
Jeff McCune [Mon, 20 Jun 2011 23:05:18 +0000 (16:05 -0700)]
Remove metadata.json from repository

This file is generated from the puppet-module build command and should
not be included in the repository.  If it is, the repository is not
directly usable on a Puppet master because the metadata.json is invalid.

14 years agoUpdate CHANGELOG for version 0.1.6
Jeff McCune [Wed, 15 Jun 2011 18:53:15 +0000 (11:53 -0700)]
Update CHANGELOG for version 0.1.6

14 years agoMerge pull request #4 from jeffmccune/ticket/master/3_anchor_resource_type
Jeff McCune [Wed, 15 Jun 2011 18:51:33 +0000 (11:51 -0700)]
Merge pull request #4 from jeffmccune/ticket/master/3_anchor_resource_type

Ticket/master/3 anchor resource type

Nan +1'ed on the tech list.

Merging into master.

14 years ago(#3) Add simple unit test for anchor type
Jeff McCune [Wed, 15 Jun 2011 16:43:22 +0000 (09:43 -0700)]
(#3) Add simple unit test for anchor type

Unlike the whit type the anchor type derives from, we are not hacking
the stringify method.  We expect the resource to be named simply
Anchor[foo::bar] where the name is "foo::bar".

14 years ago(#3) Add an anchor type to provide containment
Jeff McCune [Wed, 15 Jun 2011 16:40:04 +0000 (09:40 -0700)]
(#3) Add an anchor type to provide containment

With Puppet 2.6.x we do not have a way to specify containment
relationships.  In the use case of class ntp { } declaring
ntp::{package,config,service} classes, the ntp class itself should allow
the user to specify before and require relationships to the main ntp
class.

The anchor resource type allows module authors to close the loop on
classes composing the main top level module.  For example:

    class ntp {
      class { 'ntp::package': }
      -> class { 'ntp::config': }
      -> class { 'ntp::service': }
      # These two resources "anchor" the composed classes
      # such that the end user may use "require" and "before"
      # relationships with Class['ntp']
      anchor { 'ntp::begin': } -> class { 'ntp::package': }
      class { 'ntp::service': } -> anchor { 'ntp::end': }
    }

Using this pattern, the module user may then simply declare relationships to
the ntp class as they expect:

    class { 'ntp': } -> class { 'mcollective': }
    # OR
    class { 'mcollective': } -> class { 'ntp': }

14 years agoAdd additional tests to validate_bool() spec
Jeff McCune [Fri, 3 Jun 2011 18:56:02 +0000 (11:56 -0700)]
Add additional tests to validate_bool() spec

14 years agoUpdate CHANGELOG for 0.1.5
Jeff McCune [Fri, 3 Jun 2011 18:43:38 +0000 (11:43 -0700)]
Update CHANGELOG for 0.1.5

14 years agoAdd Apache 2.0 License
Jeff McCune [Fri, 3 Jun 2011 18:44:23 +0000 (11:44 -0700)]
Add Apache 2.0 License

14 years agoMerge branch 'feature/master/validation_functions'
Jeff McCune [Fri, 3 Jun 2011 18:42:39 +0000 (11:42 -0700)]
Merge branch 'feature/master/validation_functions'

* feature/master/validation_functions:
  Add spec test for validate_bool function
  Add validate_bool() function to stdlib

14 years agoAdd spec test for validate_bool function
Jeff McCune [Fri, 3 Jun 2011 18:41:20 +0000 (11:41 -0700)]
Add spec test for validate_bool function

This is an interesting spec test for module developers.
It illustrates how to cause Puppet to test the function
from the Puppet DSL rather than the Ruby DSL, fully
exercising the system from the perspective of the end
user.

(Note how Puppet[:code] is set, then the scope reset, then
the compile method called.)

Paired-with: Dan Bode <dan@puppetlabs.com>

14 years agoAdd validate_bool() function to stdlib
Jeff McCune [Fri, 3 Jun 2011 18:39:45 +0000 (11:39 -0700)]
Add validate_bool() function to stdlib

This function aborts catalog compilation if any of the passed
values are not true or false.  Note, this catches the string
values of true and false correct and will abort catalog
compilation if they are not boolean values.

Paired-with: Dan Bode <dan@puppetlabs.com>

14 years agoUpdate CHANGELOG with stage re-ordering
Jeff McCune [Thu, 26 May 2011 17:25:45 +0000 (10:25 -0700)]
Update CHANGELOG with stage re-ordering

14 years agoMerge branch 'bug/master/prefer_stages_after_main'
Jeff McCune [Thu, 26 May 2011 17:25:35 +0000 (10:25 -0700)]
Merge branch 'bug/master/prefer_stages_after_main'

* bug/master/prefer_stages_after_main:
  Move stages to after main

14 years agoMove stages to after main
Jeff McCune [Thu, 26 May 2011 17:21:42 +0000 (10:21 -0700)]
Move stages to after main

Working with the stages in stdlib, I quickly ran into an issue where
most of the stages were before the main stage.  This made it difficult
to declare any resources in a traditional "include" style class while
hiding the end user from the stages being associated with other module
classes.

For example, in class mcollective, a package would be declared in main.
However, if mcollective declared class mcollective::service in stage
infra_deploy and this was before main, there would be a dependency loop
between the package and the service.

There appears to be a convention around "chain your stages after main"
to avoid the need to create relatively empty shell classes.

14 years agoUpdate CHANGELOG for 0.1.3 release
Jeff McCune [Wed, 25 May 2011 20:29:27 +0000 (13:29 -0700)]
Update CHANGELOG for 0.1.3 release

14 years agoMerge branch 'feature/master/7657_validate_re'
Jeff McCune [Wed, 25 May 2011 19:39:58 +0000 (12:39 -0700)]
Merge branch 'feature/master/7657_validate_re'

* feature/master/7657_validate_re:
  (#7657) Add basic validate_re function

14 years ago(#7657) Add basic validate_re function
Jeff McCune [Wed, 25 May 2011 19:38:15 +0000 (12:38 -0700)]
(#7657) Add basic validate_re function

While developing Puppet Modules with class parameters, data from the
user should be validated as per the Style Guide.  Puppet should fail
early and hard in the situation of invalid data being passed into the
module.

This function provides a more concise method to the alternative of using
if statements in the Puppet manifests.

14 years agoAdd DS_Store to gitignore
Jeff McCune [Wed, 25 May 2011 16:36:08 +0000 (09:36 -0700)]
Add DS_Store to gitignore

14 years agoUpdate changelog for version 0.1.2
Jeff McCune [Tue, 24 May 2011 18:48:50 +0000 (11:48 -0700)]
Update changelog for version 0.1.2

Also add release process information.

14 years agoAdd changelog to track releases
Jeff McCune [Tue, 24 May 2011 18:27:41 +0000 (11:27 -0700)]
Add changelog to track releases

Following the development process, as new releases of this module are
cut the Changelog will be updated.

14 years agoAdd standard set of run stages.
Jeff McCune [Tue, 24 May 2011 18:25:51 +0000 (11:25 -0700)]
Add standard set of run stages.

Many modules I'm working on need a standard but
relatively granular location in the catalog.  For example,
any module that configures the packaging system should
run "early"

Add the following stages which have inter-dependencies
in the top to bottom order listed:

 * setup
 * deploy
 * runtime
 * setup_infra
 * deploy_infra
 * main
 * setup_app
 * deploy_app

14 years agoUpdate README with target versions
Jeff McCune [Tue, 24 May 2011 18:23:16 +0000 (11:23 -0700)]
Update README with target versions

Also add the list of things this module will
likely contain.

14 years agoInitial commit
Jeff McCune [Tue, 24 May 2011 18:06:30 +0000 (11:06 -0700)]
Initial commit