Timo Goebel <[email protected]> writes:

> +1 to locking. This is the only workflow that makes sense imho.
> Please note, that we need [1] merged first.

+1 - let's set the right expectations

-- Ivan

>
> - Timo
>
> [1] https://github.com/theforeman/foreman/pull/4283
>
> Am Freitag, 17. Februar 2017 15:05:13 UTC+1 schrieb Marek Hulán:
>>
>> Hello foreman-devs, 
>>
>> recently I was told about the bug that we override all templates in 
>> database 
>> whenever we run db:seed. From the code [1] and commit message [2], it was 
>> not 
>> the intended behavior. It was supposed to check whether user made some 
>> changes 
>> and only apply the new version if the template was not touched. Sadly, the 
>> method only checks the name attribute for changes [3], so if "only" 
>> template 
>> content was changed, we still override it. 
>>
>> While I can try to fix it to originally intended behavior, I'd like to ask 
>> whether it wouldn't be better to use this opportunity and start locking 
>> templates we ship by default. The recommended workflow for users would be 
>> to 
>> clone the template if custom changes are needed. We'd always update locked 
>> templates. Obviously, user would need to merge new version to cloned 
>> template 
>> on his own. With foreman_templates plugin it should be easy enough to 
>> export 
>> templates and see the diff between default and customized template, apply 
>> the 
>> changes user wants and then reimport them back. 
>>
>> I think this would be overall better user experience and safer workflow. 
>> The 
>> originally intended behavior would never update a template that user 
>> modified. 
>> That means after update user ends up with template from old Foreman 
>> version 
>> (with custom changes) that might not be compatible with the new Foreman 
>> version. This is more likely to happen than before because we now version 
>> templates in community-repo and we don't keep backward compatibility as we 
>> did 
>> before. 
>>
>> Thanks for reading, thoughts? 
>>
>> [1] 
>> https://github.com/theforeman/foreman/blob/1.14.0/db/seeds.d/07-provisioning_templates.rb#L98
>>  
>> [2] https://github.com/theforeman/foreman/commit/ 
>> d4ed70154fa9f6c83597adc784240e3865845563 
>> <https://github.com/theforeman/foreman/commit/d4ed70154fa9f6c83597adc784240e3865845563>
>>  
>> [3] https://github.com/theforeman/foreman/blob/1.14-stable/db/seeds.rb#L33 
>>
>> -- 
>> Marek 
>>
>
> -- 
> You received this message because you are subscribed to the Google Groups 
> "foreman-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"foreman-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to