Project

General

Profile

Actions

Bug #38713

closed

RSS URL doesn't support IPv6 literal

Added by Ewoud Kohl van Wijngaarden 5 months ago. Updated 5 months ago.

Status:
Closed
Priority:
Normal
Category:
-
Target version:
-
Difficulty:
Triaged:
No
Fixed in Releases:
Found in Releases:

Description

When the RSS URL is set to use an IPv6 literal in the URL it breaks.

Steps to reproduce:

1. Go to settings
2. Set rss_enable to true
3. Set rss_url to http://[2001:db8::1]/rss.xml
4. Wait for RSS to cron to or trigger it explicitly

Or manually:

FOREMAN_RSS_URL='http://[2001:db8::1]/rss.xml' rake rss:create_notifications

Expected result:

Retrieve it correctly

Actual result:

$ be rake rss:create_notifications
/home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/pry-byebug-3.8.0/lib/pry-byebug/control_d_handler.rb:5: warning: control_d_handler's arity of 2 parameters was deprecated (eval_string, pry_instance). Now it gets passed just 1 parameter (pry_instance)
2025-09-04T13:30:09 [I|app|] Rails cache backend: File
2025-09-04T13:30:09 [W|app|] You are trying to replace import_subnets from . Adding allowed actions from plugin permissions to the existing one.
2025-09-04T13:30:11 [W|not|] Fetching RSS failed
2025-09-04T13:30:11 [I|not|] Backtrace for 'Fetching RSS failed' error (SocketError): Failed to open TCP connection to [2001:db8::1]:80 (getaddrinfo: Name or service not known)
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/net/http.rb:987:in `initialize'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/net/http.rb:987:in `open'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/net/http.rb:987:in `block in connect'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/timeout-0.4.3/lib/timeout.rb:185:in `block in timeout'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/timeout-0.4.3/lib/timeout.rb:192:in `timeout'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/net/http.rb:985:in `connect'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/net/http.rb:970:in `do_start'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/net/http.rb:959:in `start'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/net/http.rb:621:in `start'
 | /home/ekohl/dev/foreman/app/services/ui_notifications/rss_notifications_checker.rb:81:in `load_rss_feed'
 | /home/ekohl/dev/foreman/app/services/ui_notifications/rss_notifications_checker.rb:44:in `deliver!'
 | /home/ekohl/dev/foreman/lib/tasks/rss.rake:42:in `block (2 levels) in <main>'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/task.rb:281:in `block in execute'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/task.rb:281:in `each'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/task.rb:281:in `execute'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/task.rb:219:in `block in invoke_with_call_chain'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/task.rb:199:in `synchronize'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/task.rb:199:in `invoke_with_call_chain'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/task.rb:188:in `invoke'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:188:in `invoke_task'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:138:in `block (2 levels) in top_level'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:138:in `each'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:138:in `block in top_level'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:147:in `run_with_threads'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:132:in `top_level'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:83:in `block in run'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:214:in `standard_exception_handling'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/lib/rake/application.rb:80:in `run'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/rake-13.3.0/exe/rake:27:in `<top (required)>'
 | /home/ekohl/.rbenv/versions/3.0.4/bin/rake:25:in `load'
 | /home/ekohl/.rbenv/versions/3.0.4/bin/rake:25:in `<top (required)>'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/cli/exec.rb:58:in `load'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/cli/exec.rb:58:in `kernel_load'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/cli/exec.rb:23:in `run'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/cli.rb:479:in `exec'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/cli.rb:31:in `dispatch'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/cli.rb:25:in `start'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/bundler-2.2.33/libexec/bundle:49:in `block in <top (required)>'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/3.0.0/bundler/friendly_errors.rb:103:in `with_friendly_errors'
 | /home/ekohl/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/gems/bundler-2.2.33/libexec/bundle:37:in `<top (required)>'
 | /home/ekohl/.rbenv/versions/3.0.4/bin/bundle:23:in `load'
 | /home/ekohl/.rbenv/versions/3.0.4/bin/bundle:23:in `<main>'

Actions

Also available in: Atom PDF