Jira (PUP-11023) Make trlinkin-noop a fully supported feature

3 views
Skip to first unread message

Reid Vandewiele (Jira)

unread,
Apr 7, 2021, 1:58:03 PM4/7/21
to puppe...@googlegroups.com
Reid Vandewiele created an issue
 
Puppet / New Feature PUP-11023
Make trlinkin-noop a fully supported feature
Issue Type: New Feature New Feature
Assignee: Unassigned
Created: 2021/04/07 10:57 AM
Priority: Normal Normal
Reporter: Reid Vandewiele

The Forge module trlinkin-noop has been used heavily by customers for years. However, it is extremely finicky to use due to a bit of a hack of an implementation. This makes it difficult to base higher-level use cases on. See reidmv-change_risk, which provides some customers with an ability to better control when Puppet is permitted to enforce certain kinds of changes on systems, while continuously enforcing other configuration.

We should provide an in-product noop() function which can be called directly, affecting class scope, or with a block, affecting that block's scope.

These implementations should be more predictable and less brittle than the trlinkin-noop module's implementation. They should work at least as reliably and predictably as tags.

class example1 {
  noop()
 
  notify { 'I am no-op': }
} 

class example2 {
  notify { 'I am op': }
 
  noop() || {
    notify { 'I am no-op': } 
  }
}

Add Comment Add Comment
 
This message was sent by Atlassian Jira (v8.13.2#813002-sha1:c495a97)
Atlassian logo

Reid Vandewiele (Jira)

unread,
Apr 7, 2021, 2:00:05 PM4/7/21
to puppe...@googlegroups.com
Reid Vandewiele updated an issue
Change By: Reid Vandewiele
The Forge module [trlinkin-noop|https://forge.puppet.com/modules/trlinkin/noop] has been used heavily by customers for years. However, it is extremely finicky to use due to a bit of a hack of an implementation. This makes it difficult to base higher-level use cases on. See [reidmv-change_risk|https://forge.puppet.com/modules/reidmv/change_risk], which provides some customers with an ability to better control when Puppet is permitted to enforce certain kinds of changes on systems, while continuously enforcing other configuration.


We should provide an in-product {{noop()}} function which can be called directly, affecting class scope, or with a block, affecting that block's scope.

These implementations should be more predictable and less brittle than the trlinkin-noop module's implementation. *They should work at least as reliably and predictably as tags.*
{code:java}

class example1 {
  noop()

  notify { 'I am no-op': }
} {code}
{code:java}
class example2 {
  noop() || {
  notify { 'I am no- op': }
  }
  noop() || {
    notify { 'I am
no- op': }
  }

}{code}

Reid Vandewiele (Jira)

unread,
Apr 7, 2021, 2:02:10 PM4/7/21
to puppe...@googlegroups.com
Reid Vandewiele updated an issue
The Forge module [trlinkin-noop|https://forge.puppet.com/modules/trlinkin/noop] has been used heavily by customers for years. However, it is extremely finicky to use due to a bit of a hack of an implementation. This makes it difficult to base higher-level use cases on. See [reidmv-change_risk|https://forge.puppet.com/modules/reidmv/change_risk], which provides some customers with an ability to better control when Puppet is permitted to enforce certain kinds of changes on systems, while continuously enforcing other configuration.

We should provide an in-product {{noop()}} function which can be called directly, affecting class scope, or with a block, affecting that block's scope.

These implementations should be more predictable and less brittle than the trlinkin-noop module's implementation. *They should work at least as reliably and predictably as tags.*
 

The behavior with regards to propagation relating to 
{ {include()}} is the thing most important to make better compared to trlinkin-noop. 
{
code:java}class example1 {

  noop()

  notify { 'I am no-op': }
} {code}
{code:java}
class example2 {
  noop() || {
    notify { 'I am no-op': }
  }

  notify { 'I am op': }
}{code}

Ciprian Badescu (Jira)

unread,
Jun 15, 2021, 10:19:02 AM6/15/21
to puppe...@googlegroups.com

Reid Vandewiele (Jira)

unread,
Jun 15, 2021, 2:23:01 PM6/15/21
to puppe...@googlegroups.com
Reid Vandewiele commented on New Feature PUP-11023
 
Re: Make trlinkin-noop a fully supported feature

Hey Ciprian Badescu, can you add a comment clarifying what information is needed, or if it is not literally information needed, what next steps / conditions / events the ticket is now waiting on? Thanks!

Beth Glenfield (Jira)

unread,
Jun 21, 2021, 11:50:02 AM6/21/21
to puppe...@googlegroups.com

We're looking to prioritize this work and will be tracking additional input from the wider customer base and community on Productboard: https://puppet.com/puppet-idea-portal/. Reid Vandewiele it would be good to get some time to discuss this in more depth, I'll try and find some time in your calendar for next week.

Ciprian Badescu (Jira)

unread,
Jun 23, 2021, 10:13:03 AM6/23/21
to puppe...@googlegroups.com

Beth Glenfield (Jira)

unread,
Jul 1, 2021, 11:15:04 AM7/1/21
to puppe...@googlegroups.com
Beth Glenfield assigned an issue to Unassigned
Change By: Beth Glenfield
Assignee: Beth Glenfield

David Sandilands (Jira)

unread,
Aug 12, 2021, 5:23:02 AM8/12/21
to puppe...@googlegroups.com
David Sandilands commented on New Feature PUP-11023
 
Re: Make trlinkin-noop a fully supported feature

I would have bitten your hand off to have this feature when i was a customer I had and a number of customers like Natwest and Blackrock Andy Troup have a struggle to move the customer or certain nodes from noop to enforcement because its an all or nothing event.

This creates side problems agent upgrades are harder with noop and stymie efforts to move to proper puppet enforcing.

productboard (Jira)

unread,
Dec 14, 2021, 9:30:01 AM12/14/21
to puppe...@googlegroups.com
productboard updated an issue
 
This message was sent by Atlassian Jira (v8.20.2#820002-sha1:829506d)
Atlassian logo

Josh Cooper (Jira)

unread,
Oct 6, 2022, 12:24:04 AM10/6/22
to puppe...@googlegroups.com
Josh Cooper updated an issue
Change By: Josh Cooper
Team: Phoenix
This message was sent by Atlassian Jira (v8.20.11#820011-sha1:0629dd8)
Atlassian logo

Josh Cooper (Jira)

unread,
Oct 6, 2022, 12:30:03 AM10/6/22
to puppe...@googlegroups.com
Josh Cooper updated an issue
Change By: Josh Cooper
Epic Link: PA-3841
Reply all
Reply to author
Forward
0 new messages