Issue while rebuilding

here is my plugins configuration using docker 27.0

cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/paviliondev/discourse-locations.git

on ./launcher rebuild app

I am getting following error for location plugin

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 449 e
xit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "tag"=>"migrate", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migra
te'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.

Please advise

See if you can figure out which migration failed.

2 Likes

in original post as i mentioned
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate’ failed with return #<Process::Status: pid 449 e
xit 1>

And further up in the logs, it prints the migrations as they are done, so you need to find the one that caused the problem.

2 Likes

oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
Redis version=7.0.15, bits=64, commit=00000000, modified=0, pid=447, just started
Configuration loaded

  • monotonic clock: POSIX clock_gettime
    Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
    Failed listening on port 6379 (TCP), aborting.

cd /var/www/discourse && su discourse -c bundle exec rake db:migrate rake aborted!
OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 peeraddr=xx.xx.xx.xx:443 state=error: unexpected eof while reading (OpenSSL::S
SL::SSLError)

Your error is the location plugin line

- git clone  https://github.com/paviliondev/discourse-locations

Remove the “.git” as my line above.

https://github.com/paviliondev/discourse-locations

No .git on plugins github link. The first line for docker has a “.git”. plugins are just link addresses.

If you scroll up in the log you should see some kind of error related to the locations plugin line. The error you posted I get that one but it does not affect rebuilding

This will not affect anything - both give you the same result

4 Likes

Okay wasn’t aware. Just was comparing my instance app.yml lines and noticed only docker line had extension of “.git” and recalled warnings if how sensitive these file layouts are.

Thanks for the clarification.

1 Like

If that is 1:1 copy of app.yml then git-lines start from wrong place. - should be under d.

cmd:
  - git…
3 Likes

then my question is how rest of other plugins with .git in the url are working fine Example : Calendar and news plugins worked well with .git that the way we normally apply git command. can you explain bit .git make difference?

I can see migration failing and also showing port related issue not sure why?

If you saw @supermathie response to mine. I was mistaken. I was based it on my app.yml setup. Apparently either layout is fine.

I wouldn’t worry about the earlier port error you posted as I get those and it rebuilds fine. Try removing the locations plugin and rebuild and see if it still fails

Scroll up if it fails capture a fair bit of the output above the final fail message. There should be if it is a plugin install issue or maybe something else an error messages

It is possible maybe when you were editting the app.yml Fike you might have inserted a space or something. A good practice is to before changing the app.yml file capture the contents prior to the change so if it fails you can compare the old with the new. If needed line by line.

I typically watch as it rebuilds each time and have become used to some of the common error/warning messages that don’t seem to affect the rebuild.

I had a fail quite sometime ago that was plugin related but was due to in my case at that time missing the update that Chat was merged with core.

Folks here will need to see more of the rebuild log file to help identify where it is failing.

Running discourse-doctor as the failed result suggests might also help. But in my XP usually scrolling up has been my best go to.

You could also copy the bottom section or all of your app yml and paste it here. Just be sure to edit out sensitive things like your mail provider lines, maxmind info. Though you suspect plugin area so … even just copying from the bottom section of $home down might yeild some insights

1 Like

I can see this line also and i can confirm my 2nd VM having same issue only for location plugins
Caused by:
OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 peeraddr=184.104.226.109:443 state=error: unexpected eof while reading (OpenSSL::SSL::SSLError)
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-protocol-0.2.2/lib/net/protocol.rb:46:in connect_nonblock' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-protocol-0.2.2/lib/net/protocol.rb:46:in ssl_socket_connect’
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-http-0.6.0/lib/net/http.rb:1742:in `connect’

1 Like

Can you rebuild if you remove the location plugin from app.yml?

Did you verify the indentation of your file, as it was mentioned here?

1 Like

all working fine other than location

2 Likes

I believe Robert will look at the location plugin issues soon. I noticed an error with the latest Discourse version in a PR to fix a deprecation, and he said he would take a look very soon.

3 Likes

Oh thank you for this information and I hope I will get notification once we sort this out

Many thanks

3 Likes

Consider a post in Marketplace if you want this looked into with priority and have budget, but it looks like a gem version/compatibility issue somehow.

4 Likes

but last week I have added same plugins on Docker 24.0.x and it is working and here is docker 27.0.x thats onlyd difference

That News plugin is broken too.

3 Likes