Project

General

Profile

Bug #31923

Bug #28386: hammer settings content_default_http_proxy does not have validation for provided values

unable to set "Default HTTP Proxy" field to "no global default".'

Added by Marek Hulán over 1 year ago. Updated about 1 year ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
Category:
Repositories
Target version:
Difficulty:
Triaged:
Yes
Bugzilla link:
Fixed in Releases:
Found in Releases:
Red Hat JIRA:

Description

Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1918167

Description of problem:
unable to set "Default HTTP Proxy" field to "no global default".

Version-Release number of selected component (if applicable):
- Satellite 6.9.0 snap 9

How reproducible:
- Always

Steps to Reproduce:
1. Create a Http Proxy (Go to Infrastructure > Http Proxies)
2. Go to Administer > Settings > Content tab
3. Set "Default HTTP Proxy"
4. Now try to set "Default HTTP Proxy" to "no global default".

Actual results:
Oh no! Something went wrong while submitting the form, the server returned the following error: Error: Request failed with status code 422

Expected results:
- User is able to set "Default HTTP Proxy" to "no global default".

Additional info:

2021-01-20T03:42:34 [E|app|9a9bad14] Unprocessable entity Setting::Content (id: 198):
9a9bad14 | There is no such HTTP Proxy
9a9bad14 |
2021-01-20T03:42:34 [I|app|9a9bad14] Rendering api/v2/errors/unprocessable_entity.json.rabl within api/v2/layouts/error_layout
2021-01-20T03:42:34 [I|app|9a9bad14] Rendered api/v2/errors/unprocessable_entity.json.rabl within api/v2/layouts/error_layout (Duration: 4.8ms | Allocations: 6575)
2021-01-20T03:42:34 [D|app|9a9bad14] Body: {
9a9bad14 | "error": {"id":198,"errors":{"base":["There is no such HTTP Proxy"]},"full_messages":["There is no such HTTP Proxy"]}
9a9bad14 | }
9a9bad14 |
2021-01-20T03:42:34 [I|app|9a9bad14] Completed 422 Unprocessable Entity in 26ms (Views: 8.4ms | ActiveRecord: 3.1ms | Allocations: 18645)

Workaround:
- Use hammer CLI to unset content_default_http_proxy
hammer> settings set --name content_default_http_proxy --value ""'

History

#1 Updated by The Foreman Bot over 1 year ago

  • Assignee set to Marek Hulán
  • Status changed from New to Ready For Testing
  • Pull request https://github.com/Katello/katello/pull/9183 added

#2 Updated by Marek Hulán over 1 year ago

  • Assignee deleted (Marek Hulán)
  • Status changed from Ready For Testing to New
  • Category deleted (98)
  • Subject changed from unable to set "Default HTTP Proxy" field to "no global default".' to unable to set "Default HTTP Proxy" field to "no global default".'

Ok I give up, the problem is that the value coming from the form is not empty string, it's the actual `no global default` string. Therefore the detection fails. `:include_blank` no longer sets empty string as a value for this select <option>. Settings is now in react and I didn't find the proper place to fix it. At this point I'm not sure if this needs to be fixed in core or Katello, the only core setting with the similar logic is the host owner where it seems to work fine. So leaving in Katello

#3 Updated by Marek Hulán over 1 year ago

Ah, this seems to be fixed in upstream already. Seems to be originally introduced by #28386 but there's no linked fix.

#4 Updated by Jonathon Turel about 1 year ago

  • Triaged changed from No to Yes
  • Target version set to Katello 4.1.0
  • Category set to Repositories

#5 Updated by Chris Roberts about 1 year ago

  • Parent task set to #28386
  • Target version changed from Katello 4.1.0 to Katello Recycle Bin
  • Status changed from New to Duplicate

Also available in: Atom PDF