Please see responses inline.

On 6/5/21 8:15 pm, Matthias Dellweg wrote:


On Thu, May 6, 2021 at 2:32 AM Ben Stanley <ben.stan...@gmail.com <mailto:ben.stan...@gmail.com>> wrote:

    I have changed my ~/.config/pulp/settings.toml file as follows:

    Old: base_url = "http://honeybee"; <http://honeybee>
    New: base_url = "https://honeybee"; <https://honeybee>

    The old setting was created in accordance with instructions at
    https://github.com/pulp/pulp-cli/blob/develop/docs/install.md
    <https://github.com/pulp/pulp-cli/blob/develop/docs/install.md> .
    The instructions need to be updated.

    With the settings file updated, I have managed to create a
    migration plan:

    [root@honeybee plans]# pulp -vvv --no-verify-ssl --username
    USERNAME --password PASSWORD migration plan create
    --plan='{"plugins": [{"type": "iso"}]}'
    post https://honeybee/pulp/api/v3/migration-plans/
    <https://honeybee/pulp/api/v3/migration-plans/>
      Content-Type: application/json
      Content-Length: 48
    b'{"plan": "{\\"plugins\\": [{\\"type\\": \\"iso\\"}]}"}'
    Response: 201
    
{"pulp_href":"/pulp/api/v3/migration-plans/UUID/","pulp_created":"2021-05-05T23:54:28.456994Z","plan":{"plugins":[{"type":"iso"}]}}
    {
      "pulp_href": "/pulp/api/v3/migration-plans/UUID/",
      "pulp_created": "2021-05-05T23:54:28.456994Z",
      "plan": {
        "plugins": [
          {
            "type": "iso"
          }
        ]
      }
    }

    [root@honeybee plans]#

    After that I was able to reset the v3 repositories and run a
    migration.

That sounds great!

    Now, is there any way that I can simplify these commands? Can I
    run pulp commands without having to specify the username and
    password and --no-verify-ssl on every command line?

Yes there is. You can add these parameters to the config file. See https://github.com/pulp/pulp-cli/blob/develop/docs/install.md#configuration <https://github.com/pulp/pulp-cli/blob/develop/docs/install.md#configuration>
You should be able to perform a "pulp status" command without errors.
Thank you for this I can indeed to a "pulp status" and obtain sensible output now, without needing all the extra flags.

    Also, I tried to load the URL https://honeybee/pulp/isos/
    <https://honeybee/pulp/isos/> but the page timed out. Am I trying
    to load the correct URL for pulp3? I did not even get a https
    certificate error problem (I am using a self-signed certificate).

That looks to me like a Pulp2 address. I think, all Pulp3 content will be served at https://honeybee/pulp/content/ <https://honeybee/pulp/content/> . Also note, that "iso" content will be migrated into the pulp_file plugin.
I have migrated the iso content using the 3 steps outlined at https://pulp-2to3-migration.readthedocs.io/en/latest/workflows.html . However, https://honeybee/pulp/content/ loads an empty page. Is there some secret path from that point, or do I have to publish all of the migrated repositories?

    Thanks for the help!

    Ben.

    On 5/5/21 6:33 pm, Matthias Dellweg wrote:
    I think, you are hitting this error:
    https://github.com/pulp/pulp-cli/issues/221
    <https://github.com/pulp/pulp-cli/issues/221>

    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).
    To fix your specific problem, please point the base-address to
    "https://"; instead of "http://"; in your CLI config file.
    We captured the problem earlier here:
    https://github.com/pulp/pulp-cli#known-issues
    <https://github.com/pulp/pulp-cli#known-issues>

    And we will try to capture that case in the abovementioned issue
    and create a better error message.

    Thank you so much for not giving up. Your feedback is really
    helpful to us.

      Matthias Dellweg

    On Wed, May 5, 2021 at 8:20 AM Ben Stanley <ben.stan...@gmail.com
    <mailto:ben.stan...@gmail.com>> wrote:

        Hello Matthias,

        Regarding the software versions:

        [root@honeybee plans]# /usr/local/lib/pulp/bin/pip list
        Package                            Version
        -------------------------------------------------------
        pulp-2to3-migration       0.11.0
        pulpcore                           3.12.0
        pulp-cli                              0.7.0

        Looks like I could do some upgrading. I tried to upgrade the
        pulp.pulp_installer, but that bombed (see separate email).

        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

        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.

        Ben Stanley.

        On 4/5/21 6:58 pm, Matthias Dellweg wrote:
        Hello again.
        The pulp cli is using requests to talk to your server. I
        seems like pointing the environment variable
        |REQUESTS_CA_BUNDLE| 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.

        On Tue, May 4, 2021 at 10:28 AM Matthias Dellweg
        <mdell...@redhat.com <mailto:mdell...@redhat.com>> wrote:

            Hello Stan,
            thank you for reporting this. First of all, you are
            right about the `--plan`. Are you willing to send a PR
            for that mistake?
            Let me first ask you the typical support questions:
            Which version of the migration plugin and the CLI is this?
            The error looks to me like the CLI get's an unexpected
            answer from the server, and that can have multiple reasons.
            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.
            2. the server does not reply in the way, it's api-spec
            promises
            3. something in the reverse proxy garbles the result
            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.

            On Tue, May 4, 2021 at 2:18 AM Ben Stanley
            <ben.stan...@gmail.com <mailto:ben.stan...@gmail.com>>
            wrote:

                Hello pulp-list,

                I am attempting to migrate my pulp2 to pulp3.

                I seem to be facing difficulties at every step.

                After overcoming the initial difficulties of
                installation, I am now up to trying to migrate the
                data. Looking at the migration documentation:

                
https://pulp-2to3-migration.readthedocs.io/en/latest/workflows.html
                
<https://pulp-2to3-migration.readthedocs.io/en/latest/workflows.html>

                I note that the command in the documentation is
                incorrect:

                [root@honeybee plans]# *pulp --no-verify-ssl
                --username */*USERNAME*/*--password
                */*PASSWORD*/*migration plan create
                plan='{"plugins": [{"type": "iso"}]}'*

                Usage: pulp migration plan create [OPTIONS]

                Try 'pulp migration plan create --help' for help.


                Error: Missing option '--plan'.

                [root@honeybee plans]#

                The documentation should be corrected to use
                --plan=<stuff> instead of plan=<stuff> .

                Even after I corrected the command to use
                --plan=<stuff>, I got a huge error message.

                root@honeybee plans]# *pulp --no-verify-ssl
                --username */*USERNAME*/*--password
                */*PASSWORD*/*migration plan create
                --plan='{"plugins": [{"type": "iso"}]}'*

                Traceback (most recent call last):

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/openapi.py",
                line 219, in parse_response

                response_spec =
                method_spec["responses"][str(response.status_code)]

                KeyError: '200'


                During handling of the above exception, another
                exception occurred:


                Traceback (most recent call last):

                File "/usr/local/bin/pulp", line 8, in <module>

                sys.exit(main())

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 829, in __call__

                return self.main(*args, **kwargs)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 782, in main

                rv = self.invoke(ctx)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 1259, in invoke

                return _process_result(sub_ctx.command.invoke(sub_ctx))

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 1259, in invoke

                return _process_result(sub_ctx.command.invoke(sub_ctx))

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 1259, in invoke

                return _process_result(sub_ctx.command.invoke(sub_ctx))

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 1066, in invoke

                return ctx.invoke(self.callback, **ctx.params)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 610, in invoke

                return callback(*args, **kwargs)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/decorators.py",
                line 73, in new_func

                return ctx.invoke(f, obj, *args, **kwargs)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 610, in invoke

                return callback(*args, **kwargs)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/decorators.py",
                line 73, in new_func

                return ctx.invoke(f, obj, *args, **kwargs)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/click/core.py",
                line 610, in invoke

                return callback(*args, **kwargs)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/generic.py",
                line 287, in callback

                result = entity_ctx.create(body=body)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/context.py",
                line 364, in create

                self.CREATE_ID, parameters=_parameters, body=body,
                non_blocking=non_blocking

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/context.py",
                line 129, in call

                result = self.api.call(operation_id, *args, **kwargs)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/openapi.py",
                line 284, in call

                return self.parse_response(method_spec, response)

                File
                
"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulpcore/cli/common/openapi.py",
                line 222, in parse_response

                response_spec = method_spec["responses"][str(100 *
                int(response.status_code / 100))]

                KeyError: '200'

                [root@honeybee plans]#



                What do I need to fix to proceed with my migration?

                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.

                Thanks,
                Ben Stanley.


                _______________________________________________
                Pulp-list mailing list
                Pulp-list@redhat.com <mailto:Pulp-list@redhat.com>
                https://listman.redhat.com/mailman/listinfo/pulp-list
                <https://listman.redhat.com/mailman/listinfo/pulp-list>

_______________________________________________
Pulp-list mailing list
Pulp-list@redhat.com
https://listman.redhat.com/mailman/listinfo/pulp-list

Reply via email to