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

Agent sends wrong content-type when using http file sources

    XMLWordPrintable

Details

    • Bug Fix
    • Puppet can now retrieve file sources from webservers when the associated MIME type is not "binary". This affects IIS webservers in particular.
    • No Action

    Description

      Error when running a Puppet agent run:

      file {'C:\temp\example.msi':
        ensure  => present,
        source => 'http://foo.example.com/example.msi',
      }
      

      The file was hosted on an IIS server, and gave this error when run:

      Error: Could not set 'file' on ensure: Error 406 on SERVER: <!DOCTYPE html PUBLI
      C "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-str
      ict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
      <title>406 - Client browser does not accept the MIME type of the requested page.
      </title>
      <style type="text/css">
      <!--
      body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;b
      ackground:#EEEEEE;}
      fieldset{padding:0 15px 10px 15px;}
      h1{font-size:2.4em;margin:0;color:#FFF;}
      h2{font-size:1.7em;margin:0;color:#CC0000;}
      h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
      #header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS
      ", Verdana, sans-serif;color:#FFF;
      background-color:#555555;}
      #content{margin:0 0 0 2%;position:relative;}
      .content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;positio
      n:relative;}
      -->
      </style>
      </head>
      <body>
      <div id="header"><h1>Server Error</h1></div>
      <div id="content">
      <div class="content-container"><fieldset>
        <h2>406 - Client browser does not accept the MIME type of the requested page.<
      /h2>
        <h3>The page you are looking for cannot be opened by your browser because it h
      as a file name extension that your browser does not accept.</h3>
      </fieldset></div>
      </div>
      </body>
      </html>
      at /etc/puppetlabs/code/environments/production/modules/profiles/manifests/msi_download.pp:7
      Error: Could not set 'file' on ensure: Error 406 on SERVER: <!DOCTYPE html PUBLI
      C "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-str
      ict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
      <title>406 - Client browser does not accept the MIME type of the requested page.
      </title>
      <style type="text/css">
      <!--
      body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;b
      ackground:#EEEEEE;}
      fieldset{padding:0 15px 10px 15px;}
      h1{font-size:2.4em;margin:0;color:#FFF;}
      h2{font-size:1.7em;margin:0;color:#CC0000;}
      h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
      #header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS
      ", Verdana, sans-serif;color:#FFF;
      background-color:#555555;}
      #content{margin:0 0 0 2%;position:relative;}
      .content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;positio
      n:relative;}
      -->
      </style>
      </head>
      <body>
      <div id="header"><h1>Server Error</h1></div>
      <div id="content">
      <div class="content-container"><fieldset>
        <h2>406 - Client browser does not accept the MIME type of the requested page.<
      /h2>
        <h3>The page you are looking for cannot be opened by your browser because it h
      as a file name extension that your browser does not accept.</h3>
      </fieldset></div>
      </div>
      </body>
      </html>
      at /etc/puppetlabs/code/environments/production/modules/profiles/manifests/msi_download.pp:7
      Wrapped exception:
      Error 406 on SERVER: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "h
      ttp://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
      <title>406 - Client browser does not accept the MIME type of the requested page.
      </title>
      <style type="text/css">
      <!--
      body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;b
      ackground:#EEEEEE;}
      fieldset{padding:0 15px 10px 15px;}
      h1{font-size:2.4em;margin:0;color:#FFF;}
      h2{font-size:1.7em;margin:0;color:#CC0000;}
      h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
      #header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS
      ", Verdana, sans-serif;color:#FFF;
      background-color:#555555;}
      #content{margin:0 0 0 2%;position:relative;}
      .content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;positio
      n:relative;}
      -->
      </style>
      </head>
      <body>
      <div id="header"><h1>Server Error</h1></div>
      <div id="content">
      <div class="content-container"><fieldset>
        <h2>406 - Client browser does not accept the MIME type of the requested page.<
      /h2>
        <h3>The page you are looking for cannot be opened by your browser because it h
      as a file name extension that your browser does not accept.</h3>
      </fieldset></div>
      </div>
      </body>
      </html>
      

      Same code ran fine when running with puppet apply

      https://support.microsoft.com/en-us/help/942050/error-message-when-you-visit-a-web-site-that-is-hosted-on-a-server-that-is-running-internet-information-services-7.0-http-error-406---not-acceptable

      Workaround was to use the remote_file module in the mean time

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              peter.souter Peter Souter
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Zendesk Support