Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(PUP-4530) FreeBSD specific service provider fix #3913

Closed
wants to merge 70 commits into from
Closed

(PUP-4530) FreeBSD specific service provider fix #3913

wants to merge 70 commits into from

Commits on Jan 30, 2015

  1. (PUP-3930) Optimize failed_dependencies?

    I profiled `puppet agent --test` on one of my servers using stackprof
    [1] on Ruby 2.1.
    
    Something like 30% or more of the time was spent in
    `Puppet::Graph::SimpleGraph#upstream_from_vertex`, called from
    `Puppet::Transaction#failed_dependencies?`
    
    It turns out that, while evaluating the resource graph, when considering
    a resource, we look at *the complete set of transitive dependencies* to
    evaluate whether any of them have failed. This is hugely expensive, and
    moreover, is wasted work in the success case where no resources fail.
    
    Instead of all that work, this patch pushes the work to the *failed*
    nodes; When a node fails, we transitively walk the dependents of that
    node, and mark them as having failed dependencies, and then check that
    flag directly when considering whether to skip a node later.
    
    On my test system, this patch drops `puppet agent --test` runtime from
    about 40s to about 23s.
    
    [1] https://github.com/tmm1/stackprof
    nelhage committed Jan 30, 2015
    Configuration menu
    Copy the full SHA
    84be695 View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2015

  1. (PUP-3930) Track dependency_failed incrementally.

    This fixes behavior with dynamically-generated resources, which would
    previously not exist during the mark_failed walk, and thus not get
    flagged as having failed dependencies.
    
    Add a test case exhibiting the desired behavior, which failed on the
    previous commit.
    nelhage committed Mar 12, 2015
    Configuration menu
    Copy the full SHA
    fa219b2 View commit details
    Browse the repository at this point in the history

Commits on Apr 1, 2015

  1. (PUP-4363) Move splay handling to utility module

    This is to allow it to be shared between the agent and other
    applications.
    Erik Dalén committed Apr 1, 2015
    Configuration menu
    Copy the full SHA
    00550ad View commit details
    Browse the repository at this point in the history
  2. (PUP-4363) Add splay support to puppet apply

    Erik Dalén committed Apr 1, 2015
    Configuration menu
    Copy the full SHA
    6c894d4 View commit details
    Browse the repository at this point in the history

Commits on Apr 8, 2015

  1. (PUP-3930) Track the list of failed dependencies

    Restore reporting of *which* dependencies have failed when we skip a
    resource due to failed dependencies.
    nelhage committed Apr 8, 2015
    Configuration menu
    Copy the full SHA
    32e2bf2 View commit details
    Browse the repository at this point in the history

Commits on Apr 23, 2015

  1. (PUP-1253) Add systemd service masking support

    This updates the systemd service type to add support for masking. If a
    service is masked, it is deemed to also be disabled. If a service is
    masked and changed to enabled, it will first be unmasked since the
    standard 'systemctl enable' command does not properly unmask the command
    first.
    
    The check against the delcared feature is in place so that users do not
    have update their code due to differences between systemd and
    non-systemd systems.
    trevor-vaughan committed Apr 23, 2015
    Configuration menu
    Copy the full SHA
    1e2a716 View commit details
    Browse the repository at this point in the history

Commits on Apr 25, 2015

  1. Merge pull request #3684 from onyxpoint/PUP-1253

    (PUP-1253) Add systemd service masking support
    Kylo Ginsberg committed Apr 25, 2015
    Configuration menu
    Copy the full SHA
    836fdc4 View commit details
    Browse the repository at this point in the history

Commits on Apr 26, 2015

  1. (PUP-4030) Support no_proxy env variable

    This change allows puppet to respect the no_proxy ENV var when set on the system.  Previously, Puppet would respect the http(s)_proxy ENV var when connecting HTTP services (e.g. puppetforge) but ignore the no_proxy setting.
    
    Documentation is a bit inconsistent with regards to specifying domain level exception.  WGET docs for example, state that the no_proxy list should be of suffixes and thus an entry with a preceeding '.' (e.g. .example.com) creates an exception for any host under that domain.  Curl man pages and other intenet resources, suggest the use of a '*' as a wildcard.
    
    This change supports both notations.
    Chris Portman committed Apr 26, 2015
    Configuration menu
    Copy the full SHA
    90560ed View commit details
    Browse the repository at this point in the history

Commits on Apr 27, 2015

  1. Configuration menu
    Copy the full SHA
    ae31f9a View commit details
    Browse the repository at this point in the history
  2. Merge branch 'stable'

    thallgren committed Apr 27, 2015
    Configuration menu
    Copy the full SHA
    6960815 View commit details
    Browse the repository at this point in the history
  3. Merge branch 'stable'

    thallgren committed Apr 27, 2015
    Configuration menu
    Copy the full SHA
    ac1de00 View commit details
    Browse the repository at this point in the history
  4. Merge branch 'stable'

    thallgren committed Apr 27, 2015
    Configuration menu
    Copy the full SHA
    d69dec0 View commit details
    Browse the repository at this point in the history
  5. Merge branch 'stable'

    thallgren committed Apr 27, 2015
    Configuration menu
    Copy the full SHA
    e034275 View commit details
    Browse the repository at this point in the history
  6. (PUP-4413) Add acceptance test that 3x forbidden env names work in 4x

    This change adds an acceptance test to ensure that the 3x forbidden
    environment names now work, and continue to work in 4x.
    There are 4 previously forbidden names, which means this test has to run
    puppet 5 times, unfortunately.
    Eric Thompson committed Apr 27, 2015
    Configuration menu
    Copy the full SHA
    606ecda View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2015

  1. Merge pull request #3871 from er0ck/acceptance/master/PUP-4413-Add_ac…

    …ceptance_test_that_3_x_forbidden_env_names_work_in_4_x
    
    (PUP-4413) Add acceptance test that 3x forbidden env names work in 4x
    thallgren committed Apr 28, 2015
    Configuration menu
    Copy the full SHA
    6a3dfe0 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #3875 from puppetlabs/stable

    Merge Stable to Master
    hlindberg committed Apr 28, 2015
    Configuration menu
    Copy the full SHA
    867e24c View commit details
    Browse the repository at this point in the history
  3. Merge branch 'stable'

    hlindberg committed Apr 28, 2015
    Configuration menu
    Copy the full SHA
    8964241 View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2015

  1. (PUP-3341) use the proper manifest with puppet apply and ENC

    The apply application works by overriding the :current_environment with the
    file that was specified on the command line. This had no effect when the node
    object (from the ENC) specified an environment of its own.
    
    Remedy this by looking up the node before the environment, favoring its
    environment over the configured value and overriding the :manifest of the
    chosen one.
    ffrank committed Apr 29, 2015
    Configuration menu
    Copy the full SHA
    39bdac0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6410910 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a4a83ed View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9c267e1 View commit details
    Browse the repository at this point in the history
  5. (PUP-3341) add tests for the changed behavior

    It was decided that (for the time being) puppet apply should behave
    like agent/master when an environment is configured (or specified via
    command line argument) and prefer the environment that was returned
    by the ENC. A warning to that effect should be displayed to the user.
    
    (The warning is not added through this branch - we had this already.)
    ffrank committed Apr 29, 2015
    Configuration menu
    Copy the full SHA
    e4dfc0a View commit details
    Browse the repository at this point in the history

Commits on May 4, 2015

  1. Merge branch 'stable'

    hlindberg committed May 4, 2015
    Configuration menu
    Copy the full SHA
    d1c2a50 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'stable'

    hlindberg committed May 4, 2015
    Configuration menu
    Copy the full SHA
    8f850e5 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    199c8e8 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #3890 from roman-mueller/newtype_deprecation_warning

    (PUP-4517) Add type name to Puppet.newtype deprecation warning
    peterhuene committed May 4, 2015
    Configuration menu
    Copy the full SHA
    04320b0 View commit details
    Browse the repository at this point in the history
  5. (PUP-4532) Add launchd plist for use with OSX AIO

    This commit adds a launchd plist for use with OSX AIO packaging.
    Heath Seals committed May 4, 2015
    Configuration menu
    Copy the full SHA
    b8e51e3 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #3891 from heathseals/pup-4523

    (PUP-4532) Add launchd plist for use with OSX AIO
    melissa committed May 4, 2015
    Configuration menu
    Copy the full SHA
    aa796fa View commit details
    Browse the repository at this point in the history
  7. (maint) Use composable rspec matcher

    Previously, the test was joining the log messages with newlines, and
    then testing if the error message matched.
    
    Rspec 3 matchers are composable, so we can assert more directly that
    the error message matches one of the log entries.
    joshcooper committed May 4, 2015
    Configuration menu
    Copy the full SHA
    0d39504 View commit details
    Browse the repository at this point in the history
  8. (PUP-4524) Stub command execution in base service provider spec.

    Rather than rely on executing ruby to manipulate a file to "emulate" a
    service start/status/stop command, stub command execution itself to
    ensure the base service provider is executing the commands as expected.
    Peter Huene committed May 4, 2015
    Configuration menu
    Copy the full SHA
    04dc479 View commit details
    Browse the repository at this point in the history
  9. (maint) Left justify ENC script

    Previously, the enc script contained leading whitespace due to the way
    ruby handles heredoc.
    
    Shift script contents so there isn't leading whitespace.
    joshcooper committed May 4, 2015
    Configuration menu
    Copy the full SHA
    976735f View commit details
    Browse the repository at this point in the history
  10. Merge branch 'pr/3321'

    * pr/3321:
      (maint) Left justify ENC script
      (maint) Use composable rspec matcher
      (PUP-3341) add tests for the changed behavior
      (PUP-3341) prepare apply spec for non-modulepath related tests of environments
      (maint) prepare apply integration spec for environments
      (PUP-3341) update apply spec test to make ENC specify env
      (PUP-3341) use the proper manifest with puppet apply and ENC
    joshcooper committed May 4, 2015
    Configuration menu
    Copy the full SHA
    1d184e1 View commit details
    Browse the repository at this point in the history

Commits on May 5, 2015

  1. (maint) Do not allow options or fstype to be an empty string

    Currently, we allow the user to pass in an empty string for options like
    fstype and options. If the user does this, Puppet will create an invalid
    entry in the fstab file. We don't want this to happen, since mount will
    barf if we allow the invalid entry to be written
    melissa committed May 5, 2015
    Configuration menu
    Copy the full SHA
    d2be956 View commit details
    Browse the repository at this point in the history
  2. (PUP-1931) Improvements when mount options not specified

    Currently, when a user specified a resource to be mounted, puppet allows
    the user to not pass in any information for either fstype or options.
    This was fine if there was an existing entry for that resource defined
    in fstab, but if this was for a new entry then it would create an
    invalid entry. Then when mount was called against the fstab file, mount
    would barf everywhere.
    
    This commit updates how we deal with updating the fstab file:
    
    * Options omitted
      - Creating a new entry:
        * linux; `:options => 'defaults'`
        * non-linux; raise Puppet::Error
      - Updating an existing entry:
        * Existing entry options set to 'something,valid'; `:options => 'something,valid'`
        * Existing entry options not set
          - linux; `:options => 'defaults'`
          - non-linux; raise Puppet::Error
    * fstype omitted
      - Creating a new entry; raise Puppet::Error
      - Updating an existing entry:
        * Existing entry fstype set to 'ext3'; `fstype => 'ext3'`
        * Existing entry fstype not set; raise Puppet::Error
    melissa committed May 5, 2015
    Configuration menu
    Copy the full SHA
    fa43425 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #3719 from raphink/dev/augeas_rename

    (PUP-4210) Add rename to augeas
    peterhuene committed May 5, 2015
    Configuration menu
    Copy the full SHA
    63e38e2 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #3652 from ChrisPortman/no_proxy_support

    (PUP-4030) Support no_proxy env variable
    peterhuene committed May 5, 2015
    Configuration menu
    Copy the full SHA
    26a825d View commit details
    Browse the repository at this point in the history
  5. Merge remote-tracking branch 'upstream/pr/3892'

    * upstream/pr/3892:
      (PUP-4524) Stub command execution in base service provider spec.
    joshcooper committed May 5, 2015
    Configuration menu
    Copy the full SHA
    877a9a9 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    2cd716b View commit details
    Browse the repository at this point in the history
  7. (PUP-4030) Add missing require for Puppet::Util::HttpProxy.

    A require for `puppet/util/http_proxy` was missing for
    `puppet/network/http/factory` after code that uses
    Puppet::Util::HttpProxy was added.
    
    This originally passed specs because the spec required the file before
    using the HTTP factory.
    Peter Huene committed May 5, 2015
    Configuration menu
    Copy the full SHA
    9bce2a1 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2015

  1. Merge pull request #3896 from peterhuene/maint

    (PUP-4030) Add missing require for Puppet::Util::HttpProxy.
    Michael Smith committed May 6, 2015
    Configuration menu
    Copy the full SHA
    c5c80d5 View commit details
    Browse the repository at this point in the history
  2. (PUP-3930) Add more assertions to a failed-node test.

    We already test that when a resource fails, we don't apply resources
    that (recursively) depend on it. Add some more tests that verify that
    we're propagating internal state correctly as we do so.
    nelhage committed May 6, 2015
    Configuration menu
    Copy the full SHA
    62bd744 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #3888 from kurtwall/PUP-4347

    (PUP-4347) Add test for the File resource ignore attribute
    er0ck committed May 6, 2015
    Configuration menu
    Copy the full SHA
    5840515 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #3789 from melissa/ticket/master/pup-1931

    (PUP-1931) Fix mount provider failure w/o options
    Michael Smith committed May 6, 2015
    Configuration menu
    Copy the full SHA
    4a1b0b9 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #3591 from nelhage/optimize-failed-dependencies

    (PUP-3930) Optimize `failed_dependencies?`
    peterhuene committed May 6, 2015
    Configuration menu
    Copy the full SHA
    84a0bff View commit details
    Browse the repository at this point in the history
  6. (maint) CFacter is no longer in puppet-agent master

    In FACT-956, the ruby facter component was removed from
    puppet-agent#master, and cfacter was renamed to facter. As a result,
    there are no longer files named cfacter.
    
    This commit updates the acceptance test to no longer check for cfacter.
    joshcooper committed May 6, 2015
    Configuration menu
    Copy the full SHA
    f38f035 View commit details
    Browse the repository at this point in the history
  7. Merge pull request #3898 from joshcooper/maint/master/cfacter-is-no-l…

    …onger
    
    (maint) CFacter is no longer in puppet-agent master
    ferventcoder committed May 6, 2015
    Configuration menu
    Copy the full SHA
    f7f65af View commit details
    Browse the repository at this point in the history

Commits on May 7, 2015

  1. (PUP-4473) Extend ENC tests to Windows

    The ENC integration tests using the exec terminus were originally only
    implemented with shell scripts. Extend the testing to create Windows batch
    scripts and run on Windows.
    
    Also create a new spec_helper script_containing to generate a script on
    the appropriate platform. Since script languages also differ, usage
    requires that you provide both Windows and shell versions of the script.
    Michael Smith committed May 7, 2015
    Configuration menu
    Copy the full SHA
    f6f9c6d View commit details
    Browse the repository at this point in the history
  2. (docs) fixing documentation for Puppet::Util::Execution

    Document what happens with stderr output if combine is false
    and correct the default value for squelch
    Erik Dalén committed May 7, 2015
    Configuration menu
    Copy the full SHA
    d59ddda View commit details
    Browse the repository at this point in the history
  3. Merge pull request #3897 from dalen/util_execute_maint

    (docs) fixing documentation for Puppet::Util::Execution
    peterhuene committed May 7, 2015
    Configuration menu
    Copy the full SHA
    162c20c View commit details
    Browse the repository at this point in the history
  4. Merge branch 'stable'

    thallgren committed May 7, 2015
    Configuration menu
    Copy the full SHA
    74ffa1a View commit details
    Browse the repository at this point in the history
  5. Merge branch 'stable'

    HAIL9000 committed May 7, 2015
    Configuration menu
    Copy the full SHA
    e013c59 View commit details
    Browse the repository at this point in the history
  6. Merge branch 'stable'

    hlindberg committed May 7, 2015
    Configuration menu
    Copy the full SHA
    8e495a1 View commit details
    Browse the repository at this point in the history

Commits on May 8, 2015

  1. Merge remote-tracking branch 'upstream/pr/3899'

    * upstream/pr/3899:
      (PUP-4473) Extend ENC tests to Windows
    joshcooper committed May 8, 2015
    Configuration menu
    Copy the full SHA
    36c485f View commit details
    Browse the repository at this point in the history

Commits on May 9, 2015

  1. Merge branch 'stable'

    Kylo Ginsberg committed May 9, 2015
    Configuration menu
    Copy the full SHA
    e6ba084 View commit details
    Browse the repository at this point in the history

Commits on May 11, 2015

  1. FreeBSD specific service provider fix

    Ticket ref: PUP-4530
    infracaninophile committed May 11, 2015
    Configuration menu
    Copy the full SHA
    f2ec73c View commit details
    Browse the repository at this point in the history

Commits on May 12, 2015

  1. (PUP-4342) test calling all parser functions

    This change adds a test for all parser functions.
    This test calls all the parser functions that ship with puppet.  It
    ensures sane output in most cases.  The remainder of the coverage for
    functions lies in the spec tests.
    Eric Thompson committed May 12, 2015
    Configuration menu
    Copy the full SHA
    053d510 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'stable'

    thallgren committed May 12, 2015
    Configuration menu
    Copy the full SHA
    f28f875 View commit details
    Browse the repository at this point in the history
  3. (PUP-4530) FreeBSD specific service provider fix

    Take just the leading string of non-whitespace characters
    from the first line of the rcvar output as the service name
    infracaninophile committed May 12, 2015
    Configuration menu
    Copy the full SHA
    8887f6f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    0f159bb View commit details
    Browse the repository at this point in the history
  5. Merge pull request #3780 from dalen/apply_splay

    (PUP-4363) Support splay in apply as well
    peterhuene committed May 12, 2015
    Configuration menu
    Copy the full SHA
    a37d92a View commit details
    Browse the repository at this point in the history
  6. Merge pull request #3917 from er0ck/acceptance/master/PUP-4342-test_c…

    …alling_all_parser_functions
    
    (PUP-4342) test calling all parser functions; failing spec tests are unrelated to this commit.
    Kurt Wall committed May 12, 2015
    Configuration menu
    Copy the full SHA
    6a3e2ed View commit details
    Browse the repository at this point in the history
  7. (maint) remove spurious test

    this change removes an acceptance test which only exercises an apply
    manifest using the File resource which is even better tested elsewhere
    Eric Thompson committed May 12, 2015
    Configuration menu
    Copy the full SHA
    56b78bd View commit details
    Browse the repository at this point in the history
  8. (maint) Fix bad merge from 3.x branch.

    Commit e1c8724 resolved a conflict
    in defaults.rb that re-introduced the stringify_facts,
    trusted_node_data, and immutable_node_data settings that were removed in
    4.0.
    
    This commit removes them again.
    Peter Huene committed May 12, 2015
    Configuration menu
    Copy the full SHA
    33fcd86 View commit details
    Browse the repository at this point in the history
  9. Merge pull request #3923 from er0ck/acceptance/stable/maint-remove_sp…

    …urious_test
    
    (maint) remove spurious test
    John Duarte committed May 12, 2015
    Configuration menu
    Copy the full SHA
    3ee2dac View commit details
    Browse the repository at this point in the history
  10. (PUP-4601) Add ruby version requirement to .gemspec.

    This will prevent gem upgrade on environments with ruby 1.8.7
    VladRassokhin authored and Peter Huene committed May 12, 2015
    Configuration menu
    Copy the full SHA
    98213cc View commit details
    Browse the repository at this point in the history

Commits on May 13, 2015

  1. Merge pull request #3924 from peterhuene/badmerge

    (maint) Fix bad merge from 3.x branch.
    Kylo Ginsberg committed May 13, 2015
    Configuration menu
    Copy the full SHA
    e1ed065 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #3925 from peterhuene/pr/3870

    (PUP-4601) Add ruby version requirement to .gemspec.
    Kylo Ginsberg committed May 13, 2015
    Configuration menu
    Copy the full SHA
    d81a4ed View commit details
    Browse the repository at this point in the history
  3. Merge remote-tracking branch 'upstream/stable'

    * upstream/stable:
      (PUP-4436) Generate error message in eventlog differently
    joshcooper committed May 13, 2015
    Configuration menu
    Copy the full SHA
    e5ced99 View commit details
    Browse the repository at this point in the history
  4. (PUP-4530) Fix FreeBSD service provider to parse service names correctly

    Take just the leading string of non-whitespace characters from the
    first line of the rcvar output as the service name
    infracaninophile committed May 13, 2015
    Configuration menu
    Copy the full SHA
    d390578 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3b9b43b View commit details
    Browse the repository at this point in the history