On Thu, May 16, 2019 at 10:47 AM Juan Cabrera <[email protected]> wrote:
> Hi again, > > I made a script for the work flow: create repo - create remote - > synchronize - create publisher - create publication - create distribution, > that works well. > > Now I try using a repo with local rpm. I can not create a publication I > get duplicate key value violates unique constraint > > I use this versions: > > pulp_source_dir: "git+https://github.com/pulp/[email protected]" > <git+https://github.com/pulp/[email protected]> > pulp_plugin_source_dir: > "git+https://github.com/pulp/[email protected]" > <git+https://github.com/pulp/[email protected]> > pulp_install_plugins: > pulp-rpm: > app_label: "rpm" > source_dir: "git+https://github.com/pulp/[email protected]" > <git+https://github.com/pulp/[email protected]> > > This is what I do: > > sudo yum install yum-utils > PORT=:24817 > # get somme rpm > yumdownloader --resolve --destdir=mypackages/ httpd > # create a repo > export REPO_HREF=$(http POST $PORT/pulp/api/v3/repositories/ > name=local_repo | jq -r '._href') > > # add rpm packages > for p in `ls mypackages`; do > export ARTIFACT_REF=$(http --form POST $PORT/pulp/api/v3/artifacts/ > file@./mypackages/$p | jq -r '._href') > export CONTENT_HREF=$(http POST $PORT/pulp/api/v3/content/rpm/packages/ > _artifact="$ARTIFACT_REF" filename="$p" | jq -r '._href') > You need to specify 'relative_path' when creating an rpm package content unit. This should be the file name. Our REST API docs[0] don't specify that this is requiered, but it is. I'll file an issue. [0] https://pulp-rpm.readthedocs.io/en/latest/restapi.html#operation/content_rpm_packages_create > http POST $PORT${REPO_HREF}versions/ > add_content_units:="[\"$CONTENT_HREF\"]" > done > > # Create publisher > export PUBLISHER_HREF=$(http POST $PORT/pulp/api/v3/publishers/rpm/rpm/ > name=ptci | jq -r '._href') > # Create publication > export TASK=$(http POST $PORT${PUBLISHER_HREF}publish/ > repository=$REPO_HREF | jq -r '.task') > > http $PORT$TASK > > HTTP/1.1 200 OK > Allow: GET, DELETE, HEAD, OPTIONS > Connection: close > Content-Length: 3416 > Content-Type: application/json > Date: Thu, 16 May 2019 14:30:27 GMT > Server: gunicorn/19.9.0 > Vary: Accept, Cookie > X-Frame-Options: SAMEORIGIN > > { > "_created": "2019-05-16T14:15:55.721616Z", > "_href": "/pulp/api/v3/tasks/799ba82c-b289-4054-aca3-2c35eab208ff/", > "created_resources": [], > "error": { > "code": null, > "description": "*duplicate key value violates unique constraint* > \"core_publishedartifact_publication_id_relative__97f785f4_uniq\"\nDETAIL: > Key (publication_id, relative_path)=(f76de19c-22a6-485f-93bd-3e3578de9405, > ) already exists.\n", > "traceback": " File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/rq/worker.py\", line > 799, in perform_job\n rv = job.perform()\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/rq/job.py\", line 600, > in perform\n self._result = self._execute()\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/rq/job.py\", line 606, > in _execute\n return self.func(*self.args, **self.kwargs)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulp_rpm/app/tasks/publishing.py\", > line 104, in publish\n populate(publication)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/pulp_rpm/app/tasks/publishing.py\", > line 217, in populate\n published_artifact.save()\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/models/base.py\", > line 741, in save\n force_update=force_update, > update_fields=update_fields)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/models/base.py\", > line 779, in save_base\n force_update, using, update_fields,\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/models/base.py\", > line 870, in _save_table\n result = self._do_insert(cls._base_manager, > using, fields, update_pk, raw)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/models/base.py\", > line 908, in _do_insert\n using=using, raw=raw)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/models/manager.py\", > line 82, in manager_method\n return getattr(self.get_queryset(), > name)(*args, **kwargs)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/models/query.py\", > line 1186, in _insert\n return > query.get_compiler(using=using).execute_sql(return_id)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/models/sql/compiler.py\", > line 1335, in execute_sql\n cursor.execute(sql, params)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/backends/utils.py\", > line 67, in execute\n return self._execute_with_wrappers(sql, params, > many=False, executor=self._execute)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/backends/utils.py\", > line 76, in _execute_with_wrappers\n return executor(sql, params, many, > context)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/backends/utils.py\", > line 84, in _execute\n return self.cursor.execute(sql, params)\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/utils.py\", > line 89, in __exit__\n raise dj_exc_value.with_traceback(traceback) from > exc_value\n File > \"/usr/local/lib/pulp/lib64/python3.6/site-packages/django/db/backends/utils.py\", > line 84, in _execute\n return self.cursor.execute(sql, params)\n" > }, > "finished_at": "2019-05-16T14:15:55.807566Z", > "name": "pulp_rpm.app.tasks.publishing.publish", > "non_fatal_errors": [], > "parent": null, > "progress_reports": [], > "spawned_tasks": [], > "started_at": "2019-05-16T14:15:55.773242Z", > "state": "failed", > "worker": "/pulp/api/v3/workers/a9f1e265-fd17-467b-afd5-58af626dab1d/" > } > > I do not know were this duplicate key comes. I use a clean Vagran VM. And > there is no publications > > > http $PORT/pulp/api/v3/publications/ > > HTTP/1.1 200 OK > Allow: GET, HEAD, OPTIONS > Connection: close > Content-Length: 52 > Content-Type: application/json > Date: Thu, 16 May 2019 14:42:40 GMT > Server: gunicorn/19.9.0 > Vary: Accept, Cookie > X-Frame-Options: SAMEORIGIN > > { > "count": 0, > "next": null, > "previous": null, > "results": [] > } > > I did something wrong ? > > Juan > > -- > > Juan CABRERA > Correspondant informatique > Département de Mathématiques > > T. 081724919 > [email protected] > http://staff.unamur.be/jbcabrer > > Université de Namur ASBL > Rue de Bruxelles 61 - 5000 Namur > Belgique > > Let’s respect the environment together. > Only print this message if necessary! > _______________________________________________ > Pulp-list mailing list > [email protected] > https://www.redhat.com/mailman/listinfo/pulp-list
_______________________________________________ Pulp-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/pulp-list
