Pulp: Issues
https://pulp.plan.io/
https://pulp.plan.io/favicon.ico
2016-02-01T13:58:35Z
Pulp
Planio
OSTree Support - Issue #1609 (CLOSED - WORKSFORME): RPM and OSTree content not available over htt...
https://pulp.plan.io/issues/1609
2016-02-01T13:58:35Z
placko
placko@redhat.com
<p>Steps to reproduce:</p>
<pre><code>* create rpm or ostree repository
* publish
* files should be available on https://server.com/pulp/repos or https://server.com/pulp/ostree respectively
</code></pre>
<p>On pulp 2.8 only, works fine for 2.7.</p>
Puppet Support - Issue #1440 (CLOSED - CURRENTRELEASE): Puppet repository doesn't sync second and...
https://pulp.plan.io/issues/1440
2015-12-18T15:35:08Z
placko
placko@redhat.com
<p>Steps to reproduce bug:</p>
<ol>
<li>
<p>Create puppet repository <code>repo1</code> with feed containing pulp manifest (auto_publish=True)</p>
</li>
<li>
<p>Sync <code>repo1</code></p>
</li>
<li>
<p>Create puppet repository <code>repo2</code> with feed containing pulp manifest (auto_publish=True)</p>
</li>
<li>
<p>Sync <code>repo2</code><br>
<code>repo1</code> now contains 2 units as expected, while <code>repo2</code> is empty. This happens only on development version of pulp, not in 2.7 or 2.6.</p>
<pre><code>$ pulp-admin puppet repo create --repo-id=repo1 --feed=https://repos.fedorapeople.org/pulp/pulp/demo_repos/puppet_manifest/modules/
Successfully created repository [repo1]
[root@ec2-54-216-139-81 ~]# pulp-admin puppet repo sync run --repo-id repo1
+----------------------------------------------------------------------+
Synchronizing Repository [repo1]
+----------------------------------------------------------------------+
This command may be exited via ctrl+c without affecting the request.
Downloading metadata...
[==================================================] 100%
Metadata Query: 1/1 items
... completed
Downloading new modules...
[==================================================] 100%
Module: 2/2 items
... completed
Task Succeeded
Publishing modules...
[==================================================] 100%
Module: 2/2 items
... completed
Generating repository metadata...
[-]
... completed
Publishing repository over HTTP...
... completed
Publishing repository over HTTPS...
... skipped
Task Succeeded
$ pulp-admin puppet repo list
+----------------------------------------------------------------------+
Puppet Repositories
+----------------------------------------------------------------------+
Id: repo1
Display Name: None
Description: None
Content Unit Counts:
Puppet Module: 2
$ pulp-admin puppet repo create --repo-id=repo2 --feed=https://repos.fedorapeople.org/pulp/p
ulp/demo_repos/puppet_manifest/modules/
Successfully created repository [repo2]
$ pulp-admin puppet repo sync run --repo-id repo2
+----------------------------------------------------------------------+
Synchronizing Repository [repo2]
+----------------------------------------------------------------------+
This command may be exited via ctrl+c without affecting the request.
Downloading metadata...
[==================================================] 100%
Metadata Query: 1/1 items
... completed
Downloading new modules...
[==================================================] 100%
Module: 0/0 items
... completed
Task Succeeded
Publishing modules...
[==================================================] 100%
Module: 0/0 items
... completed
Generating repository metadata...
[-]
... completed
Publishing repository over HTTP...
... completed
Publishing repository over HTTPS...
... skipped
Task Succeeded
$ pulp-admin puppet repo list
+----------------------------------------------------------------------+
Puppet Repositories
+----------------------------------------------------------------------+
Id: repo1
Display Name: None
Description: None
Content Unit Counts:
Puppet Module: 2
Id: repo2
Display Name: None
Description: None
Content Unit Counts:
$
</code></pre>
</li>
</ol>
Pulp - Issue #1439 (CLOSED - WORKSFORME): Adding puppet_file_distributor to puppet repository fails
https://pulp.plan.io/issues/1439
2015-12-18T12:02:36Z
placko
placko@redhat.com
<p>Following command fails when publish directory <code>/var/lib/pulp/published/puppet/files</code> does not exists on server (by default it doesnt, fails probably on [1]). After creating this directory, command finish as expected. If this is intended behaviour (which I don't think it is), then documentation [2] should be modified accordingly.</p>
<pre><code>$ http --verify no --auth admin:admin POST https://server/pulp/api/v2/repositories/repo_id/distributors/ distributor_type_id=puppet_file_distributor distributor_id=asdf
HTTP/1.1 400 Bad Request
Connection: close
Content-Encoding: utf-8
Content-Length: 604
Content-Type: application/json
Date: Fri, 18 Dec 2015 11:34:58 GMT
Server: Apache/2.4.6 (Red Hat Enterprise Linux) OpenSSL/1.0.1e-fips mod_wsgi/3.4 Python/2.7.5
{
"_href": "/pulp/api/v2/repositories/0686f99e-5455-4bc7-878b-f37dc2f2d8bd/distributors/",
"args": [
"The directory specified for the puppet file distributor is invalid: /var/lib/pulp/published/puppet/files"
],
"error": {
"code": "PLP0000",
"data": {},
"description": "The directory specified for the puppet file distributor is invalid: /var/lib/pulp/published/puppet/files",
"sub_errors": []
},
"error_message": "The directory specified for the puppet file distributor is invalid: /var/lib/pulp/published/puppet/files",
"exception": null,
"http_request_method": "POST",
"http_status": 400,
"traceback": null
}
</code></pre>
<p>[1] <a href="https://github.com/pulp/pulp_puppet/blob/b780d413ac38b70e8538f2bea41be436b20d548e/pulp_puppet_plugins/pulp_puppet/plugins/distributors/filedistributor.py#L57" class="external">https://github.com/pulp/pulp_puppet/blob/b780d413ac38b70e8538f2bea41be436b20d548e/pulp_puppet_plugins/pulp_puppet/plugins/distributors/filedistributor.py#L57</a><br>
[2] <a href="http://pulp-puppet.readthedocs.org/en/latest/tech-reference/plugin_conf.html#file-distributor" class="external">http://pulp-puppet.readthedocs.org/en/latest/tech-reference/plugin_conf.html#file-distributor</a></p>
Pulp - Issue #1413 (CLOSED - WONTFIX): Creating repository with invalid request body returns inco...
https://pulp.plan.io/issues/1413
2015-12-14T21:24:01Z
placko
placko@redhat.com
<p>When creating new repository with invalid or missing data keys provided, set of data keys returned in body differs from those described in documentation [1]. Output from test [2] in pulp-smash framework [3] testing this functionality follows. Tested on pulp 2.6 release and 2.7 release.</p>
<pre><code>$ python -m unittest2 pulp_smash.tests.platform.api_v2.test_repository.CreateFailureTestCase
s.s
======================================================================
FAIL: test_exception_keys_json (pulp_smash.tests.platform.api_v2.test_repository.CreateFailureTestCase) (body={u'id': None})
Assert the JSON body returned contains the correct keys.
----------------------------------------------------------------------
Traceback (most recent call last):
File "pulp_smash/tests/platform/api_v2/test_repository.py", line 147, in test_exception_keys_json
ERROR_KEYS,
AssertionError: Items in the first set but not the second:
u'http_request_method'
u'property_names'
======================================================================
FAIL: test_exception_keys_json (pulp_smash.tests.platform.api_v2.test_repository.CreateFailureTestCase) (body=[u'Incorrect data type'])
Assert the JSON body returned contains the correct keys.
----------------------------------------------------------------------
Traceback (most recent call last):
File "pulp_smash/tests/platform/api_v2/test_repository.py", line 147, in test_exception_keys_json
ERROR_KEYS,
AssertionError: Items in the first set but not the second:
u'http_request_method'
Items in the second set but not the first:
u'error'
======================================================================
FAIL: test_exception_keys_json (pulp_smash.tests.platform.api_v2.test_repository.CreateFailureTestCase) (body={u'missing_required_keys': u'id'})
Assert the JSON body returned contains the correct keys.
----------------------------------------------------------------------
Traceback (most recent call last):
File "pulp_smash/tests/platform/api_v2/test_repository.py", line 147, in test_exception_keys_json
ERROR_KEYS,
AssertionError: Items in the first set but not the second:
u'http_request_method'
u'property_names'
======================================================================
FAIL: test_exception_keys_json (pulp_smash.tests.platform.api_v2.test_repository.CreateFailureTestCase) (body={u'id': u'2d46509d-da63-4806-a192-9c1e360084fe'})
Assert the JSON body returned contains the correct keys.
----------------------------------------------------------------------
Traceback (most recent call last):
File "pulp_smash/tests/platform/api_v2/test_repository.py", line 147, in test_exception_keys_json
ERROR_KEYS,
AssertionError: Items in the first set but not the second:
u'http_request_method'
u'resource_id'
----------------------------------------------------------------------
Ran 4 tests in 6.703s
FAILED (failures=4, skipped=2)
</code></pre>
<p>[1] <a href="https://pulp.readthedocs.org/en/latest/dev-guide/conventions/exceptions.html" class="external">https://pulp.readthedocs.org/en/latest/dev-guide/conventions/exceptions.html</a><br>
[2] <a href="https://github.com/PulpQE/pulp-smash/blob/master/pulp_smash/tests/platform/api_v2/test_repository.py#L90" class="external">https://github.com/PulpQE/pulp-smash/blob/master/pulp_smash/tests/platform/api_v2/test_repository.py#L90</a><br>
[3] <a href="https://github.com/PulpQE/pulp-smash" class="external">https://github.com/PulpQE/pulp-smash</a></p>
Pulp - Issue #1412 (CLOSED - WONTFIX): Login with wrong credentials returns incorrect error data ...
https://pulp.plan.io/issues/1412
2015-12-14T21:15:01Z
placko
placko@redhat.com
<p>After logging into pulp-admin with incorrect username and password, set of data keys returned in body differs from those described in documentation [1]. Output from test [2] in pulp-smash framework [3] testing this functionality follows. Tested on pulp 2.6 release and 2.7 release.</p>
<pre><code>$ python -m unittest2 pulp_smash.tests.platform.api_v2.test_login.LoginFailureTestCase
F.
======================================================================
FAIL: test_body (pulp_smash.tests.platform.api_v2.test_login.LoginFailureTestCase)
Assert that the response is valid JSON and has correct keys.
----------------------------------------------------------------------
Traceback (most recent call last):
File "pulp_smash/tests/platform/api_v2/test_login.py", line 56, in test_body
self.assertEqual(frozenset(self.response.json().keys()), ERROR_KEYS)
AssertionError: Items in the first set but not the second:
u'http_request_method'
u'auth_error_code'
----------------------------------------------------------------------
Ran 2 tests in 0.815s
FAILED (failures=1)
</code></pre>
<p>[1] <a href="https://pulp.readthedocs.org/en/latest/dev-guide/conventions/exceptions.html" class="external">https://pulp.readthedocs.org/en/latest/dev-guide/conventions/exceptions.html</a><br>
[2] <a href="https://github.com/PulpQE/pulp-smash/blob/master/pulp_smash/tests/platform/api_v2/test_login.py#L37" class="external">https://github.com/PulpQE/pulp-smash/blob/master/pulp_smash/tests/platform/api_v2/test_login.py#L37</a><br>
[3] <a href="https://github.com/PulpQE/pulp-smash/" class="external">https://github.com/PulpQE/pulp-smash/</a></p>
Puppet Support - Issue #1385 (CLOSED - WONTFIX): Content Unit Counts Documented Incorrectly
https://pulp.plan.io/issues/1385
2015-11-24T14:24:05Z
placko
placko@redhat.com
<p>Following Puppet Quick Start Guide [1], <code>Content Unit Counts</code> is not updated when puppet modules are added to repository. Same issue occures with RPM module. One thus can not query repository by number of units it contains.</p>
<pre><code>
# pulp-admin puppet repo create --repo-id=repo1 --description="Mirror of Puppet Forge" --display-name="Repo 1" --feed=http://forge.puppetlabs.com
Successfully created repository [repo1]
# pulp-admin puppet repo update --repo-id=repo1 --queries=libvirt
Repository [repo1] successfully updated
# pulp-admin puppet repo sync run --repo-id=repo1
+----------------------------------------------------------------------+
Synchronizing Repository [repo1]
+----------------------------------------------------------------------+
This command may be exited via ctrl+c without affecting the request.
Downloading metadata...
[==================================================] 100%
Metadata Query: 1/1 items
... completed
Downloading new modules...
[==================================================] 100%
Module: 8/8 items
... completed
Task Succeeded
Publishing modules...
[==================================================] 100%
Module: 8/8 items
... completed
Generating repository metadata...
[-]
... completed
Publishing repository over HTTP...
... completed
Publishing repository over HTTPS...
... skipped
Task Succeeded
# pulp-admin puppet repo search
+----------------------------------------------------------------------+
Repositories
+----------------------------------------------------------------------+
Id: repo1
Display Name: Repo 1
Description: Mirror of Puppet Forge
Content Unit Counts:
Puppet Module: 8
Last Unit Added: 2015-11-24T14:12:36Z
Last Unit Removed: None
Notes:
# pulp-admin puppet repo search --gt='content_unit_count=0'
+----------------------------------------------------------------------+
Repositories
+----------------------------------------------------------------------+
</code></pre>
<p>[1] <a href="http://pulp-puppet.readthedocs.org/en/latest/user-guide/quick-start.html" class="external">http://pulp-puppet.readthedocs.org/en/latest/user-guide/quick-start.html</a></p>
Pulp - Issue #1362 (CLOSED - CURRENTRELEASE): Mandatory data keys of distributor_config in Associ...
https://pulp.plan.io/issues/1362
2015-11-06T13:58:46Z
placko
placko@redhat.com
<p><code>distributor_config</code> requires different config keys, namely <code>http</code>, <code>https</code> and <code>relative_url</code> than provided in example of request [1]:</p>
<pre><code>{
"distributor_id": "dist_1",
"distributor_type_id": "harness_distributor",
"distributor_config": {
"publish_dir": "/tmp/harness-publish",
"write_files": "true"
},
"auto_publish": false
}
</code></pre>
<p>[1] <a href="http://pulp.readthedocs.org/en/latest/dev-guide/integration/rest-api/repo/cud.html#associate-a-distributor-with-a-repository" class="external">http://pulp.readthedocs.org/en/latest/dev-guide/integration/rest-api/repo/cud.html#associate-a-distributor-with-a-repository</a></p>
Pulp - Issue #1342 (CLOSED - NOTABUG): Automation tests failures on rhel 7.1
https://pulp.plan.io/issues/1342
2015-10-29T17:46:56Z
placko
placko@redhat.com
<p>Many tests fails in automation on rhel 7.1 with output shown below, but everything passes on rhel 7.2 beta. Reproduced manually on binding importer to a repository:</p>
<pre><code>$ curl -X POST -d '{"importer_type_id": "yum_importer", "importer_config": {"feed": "https://repos.fedorapeople.org/repos/pulp/pulp/demo_repos/zoo/", "ssl_validation": false}, "id": "yum_importer"}' https://servername/pulp/api/v2/repositories/
zoo/importers/ -u admin:admin -k -vvvv
* About to connect() to servername.com port 443 (#0)
* Trying 10.9.4.54...
* Connected to servername.com (10.9.4.54) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* skipping SSL peer certificate verification
* SSL connection using TLS_DHE_RSA_WITH_AES_128_CBC_SHA
* Server certificate:
* subject: CN=servername,O=Ltd,ST=NC,C=US
* start date: Oct 29 15:50:58 2015 GMT
* expire date: Oct 28 15:50:58 2016 GMT
* common name: servername.com
* issuer: CN=servername.com,O=Ltd,L=Raleigh,ST=NC,C=US
* Server auth using Basic with user 'admin'
> POST /pulp/api/v2/repositories/zoo/importers/ HTTP/1.1
> Authorization: Basic YWRtaW46YWRtaW4=
> User-Agent: curl/7.29.0
> Host: servername.com
> Accept: */*
> Content-Length: 178
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 178 out of 178 bytes
* skipping SSL peer certificate verification
* NSS: client certificate not found (nickname not specified)
* skipping SSL peer certificate verification
< HTTP/1.1 500 INTERNAL SERVER ERROR
< Date: Thu, 29 Oct 2015 17:32:02 GMT
< Server: Apache/2.4.6 (Red Hat Enterprise Linux) OpenSSL/1.0.1e-fips mod_wsgi/3.4 Python/2.7.5
< Content-Length: 4122
< Connection: close
< Content-Type: application/json; charset=utf-8
<
{"http_request_method": "POST", "exception": ["Exception: Exception from Agent: {u'error_code': 7, u'error_text': 'Queue resource_manager: create() failed:
jexception 0x010c EmptyFilePool::createSymLink() threw JERR__SYMLINK: Symbolic link operation failed (file=\"/var/lib/qpidd/.qpidd/qls/p001/efp/2048k/in_use
/4b957fed-d3f3-4bf1-9766-562ec80fc1eb.jrnl\" symlink=\"/var/lib/qpidd/.qpidd/qls/jrnl2/resource_manager/4b957fed-d3f3-4bf1-9766-562ec80fc1eb.jrnl\" errno=13
(Permission denied)) (/builddir/build/BUILD/qpid-cpp-0.34/src/qpid/linearstore/MessageStoreImpl.cpp:425)'}\n"], "error_message": "Exception from Agent:
{u'error_code': 7, u'error_text': 'Queue resource_manager: create() failed: jexception 0x010c EmptyFilePool::createSymLink() threw JERR__SYMLINK: Symbolic link
operation failed (file=\"/var/lib/qpidd/.qpidd/qls/p001/efp/2048k/in_use/4b957fed-d3f3-4bf1-9766-562ec80fc1eb.jrnl\" symlink=\"/var/lib/qpidd/.qpidd/qls/jrnl2
/resource_manager/4b957fed-d3f3-4bf1-9766-562ec80fc1eb.jrnl\" errno=13 (Permission denied)) (/builddir/build/BUILD/qpid-cpp-0.34/src/qpid/linearstore
/MessageStoreImpl.cpp:425)'}", "_href": "/pulp/api/v2/repositories/zoo/importers/", "http_status": 500, "traceback": [" File \"/usr/lib/python2.7/site-packages
/django/core/handlers/base.py\", line 112, in get_response\n response = wrapped_callback(request, *callback_args, **callback_kwargs)\n", " File \"/usr
/lib/python2.7/site-packages/django/views/generic/base.py\", line 69, in view\n return self.dispatch(request, *args, **kwargs)\n", " File \"/usr
/lib/python2.7/site-packages/django/views/generic/base.py\", line 87, in dispatch\n return handler(request, *args, **kwargs)\n", " File \"/usr/lib/python2.7
/site-packages/pulp/server/webservices/views/decorators.py\", line 237, in _auth_decorator\n return _verify_auth(self, operation, super_user_only, method,
*args, **kwargs)\n", " File \"/usr/lib/python2.7/site-packages/pulp/server/webservices/views/decorators.py\", line 191, in _verify_auth\n value =
method(self, *args, **kwargs)\n", " File \"/usr/lib/python2.7/site-packages/pulp/server/webservices/views/util.py\", line 111, in wrapper\n return
func(*args, **kwargs)\n", " File \"/usr/lib/python2.7/site-packages/pulp/server/webservices/views/repositories.py\", line 448, in post\n
{'repo_plugin_config': config}, tags=task_tags)\n", " File \"/usr/lib/python2.7/site-packages/pulp/server/async/tasks.py\", line 323, in
apply_async_with_reservation\n queue=RESOURCE_MANAGER_QUEUE)\n", " File \"/usr/lib/python2.7/site-packages/celery/app/task.py\", line 555, in
apply_async\n **dict(self._get_exec_options(), **options)\n", " File \"/usr/lib/python2.7/site-packages/celery/app/base.py\", line 351, in send_task\n
reply_to=reply_to or self.oid, **options\n", " File \"/usr/lib/python2.7/site-packages/celery/app/amqp.py\", line 305, in publish_task\n **kwargs\n", "
File \"/usr/lib/python2.7/site-packages/kombu/messaging.py\", line 168, in publish\n routing_key, mandatory, immediate, exchange, declare)\n", " File \"/usr
/lib/python2.7/site-packages/kombu/connection.py\", line 436, in _ensured\n return fun(*args, **kwargs)\n", " File \"/usr/lib/python2.7/site-packages/kombu
/messaging.py\", line 180, in _publish\n [maybe_declare(entity) for entity in declare]\n", " File \"/usr/lib/python2.7/site-packages/kombu/messaging.py\",
line 111, in maybe_declare\n return maybe_declare(entity, self.channel, retry, **retry_policy)\n", " File \"/usr/lib/python2.7/site-packages/kombu
/common.py\", line 113, in maybe_declare\n return _maybe_declare(entity, declared, ident, channel)\n", " File \"/usr/lib/python2.7/site-packages/kombu
/common.py\", line 120, in _maybe_declare\n entity.declare()\n", " File \"/usr/lib/python2.7/site-packages/kombu/entity.py\", line 505, in declare\n
self.queue_declare(nowait, passive=False)\n", " File \"/usr/lib/python2.7/site-packages/kombu/entity.py\", line 531, in queue_declare\n nowait=nowait)\n",
" File \"/usr/lib/python2.7/site-packages/kombu/transport/qpid.py\", line 696, in queue_d* Closing connection 0
</code></pre>
Pulp - Issue #1341 (CLOSED - CURRENTRELEASE): qpid-cpp-server-store not available in rhel 7 anymore
https://pulp.plan.io/issues/1341
2015-10-29T16:07:04Z
placko
placko@redhat.com
<p>According to installation guide [1], users should install <code>qpid-cpp-server-store</code> and if possible install <code>qpid-cpp-server-linearstore</code> instead. <code>qpid-cpp-server-store</code> is however not present in repositories anymore.</p>
<p><a href="http://pulp.readthedocs.org/en/latest/user-guide/installation.html" class="external">http://pulp.readthedocs.org/en/latest/user-guide/installation.html</a></p>
Pulp - Issue #1340 (CLOSED - CURRENTRELEASE): Qpid-cpp-server dependency broken
https://pulp.plan.io/issues/1340
2015-10-29T15:55:49Z
placko
placko@redhat.com
<p>Installation of qpid-cpp-server and qpid-cpp-client fails with</p>
<p><code>Error: Package: qpid-cpp-server-0.26-9.el6.x86_64 (pulp-2.7-testing) Requires: libqpid-proton.so.2()(64bit) Error: Package: qpid-cpp-client-0.26-9.el6.x86_64 (pulp-2.7-testing) Requires: libqpid-proton.so.2()(64bit)</code></p>
<p>Reason is, that <code>qpid-cpp-server</code> and <code>qpid-cpp-client</code> in repositories are both in version <code>0.26-9</code> and requires <code>libqpid-proton.so.2</code> from package <code>qpid-proton-c-0.9-x</code>, while in repositories <code>qpid-proton-c-0.10-2</code> with <code>libqpid-proton.so.3</code> is available.</p>
Pulp - Issue #1313 (CLOSED - DUPLICATE): Wrong error message after granting/revoking permission o...
https://pulp.plan.io/issues/1313
2015-10-13T14:02:29Z
placko
placko@redhat.com
<p>After granting permission to nonexistent user wrong error message and code are returned from server:</p>
<pre><code class="text syntaxhl" data-language="text">$ curl -X POST -d '{"operations": ["EXECUTE"], "login": "UnexistantLogin", "resource": "/"}'
headers={'content-type': 'application/json'} https://server/pulp/api/v2/permissions/actions/grant_to_user/
--cacert myca.crt -u admin:admin
{"http_request_method": "POST", "exception": null, "error_message": "Invalid properties: ['login']",
"property_names": ["login"], "_href": "/pulp/api/v2/permissions/actions/grant_to_user/", "http_status": 400,
"error": {"code": "PLP0015", "data": {"property_names": ["login"], "properties": "['login']"},
"description": "Invalid properties: ['login']", "sub_errors": []}, "traceback": null}
</code></pre>
<p>while expected response is</p>
<pre><code class="text syntaxhl" data-language="text">{"http_request_method": "POST", "exception": null, "error_message": "Missing resource(s): user=UnexistantLogin",
"_href": "/pulp/api/v2/permissions/actions/grant_to_user/", "http_status": 404, "error": {"code": "PLP0009",
"data": {"resources": {"user": "UnexistantLogin"}}, "description": "Missing resource(s): user=UnexistantLogin", "sub_errors": []},
"traceback": null, "resources": {"user": "UnexistantLogin"}}
</code></pre>
<p>Similarly for revoking nonexistent user permission:</p>
<pre><code class="text syntaxhl" data-language="text">$ curl -X POST -d '{"operations": ["EXECUTE"], "login": "UnexistantLogin", "resource": "/"}'
headers={'content-type': 'application/json'} https://server/pulp/api/v2/permissions/actions/revoke_from_user/
--cacert myca.crt -u admin:admin
{"http_request_method": "POST", "exception": null, "error_message": "Invalid properties: ['login']",
"property_names": ["login"], "_href": "/pulp/api/v2/permissions/actions/revoke_from_user/", "http_status": 400,
"error": {"code": "PLP0015", "data": {"property_names": ["login"], "properties": "['login']"},
"description": "Invalid properties: ['login']", "sub_errors": []}, "traceback": null}
</code></pre>
<p>granting permissions to nonexistent role:</p>
<pre><code class="text syntaxhl" data-language="text">$ curl -X POST -d '{"operations": ["EXECUTE"], "role_id": "UnexistantRole", "resource": "/"}'
headers={'content-type': 'application/json'} https://server/pulp/api/v2/permissions/actions/grant_to_role/
--cacert myca.crt -u admin:admin
{"http_request_method": "POST", "exception": null, "error_message": "Invalid properties: ['role_id']",
"property_names": ["role_id"], "_href": "/pulp/api/v2/permissions/actions/grant_to_role/", "http_status": 400,
"error": {"code": "PLP0015", "data": {"property_names": ["role_id"], "properties": "['role_id']"},
"description": "Invalid properties: ['role_id']", "sub_errors": []}, "traceback": null}
</code></pre>
<p>and revoking permissions from nonexistent role:</p>
<pre><code class="text syntaxhl" data-language="text">$ curl -X POST -d '{"operations": ["EXECUTE"] "role_id": "UnexistantRole", "resource": "/"}'
headers={'content-type': 'application/json'} https://server/pulp/api/v2/permissions/actions/revoke_from_role/
--cacert myca.crt -u admin:admin
{"http_request_method": "POST", "exception": null, "error_message": "Invalid properties: ['role_id']",
"property_names": ["role_id"], "_href": "/pulp/api/v2/permissions/actions/revoke_from_role/", "http_status": 400,
"error": {"code": "PLP0015", "data": {"property_names": ["role_id"], "properties": "['role_id']"},
"description": "Invalid properties: ['role_id']", "sub_errors": []}, "traceback": null}
</code></pre>