Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-5889

Add a --strict flag to Puppet

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: PUP 4.5.0
    • Component/s: None
    • Labels:
      None
    • Template:
    • Epic Link:
    • Story Points:
      1
    • Sprint:
      Language 2016-03-09
    • Release Notes:
      New Feature
    • Release Notes Summary:
      Hide
      A --strict=[warn, error, ignore] mode has been added to settings. This enables Puppet to be as picky as possible when parsing, validating and compiling a catalog. Additional strictness may be introduced in minor releases (x.y) but not in maintenance releases (x.y.z).
      Turning on --strict also turns on --strict_variables.
      Show
      A --strict=[warn, error, ignore] mode has been added to settings. This enables Puppet to be as picky as possible when parsing, validating and compiling a catalog. Additional strictness may be introduced in minor releases (x.y) but not in maintenance releases (x.y.z). Turning on --strict also turns on --strict_variables.

      Description

      Add a flag --strict to puppet settings. When in effect this will turn on --strict_variables, and will also enable other "helpful" but undesirable behavior. (Each such behavior to be defined in a separate ticket).

      The semantics of this flag should be:

      • --strict=ignore; no strictness checks are to be performed, nothing is reported.
      • --strict=warn; strictness checks are performed, they are reported as warnings, individually configurable warnings follow their own setting (i.e. if they are added to disabled_warnings).
        • strict=errors; strictness checks are performed, they are reported as errors and stop the execution. Further configuration to error individually is not supported.

      When we add this we promise to not change the set of things that lead to warning/error in .z releases, but we reserve the right to do so for .x releases. The idea being is that you can safely accept updates for .z without having to do anything. For .x releases you may need to step back to --strict=warning and then correct the problem before going back to --strict=error.

      This scheme should cater to those that are pedantic about following best practises and not using deprecated features while those that only care at major version boundaries can do so in peace without being bothered with lots of deprecation warnings.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                henrik.lindberg Henrik Lindberg
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Zendesk Support