The SIMP project came up with the idea of 'component profiles'. These are
profiles that are meant to be shared but that work best within a specific
ecosystem.

Though our naming is a little askew at the moment, we currently use
'simp_<thing>' as the component profile and '<thing>' as the component
module.

For example:

   - https://github.com/simp/pupmod-simp-rsyslog
   - https://github.com/simp/pupmod-simp-simp_rsyslog

The first is "just rsyslog" and the second is "rsyslog the SIMP way".

Profiles are generally part of frameworks and can be abstracted but, to do
so, have to be designed for abstraction.

Technically, our main 'simp' module at
https://github.com/simp/pupmod-simp-simp is *the* SIMP profile from which
all things spring and one of the main integration testing points.

Doing it this way means that we don't have to have alternate paths, just a
different module name similar to the '_p' suggestion above.

Trevor

On Mon, Jul 15, 2019 at 8:13 AM Rob Nelson <rnels...@gmail.com> wrote:

> Hrm, I wonder how much this has to do with definitions of what a profile
> module is. To me, a profile module includes a lot of component modules and
> conditional logic and an occasional primitive (include apache, include a
> logrotate config, conditionally manage all cron jobs or not). What you're
> describing sounds a lot like component modules I incorporate into profiles
> with an "include ssh" or "include wordpress" statement, possibly
> accompanied by some hiera data (Firefox keeps a good list of ssh ciphers
> depending on your OS, for example,
> https://wiki.mozilla.org/Security/Server_Side_TLS). Sometimes I have let
> a profile get too large, at which point I have split it into a component
> module, and it's often tricky to find that line. Ultimately, for me, a
> profile is implementation-specific; a component is technology- or
> concept-specific and not implementation-specific.
>
> Of course, the forge is a great place to share component modules when
> possible (some of us aren't allowed to share stuff that starts internal,
> unfortunately), but not profiles. While, as Martin noted, profiles tend to
> be pretty specific to implementations and cannot be shared, there are
> certainly good or common patterns that would be useful to share (like the
> conditional management of cron jobs mentioned earlier), but short of
> treating profiles like component modules, I haven't found a good place to
> host them. That's an interesting possibility, to make at least some "base"
> profiles into a component module. I do think it might be more helpful as a
> reference project than as a module people include in their Puppetfile
> (there are bound to be conflicts and disagreements with any opinionated
> codebase that limits their usefulness), BUT that is still a worthwhile
> endeavor for those interested.
>
> Rob Nelson
>
>
> On Mon, Jul 15, 2019 at 5:38 AM comport3 <compo...@gmail.com> wrote:
>
>> Thanks Martin, the PSIC repos are excellent - thanks!
>>
>> And Tim, the logic of having the p_ modules avoiding namespace collisions
>> also makes perfect sense at scale.
>>
>> I was thinking more of a searchable, more goal oriented view of sharing
>> Profiles that implement 1 or more technologies to form a "stack".
>>
>> Eg, 'Securing SSH', 'Achieving an A-Grade with NGiNX TLS on Qualys SSL
>> test, with maximum compatibility', 'WordPress/Magento/Drupal battle tested
>> hosting stacks', etc.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Puppet Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to puppet-users+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/puppet-users/71988a6c-d0f4-4f04-a768-b3f4caf49bce%40googlegroups.com
>> <https://groups.google.com/d/msgid/puppet-users/71988a6c-d0f4-4f04-a768-b3f4caf49bce%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to puppet-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/puppet-users/CAC76iT_90u%2BuCMbsetswR5apA%3DKFCi0UFQDK-jkO0iAiJa4K2g%40mail.gmail.com
> <https://groups.google.com/d/msgid/puppet-users/CAC76iT_90u%2BuCMbsetswR5apA%3DKFCi0UFQDK-jkO0iAiJa4K2g%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>


-- 
Trevor Vaughan
Vice President, Onyx Point, Inc
(410) 541-6699 x788

-- This account not approved for unencrypted proprietary information --

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CANs%2BFoVQQW9kAckFXoxbSCAW0X8W2fWM%3DAgSwf-4s5x3UHDhZQ%40mail.gmail.com.

Reply via email to