<div dir="ltr"><div>I think, you are hitting this error:</div><div><a href="https://github.com/pulp/pulp-cli/issues/221">https://github.com/pulp/pulp-cli/issues/221</a></div><div><br></div><div>The problem is that Pulp adds a redirect from http to https, but requests turns all POST requests into GET requests upon redirect. So the server answers like you wanted to list the migration plans (http 200) instead of creating a new one (http 202).</div><div>To fix your specific problem, please point the base-address to "https://" instead of "http://" in your CLI config file.</div><div>We captured the problem earlier here:<br></div><div><a href="https://github.com/pulp/pulp-cli#known-issues">https://github.com/pulp/pulp-cli#known-issues</a></div><div><br></div><div>And we will try to capture that case in the abovementioned issue and create a better error message.</div><div><br></div><div>Thank you so much for not giving up. Your feedback is really helpful to us.</div><div><br></div><div>  Matthias Dellweg<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, May 5, 2021 at 8:20 AM Ben Stanley <<a href="mailto:ben.stanley@gmail.com">ben.stanley@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div>
    <p>Hello Matthias,</p>
    <p>Regarding the software versions:</p>
    <p>[root@honeybee plans]# /usr/local/lib/pulp/bin/pip list<br>
      Package                            Version<br>
      -------------------------------------------------------<br>
      pulp-2to3-migration       0.11.0<br>
      pulpcore                           3.12.0<br>
      pulp-cli                              0.7.0<br>
    </p>
    <p>Looks like I could do some upgrading. I tried to upgrade the
      pulp.pulp_installer, but that bombed (see separate email).</p>
    <p>Regarding the cached api-spec, I ran pulp status. There is no
      mention of any api being outdated or refreshing (see attached
      output 20210505_pulp_status.txt<br>
    </p>
    <p>I have also re-run the migration plan create with -vvv . The
      output is attached as 20210505_pulp_migration_create_vvv.txt . I
      hope it means more to you than it does to me.</p>
    <p>Ben Stanley.<br>
    </p>
    <div>On 4/5/21 6:58 pm, Matthias Dellweg
      wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">
        <div>Hello again.</div>
        <div>The pulp cli is using requests to talk to your server. I
          seems like pointing the environment variable <code>REQUESTS_CA_BUNDLE</code>
          to the full path of a copy of the file you may find as
          '/etc/pulp/certs/root.crt' or '/etc/pulp/certs/ca.crt' tells
          requests to use the provided root certificate.<br>
        </div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Tue, May 4, 2021 at 10:28
          AM Matthias Dellweg <<a href="mailto:mdellweg@redhat.com" target="_blank">mdellweg@redhat.com</a>> wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div dir="ltr">
            <div>Hello Stan,</div>
            <div>thank you for reporting this. First of all, you are
              right about the `--plan`. Are you willing to send a PR for
              that mistake?</div>
            <div>Let me first ask you the typical support questions:
              Which version of the migration plugin and the CLI is this?</div>
            <div>The error looks to me like the CLI get's an unexpected
              answer from the server, and that can have multiple
              reasons.</div>
            <div>1. the cached api-spec of the CLI is outdated. Please
              run `pulp <...> status` and look for "Notice: Cached
              api is outdated. Refreshing...". After that, try again.<br>
            </div>
            <div>2. the server does not reply in the way, it's api-spec
              promises</div>
            <div>3. something in the reverse proxy garbles the result</div>
            <div>Can you please try to rerun your command with `pulp
              -vvv --no-verify-ssl --username USERNAME ...` to add some
              debugging output. It will show you the requests sent to
              the server as well as the responses. I hope this can give
              some insight.<br>
            </div>
          </div>
          <br>
          <div class="gmail_quote">
            <div dir="ltr" class="gmail_attr">On Tue, May 4, 2021 at
              2:18 AM Ben Stanley <<a href="mailto:ben.stanley@gmail.com" target="_blank">ben.stanley@gmail.com</a>>
              wrote:<br>
            </div>
            <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
              <div>
                <p>Hello pulp-list,</p>
                <p>I am attempting to migrate my pulp2 to pulp3.</p>
                <p>I seem to be facing difficulties at every step.</p>
                <p>After overcoming the initial difficulties of
                  installation, I am now up to trying to migrate the
                  data. Looking at the migration documentation:</p>
                <p> </p>
                <p><a href="https://pulp-2to3-migration.readthedocs.io/en/latest/workflows.html" target="_blank">https://pulp-2to3-migration.readthedocs.io/en/latest/workflows.html</a></p>
                <p>I note that the command in the documentation is
                  incorrect:</p>
                <p> </p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">[root@honeybee
                    plans]# <b>pulp --no-verify-ssl --username </b><font face="Liberation Mono, monospace"><i><b>USERNAME</b></i></font><b>
                      --password </b><font face="Liberation Mono,
                      monospace"><i><b>PASSWORD</b></i></font><b>
                      migration plan create plan='{"plugins": [{"type":
                      "iso"}]}'</b></font></p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">Usage: pulp
                    migration plan create [OPTIONS]</font></p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">Try 'pulp
                    migration plan create --help' for help.</font></p>
                <p style="margin-bottom:0cm;line-height:100%"><br>
                </p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace"><span style="background:rgb(255,255,0) none repeat scroll 0% 0%">Error: Missing option '--plan'.</span></font></p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">[root@honeybee
                    plans]# </font> </p>
                <p>The documentation should be corrected to use
                  --plan=<stuff> instead of plan=<stuff> .<br>
                  <br>
                </p>
                <p> Even after I corrected the command to use
                  --plan=<stuff>, I got a huge error message.</p>
                <p> </p>
                <p style="margin-bottom:0cm;line-height:100%">
                  root@honeybee plans]# <b>pulp --no-verify-ssl
                    --username </b><i><b>USERNAME</b></i><b> --password
                  </b><i><b>PASSWORD</b></i><b> migration plan create
                    --plan='{"plugins": [{"type": "iso"}]}'</b></p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">Traceback (most
                    recent call last):</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/openapi.py",
                    line 219, in parse_response</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">response_spec =
                    method_spec["responses"][str(response.status_code)]</font></p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">KeyError: '200'</font></p>
                <p style="margin-bottom:0cm;line-height:100%"><br>
                </p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">During handling of
                    the above exception, another exception occurred:</font></p>
                <p style="margin-bottom:0cm;line-height:100%"><br>
                </p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">Traceback (most
                    recent call last):</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
                    "/usr/local/bin/pulp", line 8, in <module></font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">sys.exit(main())</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    829, in __call__</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    self.main(*args, **kwargs)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    782, in main</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">rv =
                    self.invoke(ctx)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    1259, in invoke</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    _process_result(sub_ctx.command.invoke(sub_ctx))</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    1259, in invoke</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    _process_result(sub_ctx.command.invoke(sub_ctx))</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    1259, in invoke</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    _process_result(sub_ctx.command.invoke(sub_ctx))</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    1066, in invoke</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    ctx.invoke(self.callback, **ctx.params)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    610, in invoke</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    callback(*args, **kwargs)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/decorators.py",
                    line 73, in new_func</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    ctx.invoke(f, obj, *args, **kwargs)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    610, in invoke</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    callback(*args, **kwargs)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/decorators.py",
                    line 73, in new_func</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    ctx.invoke(f, obj, *args, **kwargs)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py", line
                    610, in invoke</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    callback(*args, **kwargs)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/generic.py",
                    line 287, in callback</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">result =
                    entity_ctx.create(body=body)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/context.py",
                    line 364, in create</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">self.CREATE_ID,
                    parameters=_parameters, body=body,
                    non_blocking=non_blocking</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/context.py",
                    line 129, in call</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">result =
                    self.api.call(operation_id, *args, **kwargs)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/openapi.py",
                    line 284, in call</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">return
                    self.parse_response(method_spec, response)</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">File
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/openapi.py",
                    line 222, in parse_response</font></p>
                <p style="margin-bottom:0cm;line-height:100%"> <font face="Liberation Mono, monospace">response_spec =
                    method_spec["responses"][str(100 *
                    int(response.status_code / 100))]</font></p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">KeyError: '200'</font></p>
                <p style="margin-bottom:0cm;line-height:100%"><font face="Liberation Mono, monospace">[root@honeybee
                    plans]# </font> </p>
                <p><br>
                  <br>
                </p>
                <p>What do I need to fix to proceed with my migration?</p>
                <p>And I'd also like to know how I can get it to work
                  without having to specify --no-verify-ssl . Note that
                  I have a self-signed certificate. I don't mind
                  pointing the pulp command to the self-signed
                  certificate file so that it will accept it, but I
                  don't know how to do that.<br>
                </p>
                <p>Thanks,<br>
                  Ben Stanley.</p>
                <p><br>
                </p>
                <p> </p>
                <p> </p>
                <p> </p>
              </div>
              _______________________________________________<br>
              Pulp-list mailing list<br>
              <a href="mailto:Pulp-list@redhat.com" target="_blank">Pulp-list@redhat.com</a><br>
              <a href="https://listman.redhat.com/mailman/listinfo/pulp-list" rel="noreferrer" target="_blank">https://listman.redhat.com/mailman/listinfo/pulp-list</a></blockquote>
          </div>
        </blockquote>
      </div>
    </blockquote>
  </div>

</blockquote></div>