<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - pull-dkr forgets HTTP credentials on subsequent hits"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=90820">90820</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>pull-dkr forgets HTTP credentials on subsequent hits
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>systemd
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>x86-64 (AMD64)
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>general
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>systemd-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>gk@axiros.com
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>systemd-bugs@lists.freedesktop.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>High,
systemd version: 219, fedora 22

Summary: machinectl does first hit correctly with http creds within the URL -
but forgets them in subsequent hit(s).
And I did not see an option to supply user creds to machinectl.

-----------

Details:

Trying the (great) pull-dkr on my PRIVATE docker reqistry, with a http basic
authing proxy infront of it.

Since it has http auth on, when pulling using docker it works like:

[root@f2 axc]# docker login <a href="https://axchange.axiros.com">https://axchange.axiros.com</a>  
Username: ax__Js3MQjrGKcjwS94j  (<-- just a temporary token)
Password: 
Email: <a href="mailto:asdf@asdf.de">asdf@asdf.de</a>
WARNING: login credentials saved in /root/.dockercfg.
Login Succeeded
[root@f2 axc]# docker pull axchange.axiros.com/axcdocker/jessie:latest    
Trying to pull repository axchange.axiros.com/axcdocker/jessie ...
2863afcd1309: Download complete 
(...)

------------

Using machinectl:

[root@f2 site-packages]# machinectl pull-dkr 'axcdocker/jessie:latest'
--dkr-index-url <a href="https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com">https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com</a> 
--verify=no

(note that I've put the creds into the URL)

Enqueued transfer job 1. Press C-c to continue download in background.
Pulling 'axcdocker/jessie' with tag 'latest', saving as 'jessie'.
Downloading 380B for
<a href="https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com/v1/repositories/axcdocker/jessie/images">https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com/v1/repositories/axcdocker/jessie/images</a>.
Download of
<a href="https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com/v1/repositories/axcdocker/jessie/images">https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com/v1/repositories/axcdocker/jessie/images</a>
complete.
Index lookup succeeded, directed to registry axchange.axiros.com.
Downloading 172B for
<a href="https://axchange.axiros.com/v1/repositories/axcdocker/jessie/tags/latest">https://axchange.axiros.com/v1/repositories/axcdocker/jessie/tags/latest</a>.
HTTP request to
<a href="https://axchange.axiros.com/v1/repositories/axcdocker/jessie/tags/latest">https://axchange.axiros.com/v1/repositories/axcdocker/jessie/tags/latest</a> failed
with code 400.
Failed to retrieve tags list.
Exiting.

stracing it, grepping for the URL:
[root@f2 site-packages]# cat trace |grep axchange
writev(2, [{"Downloading 380B for <a href="https://ax_">https://ax_</a>"..., 114}, {"\n", 1}],
2Downloading 380B for
<a href="https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com/v1/repositories/axcdocker/jessie/images">https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com/v1/repositories/axcdocker/jessie/images</a>.
writev(2, [{"Download of <a href="https://ax__Js3MQjrG">https://ax__Js3MQjrG</a>"..., 114}, {"\n", 1}], 2Download
of
<a href="https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com/v1/repositories/axcdocker/jessie/images">https://ax__Js3MQjrGKcjwS94j:AXC@axchange.axiros.com/v1/repositories/axcdocker/jessie/images</a>
complete.
writev(2, [{"Index lookup succeeded, directed"..., 65}, {"\n", 1}], 2Index
lookup succeeded, directed to registry axchange.axiros.com.
writev(2, [{"Downloading 172B for <a href="https://axc">https://axc</a>"..., 94}, {"\n", 1}],
2Downloading 172B for
<a href="https://axchange.axiros.com/v1/repositories/axcdocker/jessie/tags/latest">https://axchange.axiros.com/v1/repositories/axcdocker/jessie/tags/latest</a>.
writev(2, [{"HTTP request to <a href="https://axchange">https://axchange</a>"..., 110}, {"\n", 1}], 2HTTP
request to
<a href="https://axchange.axiros.com/v1/repositories/axcdocker/jessie/tags/latest">https://axchange.axiros.com/v1/repositories/axcdocker/jessie/tags/latest</a> failed
with code 400.
[root@f2 site-packages]# 


-> the hit for the tags did not have the creds, so the registry server says no
no.

-----------


Can help myself with proxies for now but would be cool if machinectl could
handle that, best with username password options at least for basic auth.


Thanks,
Gunther</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>