title: Puppet file_line in specific order
body: <p>Im trying to add three system hardening lines to /etc/profile:</p>
  
  <pre><code>TMOUT=43200
  readonly TMOUT
  export TMOUT
  </code></pre>
  
  <p>Of course those lines need to be in this specific order and I also have to expect files which are messed up and are in the wrong order.
  <strong>I can't use a template because there are hosts with custom profiles which can't be changed. So I have to be able to append those three lines</strong></p>
  
  <p>So I wrote this in my manifest:</p>
  
  <pre><code>file_line { 'TMOUT':
    path     =&gt; '/etc/profile',
    ensure   =&gt; present,
    line     =&gt; 'TMOUT=43200',
    multiple =&gt; true,
    before   =&gt; 'readonly TMOUT',
    match    =&gt; '^TMOUT',
  }
  file_line { 'readonly TMOUT':
    path     =&gt; '/etc/profile',
    ensure   =&gt; present,
    line     =&gt; 'readonly TMOUT',
    multiple =&gt; true,
    before   =&gt; 'export TMOUT',
    after    =&gt; '^TMOUT=43200',
    match    =&gt; '^readonly TMOUT',
  }
  file_line { 'export TMOUT':
    path     =&gt; '/etc/profile',
    ensure   =&gt; present,
    line     =&gt; 'export TMOUT',
    multiple =&gt; true,
    after    =&gt; '^readonly TMOUT',
    match    =&gt; '^export TMOUT',
  }
  </code></pre>
  
  <p>Puppet creates the lines in the correct order but when I edit the file and change the order it doesn't get corrected during a rerun e.g.</p>
  
  <pre><code>readonly TMOUT
  export TMOUT
  TMOUT=43200
  </code></pre>
  
  <p>Did I make a mistake or do I have to switch to something else like Augeas?</p>
  
  <p>Thanks in advance</p>