Bug 2164997 - hammer repository reclaim-space raises "undefined local variable or method `repositories'" exception
Summary: hammer repository reclaim-space raises "undefined local variable or method `r...
Keywords:
Status: POST
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Repositories
Version: 6.12.0
Hardware: x86_64
OS: Linux
high
medium
Target Milestone: Unspecified
Assignee: wclark
QA Contact: Satellite QE Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-01-27 09:55 UTC by Pavel Moravec
Modified: 2023-07-29 00:24 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Foreman Issue Tracker 36142 0 High New hammer repository reclaim-space raises "undefined local variable or method `repositories'" exception 2023-02-23 21:31:13 UTC
Red Hat Issue Tracker SAT-15298 0 None None None 2023-01-30 14:22:28 UTC
Red Hat Knowledge Base (Solution) 6995654 0 None None None 2023-01-27 10:38:30 UTC

Description Pavel Moravec 2023-01-27 09:55:36 UTC
Description of problem:
hammer repository reclaim-space (for any On Demand repo) fails:

hammer> repository reclaim-space --id 1 --organization-id 1
Could not reclaim the repository:
  undefined local variable or method `repositories' for #<Actions::Pulp3::Repository::ReclaimSpace:0x0000564031cede08>
  Did you mean?  repository_hrefs
hammer> 

https://github.com/Katello/katello/blob/master/app/lib/actions/pulp3/repository/reclaim_space.rb#L7 has a left-over from https://github.com/Katello/katello/commit/5b8426e20f4b5812375ed416180f2181ec94312a

The line should be like:

repository_hrefs = ::Katello::Pulp3::RepositoryReference.default_cv_repository_hrefs([repo], Organization.current || repo.organization)

(this does work)

but I think the 2nd argument should rather be directly "repo.organization", or maybe "repo.organization || Organization.current" to have a fallback - as we should be scoped in the _repository_ organization, no..?


Version-Release number of selected component (if applicable):
Sat 6.11
Sat 6.12
upcoming 6.13 almost surely as well


How reproducible:
100%


Steps to Reproduce:
1. Enable and sync a repo with On Demand download policy
2. try to reclaim space via hammer:

hammer repository reclaim-space --id REPOID --organization-id ORGID


Actual results:
Could not reclaim the repository:
  undefined local variable or method `repositories' for #<Actions::Pulp3::Repository::ReclaimSpace:0x0000564031cede08>
  Did you mean?  repository_hrefs


Expected results:
It works well


Additional info:
The same action via WebUI does work well. "just" hammer fails. (but the bug is in katello)

Comment 2 wclark 2023-02-23 21:31:12 UTC
Created redmine issue https://projects.theforeman.org/issues/36142 from this bug

Comment 3 Bryan Kearney 2023-02-28 20:03:21 UTC
Moving this bug to POST for triage into Satellite since the upstream issue https://projects.theforeman.org/issues/36142 has been resolved.

Comment 4 Bryan Kearney 2023-02-28 20:03:33 UTC
Moving this bug to POST for triage into Satellite since the upstream issue https://projects.theforeman.org/issues/36142 has been resolved.


Note You need to log in before you can comment on or make changes to this bug.