Error on Ruby 3.2 syntax on standard install

I had the same error as this message on a standard install during an upgrade from the browser. The error happened during the plugin:pull_compatible_all and multisite:migrate operations though, not the assets precompile.

The error:

SyntaxError: /var/www/discourse/lib/file_store/base_store.rb:96: syntax error, unexpected ','
      download(*, **, print_deprecation: false)

The complete upgrade log copied from the UI in the browser:

********************************************************
*** Please be patient, next steps might take a while ***
********************************************************
Cycling Unicorn, to free up memory
Restarting unicorn pid: 559
Waiting for Unicorn to reload.
Waiting for Unicorn to reload..
Waiting for Unicorn to reload...
Waiting for Unicorn to reload....
Waiting for Unicorn to reload.....
Waiting for Unicorn to reload......
Waiting for Unicorn to reload.......
Waiting for Unicorn to reload........
Stopping 1 Unicorn worker(s), to free up memory
Stopping job queue to reclaim memory, master pid is 15009
$ cd /var/www/discourse && git fetch --tags --force && git reset --hard HEAD@{upstream}
Using openssl-signature_algorithm 1.2.1
Using aws-sigv4 1.5.0
Using faraday 2.7.2
Using image_optim 0.31.2
Using request_store 1.5.1
Using logstash-logger 0.26.1
Using message_bus 4.3.1
Using mini_racer 0.6.3
Using sidekiq 6.5.8
Using mini_suffix 0.3.3
Using oauth-tty 1.0.5
Using snaky_hash 2.0.1
Using omniauth 1.9.2
Using pry 0.14.2
Using puma 6.0.2
Using rack-mini-profiler 3.0.0
Using rack-protection 3.0.5
Using rbtrace 0.4.14
Using redis-namespace 1.9.0
Using rqrcode 2.1.2
Using rss 0.2.9
Using sassc 2.0.1
Using sprockets 3.7.2
Using uglifier 4.2.0
Using unf 0.1.4
Using unicorn 6.1.0
Using web-push 3.0.0
Using loofah 2.19.1
Using net-imap 0.3.1
Using net-pop 0.1.2
Using net-smtp 0.3.3
Using cose 1.3.0
Using css_parser 1.13.0
Using ruby-readability 0.7.0
Using sanitize 6.0.0
Using ecma-re-validator 0.4.0
Using activesupport 7.0.4.3
Using rails-html-sanitizer 1.5.0
Using globalid 1.0.1
Using activemodel 7.0.4.3
Using aws-sdk-core 3.130.2
Using faraday-retry 2.0.0
Using json_schemer 0.2.23
Using mini_scheduler 0.15.0
Using oauth 1.1.0
Using oauth2 1.4.11
Using pry-byebug 3.10.1
Using pry-rails 0.3.9
Using rails-dom-testing 2.0.3
Using actionview 7.0.4.3
Using activejob 7.0.4.3
Using active_model_serializers 0.8.4
Using activerecord 7.0.4.3
Using aws-sdk-kms 1.56.0
Using aws-sdk-sns 1.53.0
Using omniauth-oauth2 1.7.3
Using omniauth-oauth 1.2.0
Using actionpack 7.0.4.3
Using actionview_precompiler 0.2.3
Using aws-sdk-s3 1.114.0
Using discourse-seed-fu 2.3.12
Using omniauth-facebook 9.0.0
Using omniauth-github 1.4.0
Using omniauth-google-oauth2 0.8.2
Using omniauth-twitter 1.4.0
Using railties 7.0.4.3
Using sprockets-rails 3.4.2
Using mail 2.8.0.edge from https://github.com/discourse/mail.git (at main@5b700fc)
Using lograge 0.12.0
Using rails_failover 0.8.1
Using rails_multisite 4.0.1
Using sassc-rails 2.1.2
Using actionmailer 7.0.4.3
Installing uri 0.12.2
Using net-http 0.3.2
Bundle complete! 135 Gemfile dependencies, 171 gems now installed.
Gems in the groups 'test' and 'development' were not installed.
Bundled gems are installed into `./vendor/bundle`
$ yarn install --production
yarn install v1.22.19
[1/5] Validating package.json...
[2/5] Resolving packages...
success Already up-to-date.
$ yarn --cwd app/assets/javascripts/discourse $(node -e 'if(JSON.parse(process.env.npm_config_argv).original.includes(`--frozen-lockfile`)){console.log(`--frozen-lockfile`)}')
yarn install v1.22.19
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
Done in 8.84s.
Done in 9.31s.
$ LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all
rake aborted!
SyntaxError: /var/www/discourse/lib/file_store/base_store.rb:96: syntax error, unexpected ','
      download(*, **, print_deprecation: false)
                ^
/var/www/discourse/lib/file_store/base_store.rb:102: syntax error, unexpected ','
      download(*, **, print_deprecation: false)
                ^
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/zeitwerk-2.6.6/lib/zeitwerk/kernel.rb:38:in `require'
/var/www/discourse/lib/file_store/local_store.rb:3:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/zeitwerk-2.6.6/lib/zeitwerk/kernel.rb:38:in `require'
/var/www/discourse/lib/tasks/posts.rake:3:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:661:in `load'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:661:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:661:in `each'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:661:in `run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/application.rb:506:in `run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:464:in `load_tasks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/railtie.rb:226:in `public_send'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/railtie.rb:226:in `method_missing'
/var/www/discourse/Rakefile:9:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/bin/bundle:25:in `load'
/var/www/discourse/vendor/bundle/ruby/3.1.0/bin/bundle:25:in `<main>'
(See full trace by running task with --trace)
Unable checkout compatible plugin versions
$ SKIP_POST_DEPLOYMENT_MIGRATIONS=1 bundle exec rake multisite:migrate
rake aborted!
SyntaxError: /var/www/discourse/lib/file_store/base_store.rb:96: syntax error, unexpected ','
      download(*, **, print_deprecation: false)
                ^
/var/www/discourse/lib/file_store/base_store.rb:102: syntax error, unexpected ','
      download(*, **, print_deprecation: false)
                ^
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/zeitwerk-2.6.6/lib/zeitwerk/kernel.rb:38:in `require'
/var/www/discourse/lib/file_store/local_store.rb:3:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/zeitwerk-2.6.6/lib/zeitwerk/kernel.rb:38:in `require'
/var/www/discourse/lib/tasks/posts.rake:3:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:661:in `load'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:661:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:661:in `each'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:661:in `run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/application.rb:506:in `run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/engine.rb:464:in `load_tasks'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/railtie.rb:226:in `public_send'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/railtie.rb:226:in `method_missing'
/var/www/discourse/Rakefile:9:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/bin/bundle:25:in `load'
/var/www/discourse/vendor/bundle/ruby/3.1.0/bin/bundle:25:in `<main>'
(See full trace by running task with --trace)
Docker Manager: FAILED TO UPGRADE
#<RuntimeError: RuntimeError>
/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:209:in `run'
/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:101:in `upgrade'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:19:in `block in <main>'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:6:in `fork'
/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:6:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/commands/runner/runner_command.rb:43:in `load'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/commands/runner/runner_command.rb:43:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/command/base.rb:87:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/command.rb:48:in `invoke'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/railties-7.0.4.3/lib/rails/commands.rb:18:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/bootsnap-1.15.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
bin/rails:18:in `<main>'
Spinning up 1 Unicorn worker(s) that were stopped initially

Running the upgrade from the console (git pull && ./launcher rebuild app, as mentioned here) triggered another error, but Iā€™m not sure whatā€™s the relevant error message here:

I, [2023-07-04T08:08:49.261121 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile'
- Building
- Building
- building...
- cleaning up
- cleaning up
Build Error (broccoli-persistent-filter:Babel > [Babel: @ember/test-helpers]) in @ember/test-helpers/-internal/build-registry.js

[BABEL]: --- PLACEHOLDER PACKAGE ---
This @babel/plugin-proposal-private-property-in-object version is not meant to
be imported. Something is importing
@babel/plugin-proposal-private-property-in-object without declaring it in its
dependencies (or devDependencies) in the package.json file.
Add "@babel/plugin-proposal-private-property-in-object" to your devDependencies
to work around this error. This will make this message go away.
 (While processing: /var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/index.js)Error: [BABEL]: --- PLACEHOLDER PACKAGE ---
This @babel/plugin-proposal-private-property-in-object version is not meant to
be imported. Something is importing
@babel/plugin-proposal-private-property-in-object without declaring it in its
dependencies (or devDependencies) in the package.json file.
Add "@babel/plugin-proposal-private-property-in-object" to your devDependencies
to work around this error. This will make this message go away.
 (While processing: /var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/index.js)
    at Object.<anonymous> (/var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/node_modules/@babel/plugin-proposal-private-property-in-object/lib/index.js:28:7)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/available-plugins.js:62:46)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/filter-items.js:11:25)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/index.js:16:20)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)


Stack Trace and Error Report: /tmp/error.dump.5abe6326cd5a415063a7ad1c85649486.log
error Command failed with exit code 1.
I, [2023-07-04T08:09:05.088181 #1]  INFO -- : Checking 'Video Upload' for 'default'... up to date
yarn run v1.22.19
$ /var/www/discourse/app/assets/javascripts/node_modules/.bin/ember build -prod
WARNING: Node v18.16.1 is not tested against Ember CLI on your platform. We recommend that you use the most-recent "Active LTS" version of Node.js. See https://git.io/v7S5n for details.
Environment: production
cleaning up...
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

I, [2023-07-04T08:09:05.089002 #1]  INFO -- : Terminating async processes
I, [2023-07-04T08:09:05.089274 #1]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 42
103:signal-handler (1688458145) Received SIGTERM scheduling shutdown...
I, [2023-07-04T08:09:05.089522 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 103
2023-07-04 08:09:05.089 UTC [42] LOG:  received fast shutdown request
103:M 04 Jul 2023 08:09:05.183 # User requested shutdown...
103:M 04 Jul 2023 08:09:05.183 * Saving the final RDB snapshot before exiting.
2023-07-04 08:09:05.186 UTC [42] LOG:  aborting any active transactions
2023-07-04 08:09:05.190 UTC [42] LOG:  background worker "logical replication launcher" (PID 51) exited with exit code 1
2023-07-04 08:09:05.190 UTC [46] LOG:  shutting down
103:M 04 Jul 2023 08:09:05.388 * DB saved on disk
103:M 04 Jul 2023 08:09:05.389 # Redis is now ready to exit, bye bye...
2023-07-04 08:09:05.431 UTC [42] LOG:  database system is shut down


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' failed with return #<Process::Status: pid 2323 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
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.
f1dc57af807a68bb877ce724ea4a3424c77d39250b8ee20cb022194938925ce8

I reverted to the commit I had before the git pull (cdc5f905a2f245171b9f53fb76f4ba947389fc6b) and rebuilt again and got the same error.

I tried ./discourse-doctor and it failed on the same babel error. It said the installation uses unofficial plugins and suggests I disable them, but how can I do that without a working app? All the plugins have been installed from the browser interface, not in app.yaml.

When I restart the app I get an Oops - Error 500 in the browser. When I enter the app, /var/www/discourse/log/production.log gives the same Syntax Error, and the ruby version is indeed 3.1 (ruby 3.1.3p185 (2022-11-24 revision 1a6b16756e) [x86_64-linux]).

The forum is broken now. How can I fix the ruby version? Or the rebuild? Or revert to a working app?

My app.yml with the comments removed and the identifiers redacted:

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ssl.template.yml"
  - "templates/web.letsencrypt.ssl.template.yml"
  - "templates/sshd.template.yml"
  - "templates/web.ratelimited.template.yml"

expose:
  - "80:80"
  - "443:443"
  - "2222:22"

params:
  db_default_text_search_config: "pg_catalog.english"
  db_shared_buffers: "128MB"
  version: stable

env:
  LANG: en_US.UTF-8
  UNICORN_WORKERS: 2
  DISCOURSE_DEVELOPER_EMAILS: 'redacted'
  DISCOURSE_HOSTNAME: 'redacted'
  DISCOURSE_SMTP_ADDRESS: "redacted"
  DISCOURSE_SMTP_PORT: 25
  DISCOURSE_SMTP_USER_NAME: "redacted"
  DISCOURSE_SMTP_PASSWORD: "redacted"
  DISCOURSE_SMTP_ENABLE_START_TLS: true
  LETSENCRYPT_ACCOUNT_EMAIL: "redacted"
  DISCOURSE_MAXMIND_LICENSE_KEY: "redacted"
  DISCOURSE_REFRESH_MAXMIND_DB_DURING_PRECOMPILE_DAYS: 0

volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - mkdir -p plugins
          - git clone https://github.com/discourse/docker_manager.git

run:
  - exec: echo "Beginning of custom commands"

  - exec: echo "End of custom commands"
  - exec: awk -F\# '{print $1;}' ~/.ssh/authorized_keys | awk 'BEGIN { print "Authorized SSH keys for this container:"; } NF>=2 {print $NF;}'
1 Like

Itā€™s a public holiday in the USA so not a great time to have a problemā€¦ please can you share the output of discourse-doctor?

I am suspicious that perhaps docker-manager hasnā€™t updated, but at least equally likely is that you do need to disable your plugins. Unfortunately I donā€™t know how youā€™d do that, as your app.yml doesnā€™t seem to contain any other than docker_manager.

1 Like

Maybe thatā€™s an error in your theme.

Will

./launcher start app

Get your site going?

1 Like

In the meantime I changed /var/www/discourse/lib/file_store/base_store.rb directly inside the container to be compatible with Ruby 3.1 (changed the * to *args and the ** to **kwargs), restarted the app and now the forum seems to be working.

I checked the plugins and actually thereā€™s only one thatā€™s enabled: docker_manager at version 0.1. There are two other ones that are disabled (chat and styleguide).

Hereā€™s the doctorā€™s log:

DISCOURSE DOCTOR Tue Jul 4 08:34:54 UTC 2023
OS: Linux redacted 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64 GNU/Linux


Found containers/app.yml

==================== YML SETTINGS ====================
DISCOURSE_HOSTNAME=redacted
SMTP_ADDRESS="redacted" # (mandatory)
DEVELOPER_EMAILS=redacted
SMTP_PASSWORD="redacted" # (optional)
SMTP_PORT=25 # (optional)
SMTP_USER_NAME="redacted" # (optional)
LETSENCRYPT_ACCOUNT_EMAIL=redacted

==================== DOCKER INFO ====================
DOCKER VERSION: Docker version 19.03.15, build 99e3ed8919

DOCKER PROCESSES (docker ps -a)

CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS                      PORTS               NAMES
91601890406d        local_discourse/app   "/sbin/boot"        4 months ago        Exited (5) 17 minutes ago                       app

==================== SERIOUS PROBLEM!!!! ====================
app not running!
Attempting to rebuild
==================== REBUILD LOG ====================
x86_64 arch detected.
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
Stopping old container
+ /usr/bin/docker stop -t 600 app
app
2.0.20230703-0055: Pulling from discourse/base
Digest: sha256:a943db5c56ee8b2025ec550b42fe12ecfa63990d428f43ba8358ca3632b5335f
Status: Image is up to date for discourse/base:2.0.20230703-0055
docker.io/discourse/base:2.0.20230703-0055
/usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2023-07-04T08:35:07.717173 #1]  INFO -- : Reading from stdin
I, [2023-07-04T08:35:07.722553 #1]  INFO -- : > locale-gen $LANG && update-locale
I, [2023-07-04T08:35:07.786023 #1]  INFO -- : Generating locales (this might take a while)...
Generation complete.

I, [2023-07-04T08:35:07.786357 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2023-07-04T08:35:07.789454 #1]  INFO -- :
I, [2023-07-04T08:35:07.789985 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2023-07-04T08:35:07.793915 #1]  INFO -- :
I, [2023-07-04T08:35:07.794579 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2023-07-04T08:35:07.799138 #1]  INFO -- :
I, [2023-07-04T08:35:07.799642 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2023-07-04T08:35:07.803203 #1]  INFO -- :
I, [2023-07-04T08:35:07.803670 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2023-07-04T08:35:07.806664 #1]  INFO -- :
I, [2023-07-04T08:35:07.807133 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2023/07/04 08:35:07 socat[18] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No such file or directory
I, [2023-07-04T08:35:07.815857 #1]  INFO -- :
I, [2023-07-04T08:35:07.816230 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2023-07-04T08:35:07.821272 #1]  INFO -- :
I, [2023-07-04T08:35:07.821753 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2023-07-04T08:35:07.825460 #1]  INFO -- :
I, [2023-07-04T08:35:07.825846 #1]  INFO -- : > mkdir -p /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-07-04T08:35:07.828773 #1]  INFO -- :
I, [2023-07-04T08:35:07.829257 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-07-04T08:35:07.831919 #1]  INFO -- :
I, [2023-07-04T08:35:07.837345 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown:
I, [2023-07-04T08:35:07.843481 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown:
I, [2023-07-04T08:35:07.850314 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown:
I, [2023-07-04T08:35:07.855908 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown:
I, [2023-07-04T08:35:07.856300 #1]  INFO -- : > chown -R root /var/lib/postgresql/13/main
I, [2023-07-04T08:35:08.013507 #1]  INFO -- :
I, [2023-07-04T08:35:08.013848 #1]  INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/13/bin/initdb -D /shared/postgres_data || exit 0
I, [2023-07-04T08:35:08.016115 #1]  INFO -- :
I, [2023-07-04T08:35:08.016262 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2023-07-04T08:35:08.049958 #1]  INFO -- :
I, [2023-07-04T08:35:08.050126 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2023-07-04T08:35:08.053008 #1]  INFO -- :
I, [2023-07-04T08:35:08.053405 #1]  INFO -- : > /root/upgrade_postgres
I, [2023-07-04T08:35:08.060826 #1]  INFO -- :
I, [2023-07-04T08:35:08.061125 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2023-07-04T08:35:08.063448 #1]  INFO -- :
I, [2023-07-04T08:35:08.064215 #1]  INFO -- : Replacing data_directory = '/var/lib/postgresql/13/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.064714 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.064984 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.065291 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.065574 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.065849 #1]  INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.066118 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2023-07-04T08:35:08.069168 #1]  INFO -- :
I, [2023-07-04T08:35:08.069586 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.069904 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.070256 #1]  INFO -- : Replacing (?-mix:#?log_min_duration_statement *=.*) with log_min_duration_statement = $db_log_min_duration_statement in /etc/postgresql/13/main/postgresql.conf
I, [2023-07-04T08:35:08.070817 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/13/main/pg_hba.conf
I, [2023-07-04T08:35:08.071076 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2023-07-04T08:35:08.071371 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*::1\/128.*$) with host all all ::/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2023-07-04T08:35:08.071569 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main
I, [2023-07-04T08:35:08.073087 #1]  INFO -- : > sleep 5
2023-07-04 08:35:08.420 UTC [41] LOG:  starting PostgreSQL 13.11 (Debian 13.11-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit
2023-07-04 08:35:08.421 UTC [41] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2023-07-04 08:35:08.421 UTC [41] LOG:  listening on IPv6 address "::", port 5432
2023-07-04 08:35:08.431 UTC [41] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2023-07-04 08:35:08.446 UTC [44] LOG:  database system was shut down at 2023-07-04 08:31:43 UTC
2023-07-04 08:35:08.465 UTC [41] LOG:  database system is ready to accept connections
I, [2023-07-04T08:35:13.076935 #1]  INFO -- :
I, [2023-07-04T08:35:13.077237 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
2023-07-04 08:35:13.149 UTC [54] postgres@postgres ERROR:  database "discourse" already exists
2023-07-04 08:35:13.149 UTC [54] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: error: database creation failed: ERROR:  database "discourse" already exists
I, [2023-07-04T08:35:13.152279 #1]  INFO -- :
I, [2023-07-04T08:35:13.152523 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2023-07-04 08:35:13.211 UTC [58] postgres@discourse ERROR:  role "discourse" already exists
2023-07-04 08:35:13.211 UTC [58] postgres@discourse STATEMENT:  create user discourse;
ERROR:  role "discourse" already exists
I, [2023-07-04T08:35:13.213860 #1]  INFO -- :
I, [2023-07-04T08:35:13.214061 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2023-07-04T08:35:13.265307 #1]  INFO -- : GRANT

I, [2023-07-04T08:35:13.265564 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
I, [2023-07-04T08:35:13.317945 #1]  INFO -- : ALTER SCHEMA

I, [2023-07-04T08:35:13.318152 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2023-07-04T08:35:13.374925 #1]  INFO -- : CREATE EXTENSION

I, [2023-07-04T08:35:13.375085 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2023-07-04T08:35:13.424029 #1]  INFO -- : CREATE EXTENSION

I, [2023-07-04T08:35:13.424239 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2023-07-04T08:35:13.473016 #1]  INFO -- : CREATE EXTENSION

I, [2023-07-04T08:35:13.473353 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2023-07-04T08:35:13.521434 #1]  INFO -- : CREATE EXTENSION

I, [2023-07-04T08:35:13.521788 #1]  INFO -- : > sudo -u postgres psql discourse
I, [2023-07-04T08:35:13.524205 #1]  INFO -- : update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'discourse' AND encoding = pg_char_to_encoding('SQL_ASCII');

I, [2023-07-04T08:35:13.584880 #1]  INFO -- : File > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2023-07-04T08:35:13.588081 #1]  INFO -- : File > /var/spool/cron/crontabs/postgres  chmod:   chown:
I, [2023-07-04T08:35:13.588556 #1]  INFO -- : > echo postgres installed!
I, [2023-07-04T08:35:13.591048 #1]  INFO -- : postgres installed!

I, [2023-07-04T08:35:13.596241 #1]  INFO -- : File > /etc/service/redis/run  chmod: +x  chown:
I, [2023-07-04T08:35:13.601338 #1]  INFO -- : File > /etc/service/redis/log/run  chmod: +x  chown:
I, [2023-07-04T08:35:13.606793 #1]  INFO -- : File > /etc/runit/3.d/10-redis  chmod: +x  chown:
I, [2023-07-04T08:35:13.608119 #1]  INFO -- : Replacing daemonize yes with  in /etc/redis/redis.conf
I, [2023-07-04T08:35:13.609135 #1]  INFO -- : Replacing (?-mix:^pidfile.*$) with  in /etc/redis/redis.conf
I, [2023-07-04T08:35:13.609825 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2023-07-04T08:35:13.613120 #1]  INFO -- :
I, [2023-07-04T08:35:13.614135 #1]  INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2023-07-04T08:35:13.614898 #1]  INFO -- : Replacing (?-mix:^bind .*$) with  in /etc/redis/redis.conf
I, [2023-07-04T08:35:13.615551 #1]  INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2023-07-04T08:35:13.616281 #1]  INFO -- : Replacing (?-mix:^protected-mode yes) with protected-mode no in /etc/redis/redis.conf
I, [2023-07-04T08:35:13.616974 #1]  INFO -- : Replacing # io-threads 4 with io-threads $redis_io_threads in /etc/redis/redis.conf
I, [2023-07-04T08:35:13.617567 #1]  INFO -- : > echo redis installed
I, [2023-07-04T08:35:13.620142 #1]  INFO -- : redis installed

I, [2023-07-04T08:35:13.620773 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2023-07-04T08:35:13.627103 #1]  INFO -- : logfile ""

I, [2023-07-04T08:35:13.627893 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-07-04T08:35:13.629707 #1]  INFO -- : > sleep 10
102:C 04 Jul 2023 08:35:13.639 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
102:C 04 Jul 2023 08:35:13.639 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=102, just started
102:C 04 Jul 2023 08:35:13.639 # Configuration loaded
102:M 04 Jul 2023 08:35:13.639 * monotonic clock: POSIX clock_gettime
102:M 04 Jul 2023 08:35:13.640 * Running mode=standalone, port=6379.
102:M 04 Jul 2023 08:35:13.640 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
102:M 04 Jul 2023 08:35:13.640 # Server initialized
102:M 04 Jul 2023 08:35:13.640 * Loading RDB produced by version 7.0.7
102:M 04 Jul 2023 08:35:13.640 * RDB age 211 seconds
102:M 04 Jul 2023 08:35:13.640 * RDB memory usage when created 15.65 Mb
102:M 04 Jul 2023 08:35:13.681 * Done loading RDB, keys loaded: 11320, keys expired: 0.
102:M 04 Jul 2023 08:35:13.681 * DB loaded from disk: 0.041 seconds
102:M 04 Jul 2023 08:35:13.681 * Ready to accept connections
I, [2023-07-04T08:35:23.632444 #1]  INFO -- :
I, [2023-07-04T08:35:23.634001 #1]  INFO -- : > thpoff echo "thpoff is installed!"
I, [2023-07-04T08:35:23.647427 #1]  INFO -- : thpoff is installed!

I, [2023-07-04T08:35:23.648579 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Aborting! Mail is not configured!"; exit 1; end'
I, [2023-07-04T08:35:23.734677 #1]  INFO -- :
I, [2023-07-04T08:35:23.734943 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_HOSTNAME"] == "discourse.example.com"; puts "Aborting! Domain is not configured!"; exit 1; end'
I, [2023-07-04T08:35:23.805114 #1]  INFO -- :
I, [2023-07-04T08:35:23.805363 #1]  INFO -- : > /usr/local/bin/ruby -e 'if (ENV["DISCOURSE_CDN_URL"] || "")[0..1] == "//"; puts "Aborting! CDN must have a protocol specified. Once fixed you should rebake your posts now to correct all posts."; exit 1; end'
I, [2023-07-04T08:35:23.875870 #1]  INFO -- :
I, [2023-07-04T08:35:23.876109 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2023-07-04T08:35:23.879621 #1]  INFO -- :
I, [2023-07-04T08:35:23.883359 #1]  INFO -- : File > /etc/cron.d/anacron  chmod:   chown:
I, [2023-07-04T08:35:23.889667 #1]  INFO -- : File > /etc/runit/1.d/copy-env  chmod: +x  chown:
I, [2023-07-04T08:35:23.895348 #1]  INFO -- : File > /etc/service/unicorn/run  chmod: +x  chown:
I, [2023-07-04T08:35:23.900664 #1]  INFO -- : File > /etc/service/nginx/run  chmod: +x  chown:
I, [2023-07-04T08:35:23.906591 #1]  INFO -- : File > /etc/runit/3.d/01-nginx  chmod: +x  chown:
I, [2023-07-04T08:35:23.911796 #1]  INFO -- : File > /etc/runit/3.d/02-unicorn  chmod: +x  chown:
I, [2023-07-04T08:35:23.912015 #1]  INFO -- : Replacing # postgres with sv start postgres || exit 1 in /etc/service/unicorn/run
I, [2023-07-04T08:35:23.912204 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-07-04T08:35:23.914896 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git reset --hard
129:C 04 Jul 2023 08:35:23.923 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
129:C 04 Jul 2023 08:35:23.923 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=129, just started
129:C 04 Jul 2023 08:35:23.923 # Configuration loaded
129:M 04 Jul 2023 08:35:23.923 * monotonic clock: POSIX clock_gettime
129:M 04 Jul 2023 08:35:23.923 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
129:M 04 Jul 2023 08:35:23.923 # Failed listening on port 6379 (TCP), aborting.
Updating files: 100% (33396/33396), done.
I, [2023-07-04T08:35:28.224120 #1]  INFO -- : HEAD is now at 3f1024de7 DEV: Refactor DM channel creation into new service pattern (#22144)

I, [2023-07-04T08:35:28.224329 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2023-07-04T08:35:28.441174 #1]  INFO -- :
I, [2023-07-04T08:35:28.441741 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [ $(git rev-parse --is-shallow-repository) == "true" ]; then
      git remote set-branches --add origin main
      git remote set-branches origin stable
      git fetch --depth 1 origin stable
  else
      git fetch --tags --prune-tags --prune --force origin
  fi
'
From https://github.com/discourse/discourse
 - [deleted]             (none)     -> origin/0-drop-sk-test
 - [deleted]             (none)     -> origin/dev/move-chat-user-count-update-to-ensure-consistency
 - [deleted]             (none)     -> origin/dev_update_diffhtml
 - [deleted]             (none)     -> origin/fix-intercept-with-target
 - [deleted]             (none)     -> origin/issue/font-loading-wizard-style
 - [deleted]             (none)     -> origin/modal-named-outlet
   3f1024de7..ee1dbd46c  main                  -> origin/main
 * [new branch]          0-helpers             -> origin/0-helpers
 + a23a31600...e24fcb507 activation-modals-update -> origin/activation-modals-update  (forced update)
   95ce96528..d370c8c0e  chat-notices          -> origin/chat-notices
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.2.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.2.0
 + 86e63992b...3ab4d8598 dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.4.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.4.0  (forced update)
 + 3949f2ca8...e71e5eff6 dev/make-sure-we-stream-data-to-csv-files-when-running-exports -> origin/dev/make-sure-we-stream-data-to-csv-files-when-running-exports  (forced update)
 * [new branch]          dev/minio-s3-system-specs -> origin/dev/minio-s3-system-specs
 + dff30f62e...e8082afe2 dismiss-modals-update -> origin/dismiss-modals-update  (forced update)
 * [new branch]          do-not-disturb-modal-upgrade -> origin/do-not-disturb-modal-upgrade
 * [new branch]          feature/interpolation-key-check -> origin/feature/interpolation-key-check
   33608240f..509797feb  feature/tracking-unread-thread-in-sidebar -> origin/feature/tracking-unread-thread-in-sidebar
   e571e1131..4fae425b9  fix-mobile-share      -> origin/fix-mobile-share
 + f588c592d...03e460b6a fullscreen-modals-update -> origin/fullscreen-modals-update  (forced update)
 + ccc6c903a...94bb20818 group-add-members-modal-upgrade -> origin/group-add-members-modal-upgrade  (forced update)
 * [new branch]          issue/thread-original-message-delete-restore -> origin/issue/thread-original-message-delete-restore
 + 1980b69ef...67273d209 loic-migrate-chat-message-creator-to-a-service -> origin/loic-migrate-chat-message-creator-to-a-service  (forced update)
 + d1588f61c...c07b70d74 poll-plugin-update    -> origin/poll-plugin-update  (forced update)
   136013353..b83369a54  poll-refactor         -> origin/poll-refactor
 + 12f2d7ff7...7717f3651 second-factor-add-security-key-modal-upgrade -> origin/second-factor-add-security-key-modal-upgrade  (forced update)
 + 205f3bf1b...e99d456be second-factor-add-totp-modal-upgrade -> origin/second-factor-add-totp-modal-upgrade  (forced update)
 + dc2c6cc41...696652aa0 second-factor-backup-edit-modal-upgrade -> origin/second-factor-backup-edit-modal-upgrade  (forced update)
 + f904e4133...9d65daa00 second-factor-edit-security-key-modal-upgrade -> origin/second-factor-edit-security-key-modal-upgrade  (forced update)
 + 9d0d76101...ad2ae96f0 share-topic-modal     -> origin/share-topic-modal  (forced update)
 + 310137e3c...d9b37147c slack_import          -> origin/slack_import  (forced update)
   7de3cb9b0..38a9694ff  tests-passed          -> origin/tests-passed
I, [2023-07-04T08:35:30.181323 #1]  INFO -- :
I, [2023-07-04T08:35:30.181801 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [[ $(git symbolic-ref --short HEAD) == stable ]] ; then
      git pull
  else
      git -c advice.detachedHead=false checkout stable
  fi
'
Switched to a new branch 'stable'
I, [2023-07-04T08:35:36.709492 #1]  INFO -- : Branch 'stable' set up to track remote branch 'stable' from 'origin'.

I, [2023-07-04T08:35:36.709921 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git config user.discourse-version stable
I, [2023-07-04T08:35:36.722428 #1]  INFO -- :
I, [2023-07-04T08:35:36.722824 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2023-07-04T08:35:36.726861 #1]  INFO -- :
I, [2023-07-04T08:35:36.727244 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2023-07-04T08:35:36.730932 #1]  INFO -- :
I, [2023-07-04T08:35:36.731353 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2023-07-04T08:35:36.735322 #1]  INFO -- :
I, [2023-07-04T08:35:36.735760 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2023-07-04T08:35:36.739494 #1]  INFO -- :
I, [2023-07-04T08:35:36.739901 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2023-07-04T08:35:36.744366 #1]  INFO -- :
I, [2023-07-04T08:35:36.744815 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2023-07-04T08:35:36.748457 #1]  INFO -- :
I, [2023-07-04T08:35:36.748854 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
I, [2023-07-04T08:35:36.754083 #1]  INFO -- :
I, [2023-07-04T08:35:36.754569 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log /var/www/discourse/log"
I, [2023-07-04T08:35:36.760285 #1]  INFO -- :
I, [2023-07-04T08:35:36.760700 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2023-07-04T08:35:36.766617 #1]  INFO -- :
I, [2023-07-04T08:35:36.767172 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2023-07-04T08:35:36.776053 #1]  INFO -- :
I, [2023-07-04T08:35:36.776610 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2023-07-04T08:35:36.782478 #1]  INFO -- :
I, [2023-07-04T08:35:36.783022 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2023-07-04T08:35:36.788665 #1]  INFO -- :
I, [2023-07-04T08:35:36.789017 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2023-07-04T08:35:36.905317 #1]  INFO -- :
I, [2023-07-04T08:35:36.905593 #1]  INFO -- : > cd /var/www/discourse && [ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2023-07-04T08:35:36.908220 #1]  INFO -- :
I, [2023-07-04T08:35:36.908848 #1]  INFO -- : Replacing # redis with sv start redis || exit 1 in /etc/service/unicorn/run
I, [2023-07-04T08:35:36.909446 #1]  INFO -- : > cd /var/www/discourse/plugins && mkdir -p plugins
I, [2023-07-04T08:35:36.913315 #1]  INFO -- :
I, [2023-07-04T08:35:36.913811 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/docker_manager.git
Cloning into 'docker_manager'...
I, [2023-07-04T08:35:38.642193 #1]  INFO -- :
I, [2023-07-04T08:35:38.642814 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2023-07-04T08:35:38.647323 #1]  INFO -- :
I, [2023-07-04T08:35:38.647896 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2023-07-04T08:35:38.650756 #1]  INFO -- :
I, [2023-07-04T08:35:38.651170 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2023-07-04T08:35:38.654148 #1]  INFO -- :
I, [2023-07-04T08:35:38.654989 #1]  INFO -- : Replacing pid /run/nginx.pid; with daemon off; in /etc/nginx/nginx.conf
I, [2023-07-04T08:35:38.655476 #1]  INFO -- : Replacing (?m-ix:upstream[^\}]+\}) with upstream discourse { server 127.0.0.1:3000; } in /etc/nginx/conf.d/discourse.conf
I, [2023-07-04T08:35:38.655887 #1]  INFO -- : Replacing (?-mix:server_name.+$) with server_name _ ; in /etc/nginx/conf.d/discourse.conf
I, [2023-07-04T08:35:38.656346 #1]  INFO -- : Replacing (?-mix:client_max_body_size.+$) with client_max_body_size $upload_size ; in /etc/nginx/conf.d/discourse.conf
I, [2023-07-04T08:35:38.656706 #1]  INFO -- : Replacing (?-mix:worker_connections.+$) with worker_connections $nginx_worker_connections ; in /etc/nginx/nginx.conf
I, [2023-07-04T08:35:38.656972 #1]  INFO -- : > echo "done configuring web"
I, [2023-07-04T08:35:38.659032 #1]  INFO -- : done configuring web

I, [2023-07-04T08:35:38.659502 #1]  INFO -- : > cd /var/www/discourse && gem install bundler --conservative -v $(awk '/BUNDLED WITH/ { getline; gsub(/ /,""); print $0 }' Gemfile.lock)
I, [2023-07-04T08:35:39.376540 #1]  INFO -- : Successfully installed bundler-2.4.1
1 gem installed

I, [2023-07-04T08:35:39.376897 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
I, [2023-07-04T08:35:42.247035 #1]  INFO -- :
I, [2023-07-04T08:35:42.247550 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'
warning " > @mixer/parallel-prettier@2.0.3" has unmet peer dependency "prettier@^2.0.0".
warning "eslint-config-discourse > eslint-plugin-lodash@7.1.0" has unmet peer dependency "lodash@>=4".
I, [2023-07-04T08:37:51.032227 #1]  INFO -- : yarn install v1.22.19
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
[4/5] Linking dependencies...
[5/5] Building fresh packages...
$ yarn --cwd app/assets/javascripts/discourse $(node -e 'if(JSON.parse(process.env.npm_config_argv).original.includes(`--frozen-lockfile`)){console.log(`--frozen-lockfile`)}')
yarn install v1.22.19
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
Done in 68.15s.
Done in 118.83s.
yarn cache v1.22.19
success Cleared cache.
Done in 9.49s.

I, [2023-07-04T08:37:51.033163 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle config --local deployment true'
I, [2023-07-04T08:37:51.285818 #1]  INFO -- :
I, [2023-07-04T08:37:51.285947 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle config --local without "development test"'
I, [2023-07-04T08:37:51.480721 #1]  INFO -- : You are replacing the current local value of without, which is currently "test:development"

I, [2023-07-04T08:37:51.481286 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle install --retry 3 --jobs 4'
I, [2023-07-04T08:40:20.584190 #1]  INFO -- : Fetching gem metadata from https://rubygems.org/.........
Fetching https://github.com/discourse/mail.git
Using rake 13.0.6
Fetching concurrent-ruby 1.1.10
Fetching minitest 5.17.0
Using builder 3.2.4
Using racc 1.6.2
Fetching erubi 1.11.0
Using crass 1.0.6
Fetching rack 2.2.5
Installing erubi 1.11.0
Installing minitest 5.17.0
Installing rack 2.2.5
Using mini_mime 1.1.2
Using timeout 0.3.1
Using public_suffix 5.0.1
Using aws-eventstream 1.2.0
Using aws-partitions 1.583.0
Using jmespath 1.6.2
Fetching msgpack 1.6.0
Using bundler 2.4.1
Using byebug 11.1.3
Using cbor 0.5.9.6
Using cgi 0.3.6
Using chunky_png 1.4.0
Using coderay 1.1.3
Using colored2 3.1.2
Fetching connection_pool 2.3.0
Installing concurrent-ruby 1.1.10
Installing msgpack 1.6.0 with native extensions
Installing connection_pool 2.3.0
Fetching openssl 3.0.2
Installing openssl 3.0.2 with native extensions
Using cppjieba_rb 0.4.2
Using diffy 3.4.2
Using digest 3.1.1
Using discourse-fonts 0.0.9
Fetching regexp_parser 2.6.1
Installing regexp_parser 2.6.1
Using email_reply_trimmer 0.1.13
Fetching excon 0.96.0
Using execjs 2.8.1
Fetching exifr 1.3.10
Installing exifr 1.3.10
Installing excon 0.96.0
Using faraday-net_http 3.0.2
Using ruby2_keywords 0.0.5
Using fast_blank 1.0.1
Using fast_xs 0.8.0
Fetching fastimage 2.2.6
Using ffi 1.15.5
Installing fastimage 2.2.6
Using fspath 3.1.2
Using gc_tracer 1.5.1
Using guess_html_encoding 0.0.11
Using hana 1.3.7
Using hashie 5.0.0
Using highline 2.1.0
Using hkdf 1.0.0
Using http_accept_language 2.1.1
Fetching image_size 3.2.0
Using htmlentities 4.3.4
Using in_threads 1.6.0
Using progress 3.6.0
Using json 2.6.3
Fetching uri_template 0.7.0
Installing uri_template 0.7.0
Installing image_size 3.2.0
Fetching jwt 2.6.0
Installing jwt 2.6.0
Using kgio 2.11.4
Fetching libv8-node 16.10.0.0 (x86_64-linux)
Using method_source 1.0.0
Fetching thor 1.2.1
Installing thor 1.2.1
Fetching zeitwerk 2.6.6
Installing zeitwerk 2.6.6
Using logstash-event 1.2.02
Fetching logster 2.11.3
Installing logster 2.11.3
Using lru_redux 1.1.0
Using lz4-ruby 0.3.3
Using maxminddb 0.1.22
Using memory_profiler 1.0.1
Fetching redis 4.8.0
Installing redis 4.8.0
Using mini_sql 1.4.0
Using multi_json 1.15.0
Using multi_xml 0.6.0
Using mustache 1.1.1
Using uri 0.12.2
Fetching nio4r 2.5.8
Installing nio4r 2.5.8 with native extensions
Installing libv8-node 16.10.0.0 (x86_64-linux)
Fetching version_gem 1.1.1
Installing version_gem 1.1.1
Fetching oj 3.13.14
Installing oj 3.13.14 with native extensions
Using optimist 3.0.1
Fetching pg 1.4.5
Installing pg 1.4.5 with native extensions
Fetching r2 0.2.7
Installing r2 0.2.7
Fetching raindrops 0.20.0
Installing raindrops 0.20.0 with native extensions
Using rchardet 1.8.0
Using rexml 3.2.5
Using rinku 2.0.6
Using rotp 6.2.2
Using rqrcode_core 1.2.0
Using rubyzip 2.3.2
Fetching tilt 2.0.11
Installing tilt 2.0.11
Using sshkey 2.0.0
Fetching stackprof 0.2.23
Installing stackprof 0.2.23 with native extensions
Using unf_ext 0.0.8.2
Using webrick 1.7.0
Fetching xorcist 1.1.3
Installing xorcist 1.1.3 with native extensions
Fetching nokogiri 1.14.2 (x86_64-linux)
Installing nokogiri 1.14.2 (x86_64-linux)
Using mail 2.8.0.edge from https://github.com/discourse/mail.git (at main@5b700fc)
Using net-protocol 0.2.1
Fetching addressable 2.8.1
Installing addressable 2.8.1
Using aws-sigv4 1.5.0
Fetching rack-test 2.0.2
Installing rack-test 2.0.2
Using request_store 1.5.1
Fetching message_bus 4.3.1
Installing message_bus 4.3.1
Fetching rack-mini-profiler 3.0.0
Installing rack-mini-profiler 3.0.0
Fetching rack-protection 3.0.5
Installing rack-protection 3.0.5
Fetching i18n 1.12.0
Installing i18n 1.12.0
Fetching tzinfo 2.0.5
Installing tzinfo 2.0.5
Fetching sprockets 3.7.2
Installing sprockets 3.7.2
Fetching ecma-re-validator 0.4.0
Installing ecma-re-validator 0.4.0
Using uglifier 4.2.0
Fetching faraday 2.7.2
Installing faraday 2.7.2
Using mini_suffix 0.3.3
Fetching sassc 2.0.1
Installing sassc 2.0.1 with native extensions
Using omniauth 1.9.2
Fetching image_optim 0.31.2
Installing image_optim 0.31.2
Using pry 0.14.2
Using logstash-logger 0.26.1
Fetching sidekiq 6.5.8
Installing sidekiq 6.5.8
Fetching redis-namespace 1.9.0
Installing redis-namespace 1.9.0
Using net-http 0.3.2
Fetching mini_racer 0.6.3
Installing mini_racer 0.6.3 with native extensions
Using oauth-tty 1.0.5
Using snaky_hash 2.0.1
Fetching bootsnap 1.15.0
Installing bootsnap 1.15.0 with native extensions
Using rbtrace 0.4.14
Fetching puma 6.0.2
Installing puma 6.0.2 with native extensions
Fetching rqrcode 2.1.2
Installing rqrcode 2.1.2
Using rss 0.2.9
Using unf 0.1.4
Fetching loofah 2.19.1
Installing loofah 2.19.1
Using ruby-readability 0.7.0
Fetching sanitize 6.0.0
Installing sanitize 6.0.0
Fetching net-imap 0.3.1
Installing net-imap 0.3.1
Using net-pop 0.1.2
Using net-smtp 0.3.3
Fetching css_parser 1.13.0
Installing css_parser 1.13.0
Using aws-sdk-core 3.130.2
Fetching activesupport 7.0.4.3
Installing activesupport 7.0.4.3
Fetching json_schemer 0.2.23
Installing json_schemer 0.2.23
Fetching faraday-retry 2.0.0
Installing faraday-retry 2.0.0
Using oauth2 1.4.11
Using pry-byebug 3.10.1
Using pry-rails 0.3.9
Fetching mini_scheduler 0.15.0
Installing mini_scheduler 0.15.0
Using unicorn 6.1.0
Using oauth 1.1.0
Fetching rails-html-sanitizer 1.5.0
Installing rails-html-sanitizer 1.5.0
Using aws-sdk-kms 1.56.0
Using aws-sdk-sns 1.53.0
Fetching rails-dom-testing 2.0.3
Installing rails-dom-testing 2.0.3
Fetching globalid 1.0.1
Installing globalid 1.0.1
Fetching activemodel 7.0.4.3
Installing activemodel 7.0.4.3
Using omniauth-oauth2 1.7.3
Using omniauth-oauth 1.2.0
Using aws-sdk-s3 1.114.0
Fetching actionview 7.0.4.3
Installing actionview 7.0.4.3
Fetching activejob 7.0.4.3
Installing activejob 7.0.4.3
Using active_model_serializers 0.8.4
Fetching activerecord 7.0.4.3
Installing activerecord 7.0.4.3
Using omniauth-facebook 9.0.0
Using omniauth-github 1.4.0
Using omniauth-google-oauth2 0.8.2
Using omniauth-twitter 1.4.0
Fetching actionpack 7.0.4.3
Installing actionpack 7.0.4.3
Using actionview_precompiler 0.2.3
Using discourse-seed-fu 2.3.12
Fetching actionmailer 7.0.4.3
Installing actionmailer 7.0.4.3
Fetching railties 7.0.4.3
Installing railties 7.0.4.3
Using sprockets-rails 3.4.2
Using lograge 0.12.0
Fetching rails_failover 0.8.1
Fetching rails_multisite 4.0.1
Installing rails_multisite 4.0.1
Installing rails_failover 0.8.1
Fetching openssl-signature_algorithm 1.2.1
Using web-push 3.0.0
Installing openssl-signature_algorithm 1.2.1
Using cose 1.3.0
Fetching sassc-rails 2.1.2
Installing sassc-rails 2.1.2
Bundle complete! 135 Gemfile dependencies, 171 gems now installed.
Gems in the groups 'development' and 'test' were not installed.
Bundled gems are installed into `./vendor/bundle`
Post-install message from image_optim:
Rails image assets optimization is extracted into image_optim_rails gem
You can safely remove `config.assets.image_optim = false` if you are not going to use that gem

I, [2023-07-04T08:40:20.585621 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all'
I, [2023-07-04T08:40:24.327439 #1]  INFO -- : checking out compatible docker_manager version: 1b2d7eb0369155b6442b09adfb17b8942c04b093
HEAD is now at 1b2d7eb Bump minimal versions

I, [2023-07-04T08:40:24.327817 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
102:M 04 Jul 2023 08:40:28.803 * 100 changes in 300 seconds. Saving...
102:M 04 Jul 2023 08:40:28.804 * Background saving started by pid 2319
2319:C 04 Jul 2023 08:40:29.127 * DB saved on disk
2319:C 04 Jul 2023 08:40:29.128 * Fork CoW for RDB: current 1 MB, peak 1 MB, average 1 MB
102:M 04 Jul 2023 08:40:29.210 * Background saving terminated with success
I, [2023-07-04T08:40:29.966284 #1]  INFO -- :
I, [2023-07-04T08:40:29.967083 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile'
- Building
- Building
- building...
- cleaning up
- cleaning up
Build Error (broccoli-persistent-filter:Babel > [Babel: @ember/test-helpers]) in @ember/test-helpers/-internal/build-registry.js

[BABEL]: --- PLACEHOLDER PACKAGE ---
This @babel/plugin-proposal-private-property-in-object version is not meant to
be imported. Something is importing
@babel/plugin-proposal-private-property-in-object without declaring it in its
dependencies (or devDependencies) in the package.json file.
Add "@babel/plugin-proposal-private-property-in-object" to your devDependencies
to work around this error. This will make this message go away.
 (While processing: /var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/index.js)Error: [BABEL]: --- PLACEHOLDER PACKAGE ---
This @babel/plugin-proposal-private-property-in-object version is not meant to
be imported. Something is importing
@babel/plugin-proposal-private-property-in-object without declaring it in its
dependencies (or devDependencies) in the package.json file.
Add "@babel/plugin-proposal-private-property-in-object" to your devDependencies
to work around this error. This will make this message go away.
 (While processing: /var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/index.js)
    at Object.<anonymous> (/var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/node_modules/@babel/plugin-proposal-private-property-in-object/lib/index.js:28:7)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/available-plugins.js:62:46)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/filter-items.js:11:25)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/var/www/discourse/app/assets/javascripts/node_modules/@babel/preset-env/lib/index.js:16:20)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)


Stack Trace and Error Report: /tmp/error.dump.62bb2ff34bdbec58308fd7d5b2fab0f6.log
error Command failed with exit code 1.
I, [2023-07-04T08:40:44.826892 #1]  INFO -- : Checking 'Video Upload' for 'default'... up to date
yarn run v1.22.19
$ /var/www/discourse/app/assets/javascripts/node_modules/.bin/ember build -prod
WARNING: Node v18.16.1 is not tested against Ember CLI on your platform. We recommend that you use the most-recent "Active LTS" version of Node.js. See https://git.io/v7S5n for details.
Environment: production
cleaning up...
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

I, [2023-07-04T08:40:44.827572 #1]  INFO -- : Terminating async processes
I, [2023-07-04T08:40:44.827621 #1]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 41
I, [2023-07-04T08:40:44.827734 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 102
102:signal-handler (1688460044) Received SIGTERM scheduling shutdown...
2023-07-04 08:40:44.827 UTC [41] LOG:  received fast shutdown request
102:M 04 Jul 2023 08:40:44.856 # User requested shutdown...
102:M 04 Jul 2023 08:40:44.856 * Saving the final RDB snapshot before exiting.
2023-07-04 08:40:44.883 UTC [41] LOG:  aborting any active transactions
2023-07-04 08:40:44.886 UTC [41] LOG:  background worker "logical replication launcher" (PID 50) exited with exit code 1
2023-07-04 08:40:44.887 UTC [45] LOG:  shutting down
102:M 04 Jul 2023 08:40:44.978 * DB saved on disk
102:M 04 Jul 2023 08:40:44.978 # Redis is now ready to exit, bye bye...
2023-07-04 08:40:45.023 UTC [41] LOG:  database system is shut down


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' failed with return #<Process::Status: pid 2320 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
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.
64eb105c2de1517c880ea75102bf870c657542c35141dbec0fca357d33911198
==================== END REBUILD LOG ====================
Failed to rebuild app.

Checking your domain name . . .

Connection to redacted succeeded.
You should probably remove any non-standard plugins and rebuild.
Attempting to restart existing container. . .
x86_64 arch detected.

starting up existing container
+ /usr/bin/docker start app
Error response from daemon: driver failed programming external connectivity on endpoint app (dc0e7be2e9a1b8644d73adf1e327236bdb49650ec05388fa81eb665e1ac1316f): Error starting userland proxy: listen tcp 0.0.0.0:443: listen: address already in use
Error: failed to start containers: app
Failed to restart the container.


==================== PLUGINS ====================
          - git clone https://github.com/discourse/docker_manager.git

No non-official plugins detected.

See https://github.com/discourse/discourse/blob/main/lib/plugin/metadata.rb for the official list.

========================================




Discourse version at redacted: NOT FOUND
Discourse version at localhost: NOT FOUND


==================== MEMORY INFORMATION ====================
RAM (MB): 3084

              total        used        free      shared  buff/cache   available
Mem:           3012         416        1648           6         947        2401
Swap:           511         117         394

==================== DISK SPACE CHECK ====================
---------- OS Disk Space ----------
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        26G   20G  5.1G  80% /

==================== DISK INFORMATION ====================
Disk /dev/vda: 26 GiB, 27917287424 bytes, 54525952 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xf849ba6e

Device     Boot Start      End  Sectors Size Id Type
/dev/vda1        2048 54525951 54523904  26G 83 Linux

==================== END DISK INFORMATION ====================

==================== MAIL TEST ====================
For a robust test, get an address from http://www.mail-tester.com/
Or just send a test message to yourself.
Email address for mail test? ('n' to skip) [redacted]: Sending mail to redacted. . .
Error response from daemon: Container 91601890406d42c06076f4468dfcc196af018179f6bc970a6983feb296ef00c5 is not running

Replacing: SMTP_PASSWORD
Replacing: LETSENCRYPT_ACCOUNT_EMAIL
Replacing: DEVELOPER_EMAILS
Replacing: DISCOURSE_DB_PASSWORD
Replacing: Sending mail to

==================== DONE! ====================

Thereā€™s only the default theme (I think, itā€™s weirdly named ā€œMigrated from Site Textā€ and was created by system) with 3 additional components (Disco TOC, Sick - Gallery Component and Video Upload). I tried disabling these components and rebuilt, but got the same error.

Before my change in base_store.rb it did start the app but accessing the forum from a browser resulted in the Oops error 500, with the syntax error in the log.

With the change in base_store.rb the forum seems to be working fine. I just canā€™t rebuild it. The dashboard says Iā€™m on the latest version: 3.0.4 (cec7c05dae). And when I click on the upgrade link it says I should upgrade using ssh. My /var/discourse is at commit 984d5495edfa8af028ab6809407af817d555125c which seems to be the most recent one, so it probably just says that because the app hasnā€™t been rebuilt on this commit.

Out of curiosity, how are you installing plugins through the browser interface?

1 Like

I think mixed up plugins and theme components. Only theme components were installed through the browser interface.

2 Likes

Ah - this makes things slightly different from usual, I think, as almost all installations run tests-passed. See Why does Discourse always install ā€œbetaā€ versions by default?

2 Likes

Thanks for reporting the issue @sigmike. The ruby version issue will be fixed by a rebuild, so our main objective here should be to get the rebuild to run to completion.

I was able to reproduce the Build Error on a fresh stable-branch installation. It looks like yarn (the JS package manager we use) isnā€™t cleanly downgrading the workspace from the pre-installed 'tests-passed' packages to the versions required by the stable branch.

In the medium term we aim to switch away from using yarn as a package manager. So for now, Iā€™ve added a workaround to the build process which will reset the node_modules directory when doing a rebuild for non-tests-passed installs. If you try rebuilding again, things should work much better.

Let us know how it goes!

9 Likes

That fixed the rebuild, thank you.

It looks like the test-passed version is actually more battle-tested, and rebuilds would also be faster, so Iā€™ll probably switch to that. The site has been running on stable since 2016 without problems though.

5 Likes

IMO with stable it should be possible to stick to the same base image for an entire release cycle, this is the first time that was made impossible (because of that single line which requires Ruby 3.2).

1 Like

Unfortunately we canā€™t keep the base image static for 6-12 months. Packages installed in the docker image get security updates, and we have to get those rolled out to people on the stable branch.

In this instance we had a choice between creating and maintaining a totally separate ā€˜Ruby 3.1ā€™ image for the stable branch, or backporting small tweaks so that the stable branch would run on the latest image. We chose the latter because it was less work and less risk. It means that everyone is using the same image that we rigorously test and deploy on our hosting.

6 Likes