[PULP-1360] pulp content upload --directory --use-temp-repository fails to call signing service
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 43
- Forks
- 52
- Avg merge
- 11h 38m
- Merged PRs (30d)
- 11
Description
Summary
When bulk-uploading a directory full of packages, all the packages get signed, but if I add --use-temp-repository, the packages all bypass signing.
Steps to reproduce
Create a repository with a signing service.
Gather some unsigned RPMs to test with, or strip signatures off existing ones.
Upload a package with --use-temp-repository and --directory:
pulp rpm content -t package upload --directory missing-pkgs --repository release-x86_64-os --chunk-size=8MB --use-temp-repository
Download a package from your published repository version and note that none of the uploaded packages are signed.
Expected behavior
Each package should be signed when it is added to the repository, whether or not it passes through a temporary repository.
Stacktrace/Error log
N/A
Pulp and pulp-cli version info
$ pulp --version
Pulp3 Command Line Interface, Version 0.32.0.dev
Plugin Versions:
common: 0.32.0.dev
$ pulp status
{
"versions": [
{
"component": "core",
"version": "3.69.0",
"package": "pulpcore",
"module": "pulpcore.app",
"domain_compatible": true
},
{
"component": "ansible",
"version": "0.23.1",
"package": "pulp-ansible",
"module": "pulp_ansible.app",
"domain_compatible": false
},
{
"component": "container",
"version": "2.22.0",
"package": "pulp-container",
"module": "pulp_container.app",
"domain_compatible": false
},
{
"component": "deb",
"version": "3.4.0",
"package": "pulp_deb",
"module": "pulp_deb.app",
"domain_compatible": false
},
{
"component": "maven",
"version": "0.8.1",
"package": "pulp-maven",
"module": "pulp_maven.app",
"domain_compatible": false
},
{
"component": "ostree",
"version": "2.4.4",
"package": "pulp-ostree",
"module": "pulp_ostree.app",
"domain_compatible": true
},
{
"component": "python",
"version": "3.12.5",
"package": "pulp-python",
"module": "pulp_python.app",
"domain_compatible": true
},
{
"component": "rpm",
"version": "3.27.3.dev",
"package": "pulp-rpm",
"module": "pulp_rpm.app",
"domain_compatible": true
},
{
"component": "certguard",
"version": "3.69.0",
"package": "pulpcore",
"module": "pulp_certguard.app",
"domain_compatible": true
},
{
"component": "file",
"version": "3.69.0",
"package": "pulpcore",
"module": "pulp_file.app",
"domain_compatible": true
}
],
"online_workers": [
{
"pulp_href": "/pulp/api/v3/workers/01961626-02e6-7906-a83e-4007fc4f0f0f/",
"prn": "prn:core.worker:01961626-02e6-7906-a83e-4007fc4f0f0f",
"pulp_created": "2025-04-08T16:05:12.040975Z",
"pulp_last_updated": "2025-04-08T16:05:12.041042Z",
"name": "1@pulp-worker-757fcbb6df-6c8jw",
"last_heartbeat": "2025-05-22T04:57:44.073499Z",
"versions": {
"deb": "3.4.0",
"rpm": "3.27.3.dev",
"core": "3.69.0",
"file": "3.69.0",
"maven": "0.8.1",
"ostree": "2.4.4",
"python": "3.12.5",
"ansible": "0.23.1",
"certguard": "3.69.0",
"container": "2.22.0"
},
"current_task": null
},
{
"pulp_href": "/pulp/api/v3/workers/01961789-2643-7092-89ab-cb46f7609424/",
"prn": "prn:core.worker:01961789-2643-7092-89ab-cb46f7609424",
"pulp_created": "2025-04-08T22:33:06.373643Z",
"pulp_last_updated": "2025-04-08T22:33:06.373661Z",
"name": "1@pulp-worker-757fcbb6df-jzzqb",
"last_heartbeat": "2025-05-22T04:57:47.139500Z",
"versions": {
"deb": "3.4.0",
"rpm": "3.27.3.dev",
"core": "3.69.0",
"file": "3.69.0",
"maven": "0.8.1",
"ostree": "2.4.4",
"python": "3.12.5",
"ansible": "0.23.1",
"certguard": "3.69.0",
"container": "2.22.0"
},
"current_task": null
}
],
"online_api_apps": [
{
"name": "9@pulp-api-5c7dbb4968-kr7wm",
"last_heartbeat": "2025-05-22T04:57:51.651460Z",
"versions": {
"deb": "3.4.0",
"rpm": "3.27.3.dev",
"core": "3.69.0",
"file": "3.69.0",
"maven": "0.8.1",
"ostree": "2.4.4",
"python": "3.12.5",
"ansible": "0.23.1",
"certguard": "3.69.0",
"container": "2.22.0"
}
},
{
"name": "10@pulp-api-5c7dbb4968-kr7wm",
"last_heartbeat": "2025-05-22T04:57:51.642939Z",
"versions": {
"deb": "3.4.0",
"rpm": "3.27.3.dev",
"core": "3.69.0",
"file": "3.69.0",
"maven": "0.8.1",
"ostree": "2.4.4",
"python": "3.12.5",
"ansible": "0.23.1",
"certguard": "3.69.0",
"container": "2.22.0"
}
}
],
"online_content_apps": [
{
"name": "10@pulp-content-559495989b-gprv6",
"last_heartbeat": "2025-05-22T04:57:48.425790Z",
"versions": {
"deb": "3.4.0",
"rpm": "3.27.2",
"core": "3.69.0",
"file": "3.69.0",
"maven": "0.8.1",
"ostree": "2.4.4",
"python": "3.12.5",
"ansible": "0.23.1",
"certguard": "3.69.0",
"container": "2.22.0"
}
},
{
"name": "11@pulp-content-559495989b-gprv6",
"last_heartbeat": "2025-05-22T04:57:45.453453Z",
"versions": {
"deb": "3.4.0",
"rpm": "3.27.2",
"core": "3.69.0",
"file": "3.69.0",
"maven": "0.8.1",
"ostree": "2.4.4",
"python": "3.12.5",
"ansible": "0.23.1",
"certguard": "3.69.0",
"container": "2.22.0"
}
}
],
"database_connection": {
"connected": true
},
"redis_connection": {
"connected": false
},
"storage": {
"total": null,
"used": 141642827633,
"free": null
},
"content_settings": {
"content_origin": "https://pulp.example.com",
"content_path_prefix": "/pulp/content/"
},
"domain_enabled": false
}
Additonal context
N/A
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the pulp rpm content -t package upload command, comparing the --directory path with the --use-temp-repository path. Reproduce the upload with an RPM signing service and trace where signing is invoked or skipped. Done means directory uploads still sign every package when both options are used, with coverage for this combination.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100