μ—…λ°μ΄νŠΈ = πŸ’€

그건 곡개적으둜 ν‘œμ‹œν•˜μ§€ μ•ŠκΈ°λ₯Ό μ›ν•˜λŠ” 것이 무엇인지, 그리고 λ¦¬λΉŒλ“œ μ‹œ μ‹€μ œλ‘œ κΈ°λ‘λ˜λŠ” 것이 무엇인지에 따라 λ‹¬λΌμ§ˆ 것 κ°™μŠ΅λ‹ˆλ‹€.

λ‘œκ·Έμ„ ν™•μΈν•˜μ§€ λͺ»ν–ˆκΈ° λ•Œλ¬Έμ— λ™μΌν•œ 상황인지 ν™•μ‹€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. Discourse μ—…λ°μ΄νŠΈλ₯Ό μ•Œλ €μ£ΌλŠ” 이메일을 받은 ν›„ μ‹œλ„ν•΄ λ³΄μ•˜μŠ΅λ‹ˆλ‹€. Docker Manager의 μ—…λ°μ΄νŠΈλŠ” 잘 μž‘λ™ν–ˆμ§€λ§Œ, Discourse의 경우 UIμ—μ„œ μ—…λ°μ΄νŠΈ μ§„ν–‰ λ‘œκ·Έκ°€ μ „ν˜€ μ§„ν–‰λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.

μ„œλ²„μ— SSH둜 접속할 수 μ—†μ—ˆκΈ° λ•Œλ¬Έμ— μΈμŠ€ν„΄μŠ€(AWS Lightsail)λ₯Ό λͺ…μ‹œμ μœΌλ‘œ μ€‘μ§€ν–ˆμŠ΅λ‹ˆλ‹€.
κ·Έ ν›„ rebuild λͺ…령을 μ‹€ν–‰ν–ˆκ³  μ›Ήμ‚¬μ΄νŠΈλŠ” μ •μƒμ μœΌλ‘œ λ³΅κ΅¬λ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ‹€μ‹œ μ—…λ°μ΄νŠΈλ₯Ό μ‹œλ„ν–ˆμ§€λ§Œ λ™μΌν•œ λ¬Έμ œκ°€ λ°˜λ³΅λ˜μ—ˆμŠ΅λ‹ˆλ‹€. κ²°κ΅­ 백업을 λ‹€μš΄λ‘œλ“œν•˜μ—¬ DigitalOcean λ“œλ‘­λ ›μ— λ³΅κ΅¬ν–ˆμŠ΅λ‹ˆλ‹€.

AWSλ₯Ό κ°€μ§€κ³  μžˆλŠ”λ°, UIμ—μ„œ 무엇을 ν•  수 μžˆλŠ”μ§€ μ•ˆλ‚΄ν•΄ μ£Όμ‹œκ² μ–΄μš”?

그리고, AWSλŠ” κ°€μ§€κ³  μžˆμ§€λ§Œ 사싀은 μ‚¬μš©ν•˜λ©΄ μ•ˆ λ˜λŠ”λ°, 제 μ§κΈ‰μœΌλ‘œλŠ” μ’€ λ„ˆλ¬΄ 높은 μˆ˜μ€€μ΄λΌμ„œβ€¦

사싀은…

λ‘˜ λ‹€ κ°€μ§€κ³  μžˆμ–΄μš”?

이 μ£Όμ œμ™€ 관련이 μ—†λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 단, 이 Discourse μΈμŠ€ν„΄μŠ€λ₯Ό ν˜ΈμŠ€νŒ…ν•˜λŠ” 데 AWSλ₯Ό μ‚¬μš©ν•˜λŠ” 경우λ₯Ό μ œμ™Έν•˜κ³ λŠ”μš”.

λ„€, DO와 AWS Lightsail의 가격이 κ½€ λΉ„μŠ·ν•©λ‹ˆλ‹€.

λ„€, 이 μ‚¬μ΄νŠΈλŠ” AWSλ₯Ό μ‚¬μš©ν•˜κ³  μžˆμ§€λ§Œ 제 선택은 μ•„λ‹ˆμ—ˆμŠ΅λ‹ˆλ‹€. DO(DigitalOcean)λ₯Ό μ‚¬μš©ν•œλ‹€λ©΄ μ’€ 더 λ‚˜μ€ κ²°κ³Όλ₯Ό 얻을 수 μžˆμ„ 것 κ°™μ§€λ§Œ, μ†”μ§νžˆ κ°„νŽΈν•œ cPanel ν˜ΈμŠ€νŒ…μ΄ 많이 κ·Έλ¦¬μ›λ‹ˆλ‹€.

도와쀄 수 μžˆλŠ” μ‚¬λžŒμ„ @둜 ν˜ΈμΆœν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€

μƒˆλ‘œ λΉŒλ“œλ₯Ό μ‹œλ„ν•΄ λ΄€λŠ”λ°λ„ μ—¬μ „νžˆ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€

둜그 상세 정보
ENTERλ₯Ό 눌러 계속 μ§„ν–‰ν•˜κ±°λ‚˜, 'n'을 눌러 λ‹€μ‹œ μ‹œλ„ν•˜κ±°λ‚˜, Ctrl+Cλ₯Ό 눌러 μ’…λ£Œ: 
letsencrypt.ssl.template.yml ν™œμ„±ν™”λ¨

./discourse-setup: line 782: [: too many arguments

Configuration file at containers/app.yml updated successfully!

Updates successful. Rebuilding in 5 seconds.
Building app
x86_64 arch detected.
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
2.0.20231023-1945: Pulling from discourse/base
Digest: sha256:2b0eb484d20888cc2daadb690dcfa73522105650c1420212e99345a36a424d77
Status: Image is up to date for discourse/base:2.0.20231023-1945
docker.io/discourse/base:2.0.20231023-1945
/usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2023-11-15T20:23:33.778661 #1]  INFO -- : Reading from stdin
I, [2023-11-15T20:23:33.783653 #1]  INFO -- : > locale-gen $LANG && update-locale
I, [2023-11-15T20:23:33.815682 #1]  INFO -- : Generating locales (this might take a while)...
Generation complete.

I, [2023-11-15T20:23:33.815830 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2023-11-15T20:23:33.818388 #1]  INFO -- : 
I, [2023-11-15T20:23:33.818819 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2023-11-15T20:23:33.821590 #1]  INFO -- : 
I, [2023-11-15T20:23:33.821955 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2023-11-15T20:23:33.824366 #1]  INFO -- : 
I, [2023-11-15T20:23:33.824727 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2023-11-15T20:23:33.826892 #1]  INFO -- : 
I, [2023-11-15T20:23:33.827243 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2023-11-15T20:23:33.829225 #1]  INFO -- : 
I, [2023-11-15T20:23:33.829583 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2023/11/15 20:23:33 socat[19] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No such file or directory
I, [2023-11-15T20:23:33.834327 #1]  INFO -- : 
I, [2023-11-15T20:23:33.834591 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2023-11-15T20:23:33.837137 #1]  INFO -- : 
I, [2023-11-15T20:23:33.837345 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2023-11-15T20:23:33.839872 #1]  INFO -- : 
I, [2023-11-15T20:23:33.840069 #1]  INFO -- : > mkdir -p /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-11-15T20:23:33.842293 #1]  INFO -- : 
I, [2023-11-15T20:23:33.842697 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-11-15T20:23:33.844803 #1]  INFO -- : 
I, [2023-11-15T20:23:33.849181 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown: 
I, [2023-11-15T20:23:33.853460 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown: 
I, [2023-11-15T20:23:33.857797 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown: 
I, [2023-11-15T20:23:33.861968 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown: 
I, [2023-11-15T20:23:33.862415 #1]  INFO -- : > chown -R root /var/lib/postgresql/13/main
I, [2023-11-15T20:23:36.292770 #1]  INFO -- : 
I, [2023-11-15T20:23:36.293048 #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-11-15T20:23:36.295668 #1]  INFO -- : 
I, [2023-11-15T20:23:36.295731 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2023-11-15T20:23:36.308771 #1]  INFO -- : 
I, [2023-11-15T20:23:36.309018 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2023-11-15T20:23:36.311340 #1]  INFO -- : 
I, [2023-11-15T20:23:36.311723 #1]  INFO -- : > /root/upgrade_postgres
I, [2023-11-15T20:23:36.316650 #1]  INFO -- : 
I, [2023-11-15T20:23:36.316879 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2023-11-15T20:23:36.318889 #1]  INFO -- : 
I, [2023-11-15T20:23:36.319372 #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-11-15T20:23:36.320017 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:23:36.320529 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:23:36.321689 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:23:36.323888 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:23:36.325107 #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-11-15T20:23:36.326139 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2023-11-15T20:23:36.328748 #1]  INFO -- : 
I, [2023-11-15T20:23:36.329232 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:23:36.329604 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:23:36.330887 #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-11-15T20:23:36.331974 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/13/main/pg_hba.conf
I, [2023-11-15T20:23:36.332410 #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-11-15T20:23:36.332864 #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-11-15T20:23:36.333826 #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-11-15T20:23:36.335317 #1]  INFO -- : > sleep 5
2023-11-15 20:23:36.408 UTC [42] LOG:  starting PostgreSQL 13.12 (Debian 13.12-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit
2023-11-15 20:23:36.409 UTC [42] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2023-11-15 20:23:36.409 UTC [42] LOG:  listening on IPv6 address "::", port 5432
2023-11-15 20:23:36.415 UTC [42] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2023-11-15 20:23:36.424 UTC [45] LOG:  database system was shut down at 2023-11-15 20:17:33 UTC
2023-11-15 20:23:36.432 UTC [42] LOG:  database system is ready to accept connections
I, [2023-11-15T20:23:41.338590 #1]  INFO -- : 
I, [2023-11-15T20:23:41.339064 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
2023-11-15 20:23:41.387 UTC [55] postgres@postgres ERROR:  database "discourse" already exists
2023-11-15 20:23:41.387 UTC [55] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: error: database creation failed: ERROR:  database "discourse" already exists
I, [2023-11-15T20:23:41.389772 #1]  INFO -- : 
I, [2023-11-15T20:23:41.390413 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2023-11-15 20:23:41.436 UTC [59] postgres@discourse ERROR:  role "discourse" already exists
2023-11-15 20:23:41.436 UTC [59] postgres@discourse STATEMENT:  create user discourse;
ERROR:  role "discourse" already exists
I, [2023-11-15T20:23:41.438584 #1]  INFO -- : 
I, [2023-11-15T20:23:41.439178 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2023-11-15T20:23:41.482178 #1]  INFO -- : GRANT

I, [2023-11-15T20:23:41.482563 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
I, [2023-11-15T20:23:41.525151 #1]  INFO -- : ALTER SCHEMA

I, [2023-11-15T20:23:41.525709 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2023-11-15T20:23:41.570825 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:23:41.571445 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2023-11-15T20:23:41.614314 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:23:41.614872 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists vector;"'
NOTICE:  extension "vector" already exists, skipping
I, [2023-11-15T20:23:41.662289 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:23:41.662806 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2023-11-15T20:23:41.705082 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:23:41.705674 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2023-11-15T20:23:41.748766 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:23:41.749341 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists vector;"'
NOTICE:  extension "vector" already exists, skipping
I, [2023-11-15T20:23:41.792181 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:23:41.792830 #1]  INFO -- : > sudo -u postgres psql discourse
I, [2023-11-15T20:23:41.794274 #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-11-15T20:23:41.841696 #1]  INFO -- : File > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2023-11-15T20:23:41.844339 #1]  INFO -- : File > /var/spool/cron/crontabs/postgres  chmod:   chown: 
I, [2023-11-15T20:23:41.844608 #1]  INFO -- : > echo postgres installed!
I, [2023-11-15T20:23:41.846555 #1]  INFO -- : postgres installed!

I, [2023-11-15T20:23:41.850996 #1]  INFO -- : File > /etc/service/redis/run  chmod: +x  chown: 
I, [2023-11-15T20:23:41.855379 #1]  INFO -- : File > /etc/service/redis/log/run  chmod: +x  chown: 
I, [2023-11-15T20:23:41.859630 #1]  INFO -- : File > /etc/runit/3.d/10-redis  chmod: +x  chown: 
I, [2023-11-15T20:23:41.859955 #1]  INFO -- : Replacing daemonize yes with  in /etc/redis/redis.conf
I, [2023-11-15T20:23:41.860717 #1]  INFO -- : Replacing (?-mix:^pidfile.*$) with  in /etc/redis/redis.conf
I, [2023-11-15T20:23:41.861326 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2023-11-15T20:23:41.863826 #1]  INFO -- : 
I, [2023-11-15T20:23:41.864372 #1]  INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2023-11-15T20:23:41.865097 #1]  INFO -- : Replacing (?-mix:^bind .*$) with  in /etc/redis/redis.conf
I, [2023-11-15T20:23:41.866593 #1]  INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2023-11-15T20:23:41.867908 #1]  INFO -- : Replacing (?-mix:^protected-mode yes) with protected-mode no in /etc/redis/redis.conf
I, [2023-11-15T20:23:41.869346 #1]  INFO -- : Replacing # io-threads 4 with io-threads $redis_io_threads in /etc/redis/redis.conf
I, [2023-11-15T20:23:41.870734 #1]  INFO -- : > echo redis installed
I, [2023-11-15T20:23:41.872714 #1]  INFO -- : redis installed

I, [2023-11-15T20:23:41.873115 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2023-11-15T20:23:41.877913 #1]  INFO -- : logfile ""

I, [2023-11-15T20:23:41.878328 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-11-15T20:23:41.879792 #1]  INFO -- : > sleep 10
111:C 15 Nov 2023 20:23:41.889 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
111:C 15 Nov 2023 20:23:41.889 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=111, just started
111:C 15 Nov 2023 20:23:41.889 # Configuration loaded
111:M 15 Nov 2023 20:23:41.890 * monotonic clock: POSIX clock_gettime
111:M 15 Nov 2023 20:23:41.891 * Running mode=standalone, port=6379.
111:M 15 Nov 2023 20:23:41.891 # Server initialized
111:M 15 Nov 2023 20:23:41.891 * Loading RDB produced by version 7.0.7
111:M 15 Nov 2023 20:23:41.891 * RDB age 368 seconds
111:M 15 Nov 2023 20:23:41.891 * RDB memory usage when created 14.33 Mb
111:M 15 Nov 2023 20:23:41.931 * Done loading RDB, keys loaded: 1281, keys expired: 0.
111:M 15 Nov 2023 20:23:41.931 * DB loaded from disk: 0.040 seconds
111:M 15 Nov 2023 20:23:41.931 * Ready to accept connections
I, [2023-11-15T20:23:51.882601 #1]  INFO -- : 
I, [2023-11-15T20:23:51.882854 #1]  INFO -- : > thpoff echo "thpoff is installed!"
I, [2023-11-15T20:23:51.887749 #1]  INFO -- : thpoff is installed!

I, [2023-11-15T20:23:51.888109 #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-11-15T20:23:51.951668 #1]  INFO -- : 
I, [2023-11-15T20:23:51.952099 #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-11-15T20:23:52.015882 #1]  INFO -- : 
I, [2023-11-15T20:23:52.016234 #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-11-15T20:23:52.078461 #1]  INFO -- : 
I, [2023-11-15T20:23:52.078825 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2023-11-15T20:23:52.081157 #1]  INFO -- : 
I, [2023-11-15T20:23:52.083922 #1]  INFO -- : File > /etc/cron.d/anacron  chmod:   chown: 
I, [2023-11-15T20:23:52.088497 #1]  INFO -- : File > /etc/runit/1.d/copy-env  chmod: +x  chown: 
I, [2023-11-15T20:23:52.092961 #1]  INFO -- : File > /etc/service/unicorn/run  chmod: +x  chown: 
I, [2023-11-15T20:23:52.097360 #1]  INFO -- : File > /etc/service/nginx/run  chmod: +x  chown: 
I, [2023-11-15T20:23:52.101787 #1]  INFO -- : File > /etc/runit/3.d/01-nginx  chmod: +x  chown: 
I, [2023-11-15T20:23:52.106234 #1]  INFO -- : File > /etc/runit/3.d/02-unicorn  chmod: +x  chown: 
I, [2023-11-15T20:23:52.106357 #1]  INFO -- : Replacing # postgres with sv start postgres || exit 1 in /etc/service/unicorn/run
I, [2023-11-15T20:23:52.106884 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-11-15T20:23:52.109632 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git reset --hard
138:C 15 Nov 2023 20:23:52.117 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
138:C 15 Nov 2023 20:23:52.117 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=138, just started
138:C 15 Nov 2023 20:23:52.118 # Configuration loaded
138:M 15 Nov 2023 20:23:52.119 * monotonic clock: POSIX clock_gettime
138:M 15 Nov 2023 20:23:52.119 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
138:M 15 Nov 2023 20:23:52.120 # Failed listening on port 6379 (TCP), aborting.
Updating files: 100% (33858/33858), done.
I, [2023-11-15T20:23:54.825365 #1]  INFO -- : HEAD is now at 043b4a418 FIX: replaces data-tooltip usage by <DTooltip /> (#24062)

I, [2023-11-15T20:23:54.825518 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2023-11-15T20:23:54.951294 #1]  INFO -- : 
I, [2023-11-15T20:23:54.951411 #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 tests-passed
      git fetch --depth 1 origin tests-passed
  else
      git fetch --tags --prune-tags --prune --force origin
  fi
'
From https://github.com/discourse/discourse
 - [deleted]             (none)     -> origin/0-obscuring
 - [deleted]             (none)     -> origin/autoimport-cleanup
 - [deleted]             (none)     -> origin/category-bullet-only
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.4.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.8.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.6.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.5.2
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.4.2
 - [deleted]             (none)     -> origin/dev-upgrade-reject-reason-reviewable-modal
 - [deleted]             (none)     -> origin/dev/ability-to-collect-stats-without-public-exposing
 - [deleted]             (none)     -> origin/dev/re-enable-minio-specs
 - [deleted]             (none)     -> origin/discovery-named-outlets
 - [deleted]             (none)     -> origin/feature/theme-settings-migration
 - [deleted]             (none)     -> origin/footnote-plugin
 - [deleted]             (none)     -> origin/metadata-update
 - [deleted]             (none)     -> origin/modal-ux
 - [deleted]             (none)     -> origin/neil-2
 - [deleted]             (none)     -> origin/spoiler-plugin
   043b4a418..a7ff465ca  main                  -> origin/main
 * [new branch]          0-no-attrs            -> origin/0-no-attrs
 * [new branch]          0-no-decorator        -> origin/0-no-decorator
 * [new branch]          0-picker-gjs          -> origin/0-picker-gjs
   80cf0e58b..76b7cfc4e  0-router-lint         -> origin/0-router-lint
   1e7ddf312..d9cf43b13  0-router-service      -> origin/0-router-service
 * [new branch]          add-custom-emoji-sanitization-clean -> origin/add-custom-emoji-sanitization-clean
 * [new branch]          add-ds-store-to-gitignore -> origin/add-ds-store-to-gitignore
 + 64520a075...ff17131c9 add-new-chat-indicator-preference-only-mentions -> origin/add-new-chat-indicator-preference-only-mentions  (κ°•μ œ μ—…λ°μ΄νŠΈ)
 * [new branch]          add-thumbnails-for-chat-image-uploads -> origin/add-thumbnails-for-chat-image-uploads
 * [new branch]          api-topic-title-decorator -> origin/api-topic-title-decorator
 * [new branch]          chat/direct-messages  -> origin/chat/direct-messages
 * [new branch]          delete-backups-based-on-time-window -> origin/delete-backups-based-on-time-window
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/embroider-02b6d6a7b6 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/embroider-02b6d6a7b6
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/embroider/macros-1.13.3 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/embroider/macros-1.13.3
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.5.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.5.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.9.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.9.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.7.1 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.7.1
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.6.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.6.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.5.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.5.0
 * [new branch]          desktop-noti-translation-cat-tag -> origin/desktop-noti-translation-cat-tag
 * [new branch]          desktop-notification-handlers -> origin/desktop-notification-handlers
 + ee95e6359...346f9d1cd dev/add-new-chat-metrics -> origin/dev/add-new-chat-metrics  (κ°•μ œ μ—…λ°μ΄νŠΈ)
 * [new branch]          dev/cleanup-uploads-job-housekeeping -> origin/dev/cleanup-uploads-job-housekeeping
 * [new branch]          dev/dry-up-user-status-serializers -> origin/dev/dry-up-user-status-serializers
 * [new branch]          dev_watched_words     -> origin/dev_watched_words
 * [new branch]          discourse-location    -> origin/discourse-location
 * [new branch]          extract_stripper      -> origin/extract_stripper
   9a6c6fd5b..8780daeee  feature/bookmark-menu-and-modal-redesign -> origin/feature/bookmark-menu-and-modal-redesign
 * [new branch]          feature/plugin-list-redesign -> origin/feature/plugin-list-redesign
 * [new branch]          feature_watched_words_validation -> origin/feature_watched_words_validation
   43df37774..4393dd37e  filtered-events       -> origin/filtered-events
 * [new branch]          fix_category_drop     -> origin/fix_category_drop
 * [new branch]          full-page             -> origin/full-page
   ce7fb6906..e1c820780  generic-import-latest -> origin/generic-import-latest
 * [new branch]          generic-import-latest-snowflake -> origin/generic-import-latest-snowflake
 * [new branch]          group-approve-unless-trust-level -> origin/group-approve-unless-trust-level
 * [new branch]          homepage-url-handling -> origin/homepage-url-handling
 * [new branch]          image-assets          -> origin/image-assets
 * [new branch]          independent-theme-compiler -> origin/independent-theme-compiler
 * [new branch]          input-text-field-component -> origin/input-text-field-component
 * [new branch]          keyword-site-setting  -> origin/keyword-site-setting
 + bdcc24f96...92e545292 list-wrapper          -> origin/list-wrapper  (κ°•μ œ μ—…λ°μ΄νŠΈ)
   e3636078c..5def32699  mock-chat-index-redesign -> origin/mock-chat-index-redesign
 * [new branch]          poc/auto-after-before-plugin-outlets -> origin/poc/auto-after-before-plugin-outlets
 * [new branch]          poc/insert-before-after-wrapping-outlet -> origin/poc/insert-before-after-wrapping-outlet
 * [new branch]          preload-category-field-fix -> origin/preload-category-field-fix
 * [new branch]          pretty-text-please    -> origin/pretty-text-please
 * [new branch]          remove-regex-custom-field-keys -> origin/remove-regex-custom-field-keys
 * [new branch]          search-rrf-api        -> origin/search-rrf-api
   ef3f41543..34eb4a021  stable                -> origin/stable
 * [new branch]          support-load-more-btn -> origin/support-load-more-btn
 + 76cd2ad87...015e0843e support-search-customizationz -> origin/support-search-customizationz  (κ°•μ œ μ—…λ°μ΄νŠΈ)
 * [new branch]          test-issue-temporary  -> origin/test-issue-temporary
   043b4a418..a7ff465ca  tests-passed          -> origin/tests-passed
 * [new branch]          user-card-content-container-plugin-outlet -> origin/user-card-content-container-plugin-outlet
 * [new branch]          username_cache        -> origin/username_cache
 * [new branch]          ux-add-sorting-params-to-outlet -> origin/ux-add-sorting-params-to-outlet
 * [new branch]          watch-markdown        -> origin/watch-markdown
 t [tag update]          beta                  -> beta
 t [tag update]          latest-release        -> latest-release
 * [new tag]             v3.1.3                -> v3.1.3
 * [new tag]             v3.2.0.beta3          -> v3.2.0.beta3
I, [2023-11-15T20:23:55.893569 #1]  INFO -- : 
I, [2023-11-15T20:23:55.893848 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [[ $(git symbolic-ref --short HEAD) == tests-passed ]] ; then
      git pull
  else
      git -c advice.detachedHead=false checkout tests-passed
  fi
'
'tests-passed' λΆ„κΈ°λ‘œ μ „ν™˜ν–ˆμŠ΅λ‹ˆλ‹€
I, [2023-11-15T20:23:59.241205 #1]  INFO -- : 'tests-passed' λΆ„κΈ°κ°€ 'origin'의 원격 λΆ„κΈ° 'tests-passed'λ₯Ό μΆ”μ ν•˜λ„λ‘ μ„€μ •λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

I, [2023-11-15T20:23:59.241332 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git config user.discourse-version tests-passed
I, [2023-11-15T20:23:59.251520 #1]  INFO -- : 
I, [2023-11-15T20:23:59.251621 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2023-11-15T20:23:59.254773 #1]  INFO -- : 
I, [2023-11-15T20:23:59.254870 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2023-11-15T20:23:59.257791 #1]  INFO -- : 
I, [2023-11-15T20:23:59.257887 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2023-11-15T20:23:59.260938 #1]  INFO -- : 
I, [2023-11-15T20:23:59.261039 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2023-11-15T20:23:59.264014 #1]  INFO -- : 
I, [2023-11-15T20:23:59.264102 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2023-11-15T20:23:59.267448 #1]  INFO -- : 
I, [2023-11-15T20:23:59.267560 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2023-11-15T20:23:59.270609 #1]  INFO -- : 
I, [2023-11-15T20:23:59.270720 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
I, [2023-11-15T20:23:59.274869 #1]  INFO -- : 
I, [2023-11-15T20:23:59.274981 #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-11-15T20:23:59.279167 #1]  INFO -- : 
I, [2023-11-15T20:23:59.279261 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2023-11-15T20:23:59.283613 #1]  INFO -- : 
I, [2023-11-15T20:23:59.283707 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2023-11-15T20:23:59.287866 #1]  INFO -- : 
I, [2023-11-15T20:23:59.287962 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2023-11-15T20:23:59.292308 #1]  INFO -- : 
I, [2023-11-15T20:23:59.292402 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2023-11-15T20:23:59.296501 #1]  INFO -- : 
I, [2023-11-15T20:23:59.296634 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2023-11-15T20:24:00.565009 #1]  INFO -- : 
I, [2023-11-15T20:24:00.565158 #1]  INFO -- : > cd /var/www/discourse && [ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2023-11-15T20:24:00.571283 #1]  INFO -- : 
I, [2023-11-15T20:24:00.571520 #1]  INFO -- : /etc/service/unicorn/run νŒŒμΌμ—μ„œ '# redis'λ₯Ό 'sv start redis || exit 1'둜 λŒ€μ²΄ν•©λ‹ˆλ‹€
I, [2023-11-15T20:24:00.572270 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2023-11-15T20:24:00.575804 #1]  INFO -- : 
I, [2023-11-15T20:24:00.576216 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2023-11-15T20:24:00.578453 #1]  INFO -- : 
I, [2023-11-15T20:24:00.578777 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2023-11-15T20:24:00.581224 #1]  INFO -- : 
I, [2023-11-15T20:24:00.581716 #1]  INFO -- : /etc/nginx/nginx.conf νŒŒμΌμ—μ„œ 'pid /run/nginx.pid;'λ₯Ό 'daemon off;'둜 λŒ€μ²΄ν•©λ‹ˆλ‹€
I, [2023-11-15T20:24:00.582185 #1]  INFO -- : /etc/nginx/conf.d/discourse.conf νŒŒμΌμ—μ„œ '(?m-ix:upstream[^\}]+\})'λ₯Ό 'upstream discourse { server 127.0.0.1:3000; }'둜 λŒ€μ²΄ν•©λ‹ˆλ‹€
I, [2023-11-15T20:24:00.582671 #1]  INFO -- : /etc/nginx/conf.d/discourse.conf νŒŒμΌμ—μ„œ '(?-mix:server_name.+$)'λ₯Ό 'server_name _ ;'둜 λŒ€μ²΄ν•©λ‹ˆλ‹€
I, [2023-11-15T20:24:00.583470 #1]  INFO -- : /etc/nginx/conf.d/discourse.conf νŒŒμΌμ—μ„œ '(?-mix:client_max_body_size.+$)'λ₯Ό 'client_max_body_size $upload_size ;'둜 λŒ€μ²΄ν•©λ‹ˆλ‹€
I, [2023-11-15T20:24:00.584175 #1]  INFO -- : /etc/nginx/nginx.conf νŒŒμΌμ—μ„œ '(?-mix:worker_connections.+$)'λ₯Ό 'worker_connections $nginx_worker_connections ;'둜 λŒ€μ²΄ν•©λ‹ˆλ‹€
I, [2023-11-15T20:24:00.584612 #1]  INFO -- : > echo "done configuring web"
I, [2023-11-15T20:24:00.586483 #1]  INFO -- : μ›Ή μ„€μ • μ™„λ£Œ

I, [2023-11-15T20:24:00.586881 #1]  INFO -- : > cd /var/www/discourse && gem install bundler --conservative -v $(awk '/BUNDLED WITH/ { getline; gsub(/ /,""); print $0 }' Gemfile.lock)
I, [2023-11-15T20:24:00.763879 #1]  INFO -- : 
I, [2023-11-15T20:24:00.763999 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
I, [2023-11-15T20:24:01.793651 #1]  INFO -- : 
I, [2023-11-15T20:24:01.794278 #1]  INFO -- : > cd /var/www/discourse && if [ "tests-passed" != "tests-passed" ]; then
  rm -rf app/assets/javascripts/node_modules
fi
I, [2023-11-15T20:24:01.796953 #1]  INFO -- : 
I, [2023-11-15T20:24:01.797064 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'
warning " > @glint/environment-ember-loose@1.1.0" has unmet peer dependency "@glimmer/component@^1.1.2".
warning " > @glint/environment-ember-template-imports@1.1.0" has unmet peer dependency "ember-template-imports@^3.0.0".
warning Resolution field "unset-value@2.0.1" is incompatible with requested version "unset-value@^1.0.0"
warning Pattern ["wrap-ansi@^7.0.0"] is trying to unpack in the same destination "/home/discourse/.cache/yarn/v6/npm-wrap-ansi-cjs-7.0.0-67e145cff510a6a6984bdf1152911d69d2eb9e43-integrity/node_modules/wrap-ansi-cjs" as pattern ["wrap-ansi-cjs@npm:wrap-ansi@^7.0.0"]. This could result in non-deterministic behavior, skipping.
warning " > discourse-markdown-it@1.0.0" has unmet peer dependency "xss@*".
warning "workspace-aggregator-4bafe2ee-69af-4386-bf35-46ec00fc2275 > discourse > @ember/legacy-built-in-components@0.5.0" has incorrect peer dependency "ember-source@>= 4.8".
warning "workspace-aggregator-4bafe2ee-69af-4386-bf35-46ec00fc2275 > discourse > @uppy/aws-s3@3.0.6" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-4bafe2ee-69af-4386-bf35-46ec00fc2275 > discourse > @uppy/aws-s3-multipart@3.1.3" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-4bafe2ee-69af-4386-bf35-46ec00fc2275 > discourse > @uppy/xhr-upload@3.1.1" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-4bafe2ee-69af-4386-bf35-46ec00fc2275 > discourse-plugins > ember-this-fallback@0.4.0" has unmet peer dependency "ember-source@^3.28.11 || ^4.0.0".
warning "workspace-aggregator-4bafe2ee-69af-4386-bf35-46ec00fc2275 > discourse > @uppy/aws-s3 > @uppy/xhr-upload@3.3.0" has incorrect peer dependency "@uppy/core@^3.2.1".
I, [2023-11-15T20:25:23.675833 #1]  INFO -- : yarn install v1.22.19
[1/5] package.json 검증 쀑...
[2/5] νŒ¨ν‚€μ§€ ν•΄κ²° 쀑...
[3/5] νŒ¨ν‚€μ§€ κ°€μ Έμ˜€λŠ” 쀑...
[4/5] μ˜μ‘΄μ„± 링크 쀑...
[5/5] μƒˆ νŒ¨ν‚€μ§€ λΉŒλ“œ 쀑...
$ yarn --cwd app/assets/javascripts $(node -e 'const argv = JSON.parse(process.env.npm_config_argv).original; const passthrough = [`--frozen-lockfile`, `-s`].filter(arg => argv.includes(arg)); console.log(passthrough.join(` `));')
yarn install v1.22.19
[1/4] νŒ¨ν‚€μ§€ ν•΄κ²° 쀑...
[2/4] νŒ¨ν‚€μ§€ κ°€μ Έμ˜€λŠ” 쀑...
[3/4] μ˜μ‘΄μ„± 링크 쀑...
[4/4] μƒˆ νŒ¨ν‚€μ§€ λΉŒλ“œ 쀑...
$ ./run-patch-package
patch-package 8.0.0
패치 적용 쀑...
babel-plugin-debug-macros@0.3.4 βœ”
content-tag@1.1.2 βœ”
ember-source@3.28.12 βœ”
ember-this-fallback@0.4.0 (1 deprecation-name) βœ”
ember-this-fallback@0.4.0 (2 themes) βœ”
virtual-dom@2.1.1 βœ”
41.76초 λ§Œμ— μ™„λ£Œ.
75.77초 λ§Œμ— μ™„λ£Œ.
yarn cache v1.22.19
성곡: μΊμ‹œ 지움.
5.69초 λ§Œμ— μ™„λ£Œ.

I, [2023-11-15T20:25:23.676512 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle config --local deployment true'
I, [2023-11-15T20:25:23.834473 #1]  INFO -- : 
I, [2023-11-15T20:25:23.834644 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle config --local without "development test"'
I, [2023-11-15T20:25:23.990437 #1]  INFO -- : ν˜„μž¬ "test:development"인 without의 ν˜„μž¬ 둜컬 값을 λŒ€μ²΄ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€

I, [2023-11-15T20:25:23.990548 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle install --retry 3 --jobs 4'
I, [2023-11-15T20:25:36.831323 #1]  INFO -- : https://rubygems.org/μ—μ„œ gem 메타데이터 κ°€μ Έμ˜€λŠ” 쀑.........
rake 13.1.0 κ°€μ Έμ˜€λŠ” 쀑
rake 13.1.0 μ„€μΉ˜ 쀑
concurrent-ruby 1.2.2 μ‚¬μš© 쀑
minitest 5.20.0 μ‚¬μš© 쀑
builder 3.2.4 μ‚¬μš© 쀑
erubi 1.12.0 μ‚¬μš© 쀑
racc 1.7.3 κ°€μ Έμ˜€λŠ” 쀑
crass 1.0.6 μ‚¬μš© 쀑
rack 2.2.8 μ‚¬μš© 쀑
mini_mime 1.1.5 μ‚¬μš© 쀑
date 3.3.4 κ°€μ Έμ˜€λŠ” 쀑
timeout 0.4.1 κ°€μ Έμ˜€λŠ” 쀑
public_suffix 5.0.3 μ‚¬μš© 쀑
aws-eventstream 1.2.0 μ‚¬μš© 쀑
aws-partitions 1.583.0 μ‚¬μš© 쀑
jmespath 1.6.2 μ‚¬μš© 쀑
base64 0.2.0 κ°€μ Έμ˜€λŠ” 쀑
timeout 0.4.1 μ„€μΉ˜ 쀑
base64 0.2.0 μ„€μΉ˜ 쀑
λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 date 3.3.4 μ„€μΉ˜ 쀑
msgpack 1.7.2 μ‚¬μš© 쀑
bundler 2.4.13 μ‚¬μš© 쀑
byebug 11.1.3 μ‚¬μš© 쀑
cbor 0.5.9.6 μ‚¬μš© 쀑
cgi 0.4.0 κ°€μ Έμ˜€λŠ” 쀑
λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 racc 1.7.3 μ„€μΉ˜ 쀑
chunky_png 1.4.0 μ‚¬μš© 쀑
coderay 1.1.3 μ‚¬μš© 쀑
colored2 4.0.0 μ‚¬μš© 쀑
connection_pool 2.4.1 μ‚¬μš© 쀑
openssl 3.2.0 μ‚¬μš© 쀑
cppjieba_rb 0.4.2 μ‚¬μš© 쀑
google-protobuf 3.25.0 (x86_64-linux) κ°€μ Έμ˜€λŠ” 쀑
λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 cgi 0.4.0 μ„€μΉ˜ 쀑
google-protobuf 3.25.0 (x86_64-linux) μ„€μΉ˜ 쀑
diffy 3.4.2 μ‚¬μš© 쀑
digest 3.1.1 μ‚¬μš© 쀑
discourse-fonts 0.0.9 μ‚¬μš© 쀑
email_reply_trimmer 0.1.13 μ‚¬μš© 쀑
excon 0.104.0 μ‚¬μš© 쀑
execjs 2.9.1 μ‚¬μš© 쀑
exifr 1.4.0 μ‚¬μš© 쀑
faraday-net_http 3.0.2 μ‚¬μš© 쀑
ruby2_keywords 0.0.5 μ‚¬μš© 쀑
fast_blank 1.0.1 μ‚¬μš© 쀑
fast_xs 0.8.0 μ‚¬μš© 쀑
fastimage 2.2.7 μ‚¬μš© 쀑
ffi 1.16.3 μ‚¬μš© 쀑
fspath 3.1.2 μ‚¬μš© 쀑
gc_tracer 1.5.1 μ‚¬μš© 쀑
guess_html_encoding 0.0.11 μ‚¬μš© 쀑
hana 1.3.7 μ‚¬μš© 쀑
hashie 5.0.0 μ‚¬μš© 쀑
highline 2.1.0 μ‚¬μš© 쀑
htmlentities 4.3.4 μ‚¬μš© 쀑
http_accept_language 2.1.1 μ‚¬μš© 쀑
image_size 3.3.0 μ‚¬μš© 쀑
in_threads 1.6.0 μ‚¬μš© 쀑
progress 3.6.0 μ‚¬μš© 쀑
json 2.6.3 μ‚¬μš© 쀑
regexp_parser 2.8.2 μ‚¬μš© 쀑
unf_ext 0.0.9 κ°€μ Έμ˜€λŠ” 쀑
λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 unf_ext 0.0.9 μ„€μΉ˜ 쀑
jwt 2.7.1 μ‚¬μš© 쀑
kgio 2.11.4 μ‚¬μš© 쀑
libv8-node 18.16.0.0 (x86_64-linux) μ‚¬μš© 쀑
method_source 1.0.0 μ‚¬μš© 쀑
thor 1.3.0 μ‚¬μš© 쀑
zeitwerk 2.6.12 μ‚¬μš© 쀑
logstash-event 1.2.02 μ‚¬μš© 쀑
logster 2.13.1 κ°€μ Έμ˜€λŠ” 쀑
logster 2.13.1 μ„€μΉ˜ 쀑
lru_redux 1.1.0 μ‚¬μš© 쀑
lz4-ruby 0.3.3 μ‚¬μš© 쀑
maxminddb 0.1.22 μ‚¬μš© 쀑
memory_profiler 1.0.1 μ‚¬μš© 쀑
redis 4.8.1 μ‚¬μš© 쀑
mini_sql 1.5.0 μ‚¬μš© 쀑
multi_json 1.15.0 μ‚¬μš© 쀑
multi_xml 0.6.0 μ‚¬μš© 쀑
mustache 1.1.1 μ‚¬μš© 쀑
uri 0.13.0 κ°€μ Έμ˜€λŠ” 쀑
nio4r 2.5.9 μ‚¬μš© 쀑
version_gem 1.1.3 μ‚¬μš© 쀑
oj 3.16.1 μ‚¬μš© 쀑
optimist 3.1.0 μ‚¬μš© 쀑
pg 1.5.4 μ‚¬μš© 쀑
raindrops 0.20.1 μ‚¬μš© 쀑
rchardet 1.8.0 μ‚¬μš© 쀑
rexml 3.2.6 μ‚¬μš© 쀑
rinku 2.0.6 μ‚¬μš© 쀑
rotp 6.3.0 μ‚¬μš© 쀑
rqrcode_core 1.2.0 μ‚¬μš© 쀑
rubyzip 2.3.2 μ‚¬μš© 쀑
sshkey 3.0.0 μ‚¬μš© 쀑
stackprof 0.2.25 μ‚¬μš© 쀑
i18n 1.14.1 μ‚¬μš© 쀑
tzinfo 2.0.6 μ‚¬μš© 쀑
rack-test 2.1.0 μ‚¬μš© 쀑
request_store 1.5.1 μ‚¬μš© 쀑
message_bus 4.3.8 μ‚¬μš© 쀑
rack-mini-profiler 3.1.1 μ‚¬μš© 쀑
rack-protection 3.1.0 μ‚¬μš© 쀑
https://github.com/rails/sprockets (at 3.x@f4d3dae)μ—μ„œ sprockets 3.7.2 μ‚¬μš© 쀑
addressable 2.8.5 μ‚¬μš© 쀑
aws-sigv4 1.5.0 μ‚¬μš© 쀑
net-protocol 0.2.2 κ°€μ Έμ˜€λŠ” 쀑
uri 0.13.0 μ„€μΉ˜ 쀑
net-protocol 0.2.2 μ„€μΉ˜ 쀑
bootsnap 1.17.0 κ°€μ Έμ˜€λŠ” 쀑
openssl-signature_algorithm 1.3.0 μ‚¬μš© 쀑
sass-embedded 1.66.1 (x86_64-linux-gnu) κ°€μ Έμ˜€λŠ” 쀑
λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 bootsnap 1.17.0 μ„€μΉ˜ 쀑
sass-embedded 1.66.1 (x86_64-linux-gnu) μ„€μΉ˜ 쀑
faraday 2.7.11 μ‚¬μš© 쀑
image_optim 0.31.3 μ‚¬μš© 쀑
mini_suffix 0.3.3 μ‚¬μš© 쀑
omniauth 1.9.2 μ‚¬μš© 쀑
uglifier 4.2.0 μ‚¬μš© 쀑
web-push 3.0.1 κ°€μ Έμ˜€λŠ” 쀑
web-push 3.0.1 μ„€μΉ˜ 쀑
logstash-logger 0.26.1 μ‚¬μš© 쀑
mini_racer 0.8.0 μ‚¬μš© 쀑
pry 0.14.2 μ‚¬μš© 쀑
nokogiri 1.15.4 (x86_64-linux) μ‚¬μš© 쀑
sidekiq 6.5.12 μ‚¬μš© 쀑
redis-namespace 1.11.0 μ‚¬μš© 쀑
activesupport 7.0.7 μ‚¬μš© 쀑
oauth-tty 1.0.5 μ‚¬μš© 쀑
snaky_hash 2.0.1 μ‚¬μš© 쀑
puma 6.4.0 μ‚¬μš© 쀑
rbtrace 0.4.14 μ‚¬μš© 쀑
rqrcode 2.2.0 μ‚¬μš© 쀑
rss 0.3.0 μ‚¬μš© 쀑
tzinfo-data 1.2023.3 μ‚¬μš© 쀑
unicorn 6.1.0 μ‚¬μš© 쀑
aws-sdk-core 3.130.2 μ‚¬μš© 쀑
css_parser 1.16.0 μ‚¬μš© 쀑
net-http 0.4.0 κ°€μ Έμ˜€λŠ” 쀑
net-http 0.4.0 μ„€μΉ˜ 쀑
net-pop 0.1.2 μ‚¬μš© 쀑
net-smtp 0.4.0 μ‚¬μš© 쀑
cose 1.3.0 μ‚¬μš© 쀑
dartsass-ruby 3.0.2 κ°€μ Έμ˜€λŠ” 쀑
dartsass-ruby 3.0.2 μ„€μΉ˜ 쀑
faraday-retry 2.2.0 μ‚¬μš© 쀑
oauth2 1.4.11 μ‚¬μš© 쀑
rails-dom-testing 2.2.0 μ‚¬μš© 쀑
loofah 2.22.0 κ°€μ Έμ˜€λŠ” 쀑
loofah 2.22.0 μ„€μΉ˜ 쀑
globalid 1.2.1 μ‚¬μš© 쀑
activemodel 7.0.7 μ‚¬μš© 쀑
aws-sdk-kms 1.56.0 μ‚¬μš© 쀑
aws-sdk-sns 1.53.0 μ‚¬μš© 쀑
mini_scheduler 0.16.0 μ‚¬μš© 쀑
oauth 1.1.0 μ‚¬μš© 쀑
pry-byebug 3.10.1 μ‚¬μš© 쀑
pry-rails 0.3.9 μ‚¬μš© 쀑
rtlcss 0.2.1 μ‚¬μš© 쀑
ruby-readability 0.7.0 μ‚¬μš© 쀑
sanitize 6.1.0 μ‚¬μš© 쀑
omniauth-oauth2 1.7.3 μ‚¬μš© 쀑
rails-html-sanitizer 1.6.0 μ‚¬μš© 쀑
activejob 7.0.7 μ‚¬μš© 쀑
active_model_serializers 0.8.4 μ‚¬μš© 쀑
activerecord 7.0.7 μ‚¬μš© 쀑
actionview 7.0.7 μ‚¬μš© 쀑
aws-sdk-s3 1.114.0 μ‚¬μš© 쀑
discourse-seed-fu 2.3.12 μ‚¬μš© 쀑
omniauth-facebook 9.0.0 μ‚¬μš© 쀑
omniauth-github 1.4.0 μ‚¬μš© 쀑
omniauth-google-oauth2 0.8.2 μ‚¬μš© 쀑
omniauth-oauth 1.2.0 μ‚¬μš© 쀑
actionpack 7.0.7 μ‚¬μš© 쀑
actionview_precompiler 0.3.0 μ‚¬μš© 쀑
omniauth-twitter 1.4.0 μ‚¬μš© 쀑
railties 7.0.7 μ‚¬μš© 쀑
sprockets-rails 3.4.2 μ‚¬μš© 쀑
lograge 0.14.0 μ‚¬μš© 쀑
rails_failover 2.0.1 μ‚¬μš© 쀑
rails_multisite 5.0.0 μ‚¬μš© 쀑
unf 0.1.4 μ‚¬μš© 쀑
simpleidn 0.2.1 μ‚¬μš© 쀑
json_schemer 2.0.0 μ‚¬μš© 쀑
net-imap 0.4.5 κ°€μ Έμ˜€λŠ” 쀑
net-imap 0.4.5 μ„€μΉ˜ 쀑
mail 2.8.1 μ‚¬μš© 쀑
actionmailer 7.0.7 μ‚¬μš© 쀑
Bundle μ™„λ£Œ! 135개 Gemfile μ˜μ‘΄μ„±, 170개 gem이 μ„€μΉ˜λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
'development' 및 'test' 그룹의 GemsλŠ” μ„€μΉ˜λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.
Bundled gemsλŠ” `./vendor/bundle`에 μ„€μΉ˜λ˜μ—ˆμŠ΅λ‹ˆλ‹€

I, [2023-11-15T20:25:36.831661 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all'
I, [2023-11-15T20:25:39.383171 #1]  INFO -- : 
I, [2023-11-15T20:25:39.383653 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
2023-11-15 20:25:43.361 UTC [716] discourse@discourse ERROR:  관계 "summary_sections"이(κ°€) 이미 μ‘΄μž¬ν•©λ‹ˆλ‹€
2023-11-15 20:25:43.361 UTC [716] discourse@discourse STATEMENT:  CREATE TABLE "summary_sections" ("id" bigserial primary key, "target_id" integer NOT NULL, "target_type" character varying NOT NULL, "content_range" int4range, "summarized_text" character varying NOT NULL, "meta_section_id" integer, "original_content_sha" character varying NOT NULL, "algorithm" character varying NOT NULL, "created_at" timestamp(6) NOT NULL, "updated_at" timestamp(6) NOT NULL)
rake 쀑단됨!
StandardError: 였λ₯˜κ°€ λ°œμƒν•˜μ—¬ 이 λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ 및 이후 λͺ¨λ“  λ§ˆμ΄κ·Έλ ˆμ΄μ…˜μ΄ μ·¨μ†Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€: (StandardError)

PG::DuplicateTable: ERROR:  관계 "summary_sections"이(κ°€) 이미 μ‘΄μž¬ν•©λ‹ˆλ‹€
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:48:in `block (2 levels) in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/dependencies/interlock.rb:41:in `permit_concurrent_loads'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:47:in `block in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:752:in `block in log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:743:in `log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:46:in `execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/schema_statements.rb:326:in `create_table'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:932:in `block in method_missing'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `block in say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:921:in `method_missing'
/var/www/discourse/db/migrate/20230608163854_create_summary_sections_table.rb:5:in `change'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:870:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:854:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:853:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:852:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1046:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1360:in `block in execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:209:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1411:in `ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1359:in `execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `each'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `migrate_without_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1432:in `block in with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1447:in `with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1428:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1117:in `up'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1092:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/tasks/database_tasks.rb:262:in `migrate'
/var/www/discourse/lib/tasks/db.rake:255:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:230:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'

원인:
ActiveRecord::StatementInvalid: PG::DuplicateTable: ERROR:  관계 "summary_sections" already exists (ActiveRecord::StatementInvalid)
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:48:in `block (2 levels) in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/dependencies/interlock.rb:41:in `permit_concurrent_loads'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:47:in `block in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:752:in `block in log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:743:in `log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:46:in `execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/schema_statements.rb:326:in `create_table'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:932:in `block in method_missing'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `block in say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:921:in `method_missing'
/var/www/discourse/db/migrate/20230608163854_create_summary_sections_table.rb:5:in `change'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:870:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:854:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:853:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:852:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1046:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1360:in `block in execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:209:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1411:in `ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1359:in `execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `each'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `migrate_without_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1432:in `block in with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1447:in `with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1428:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1117:in `up'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1092:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/tasks/database_tasks.rb:262:in `migrate'
/var/www/discourse/lib/tasks/db.rake:255:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:230:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'

Caused by:
PG::DuplicateTable: ERROR:  relation "summary_sections" already exists (PG::DuplicateTable)
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:48:in `block (2 levels) in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/dependencies/interlock.rb:41:in `permit_concurrent_loads'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:47:in `block in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:752:in `block in log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:743:in `log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:46:in `execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/schema_statements.rb:326:in `create_table'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:932:in `block in method_missing'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `block in say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:921:in `method_missing'
/var/www/discourse/db/migrate/20230608163854_create_summary_sections_table.rb:5:in `change'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:870:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:854:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:853:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:852:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1046:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1360:in `block in execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:209:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1411:in `ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1359:in `execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `each'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `migrate_without_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1432:in `block in with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1447:in `with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1428:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1117:in `up'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1092:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/tasks/database_tasks.rb:262:in `migrate'
/var/www/discourse/lib/tasks/db.rake:255:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:230:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
I, [2023-11-15T20:25:43.395548 #1]  INFO -- : == 20230608163854 CreateSummarySectionsTable: migrating =======================
-- create_table(:summary_sections)

I, [2023-11-15T20:25:43.396019 #1]  INFO -- : Terminating async processes
I, [2023-11-15T20:25:43.396100 #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
I, [2023-11-15T20:25:43.396499 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 111
2023-11-15 20:25:43.396 UTC [42] LOG:  received fast shutdown request
111:signal-handler (1700079943) Received SIGTERM scheduling shutdown...
2023-11-15 20:25:43.407 UTC [42] LOG:  aborting any active transactions
111:M 15 Nov 2023 20:25:43.411 # User requested shutdown...
111:M 15 Nov 2023 20:25:43.412 * Saving the final RDB snapshot before exiting.
2023-11-15 20:25:43.412 UTC [42] LOG:  background worker "logical replication launcher" (PID 51) exited with exit code 1
2023-11-15 20:25:43.413 UTC [46] LOG:  shutting down
2023-11-15 20:25:43.492 UTC [42] LOG:  database system is shut down
111:M 15 Nov 2023 20:25:43.506 * DB saved on disk
111:M 15 Nov 2023 20:25:43.506 # Redis is now ready to exit, bye bye...


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 678 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
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.
be80b7f3900027b447bca8c30b16d539bf137dc6ffd54e8876a9758ffcf72eb4
root@ip-10-0-159-37:/var/discourse#
Dr report
==================== DOCKER INFO ====================
DOCKER VERSION: Docker version 24.0.7, build afdd53b

DOCKER PROCESSES (docker ps -a)

CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

==================== 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
2.0.20231023-1945: Pulling from discourse/base
Digest: sha256:2b0eb484d20888cc2daadb690dcfa73522105650c1420212e99345a36a424d77
Status: Image is up to date for discourse/base:2.0.20231023-1945
docker.io/discourse/base:2.0.20231023-1945
/usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2023-11-15T20:30:11.032712 #1]  INFO -- : Reading from stdin
I, [2023-11-15T20:30:11.037817 #1]  INFO -- : > locale-gen $LANG && update-locale
I, [2023-11-15T20:30:11.065946 #1]  INFO -- : Generating locales (this might take a while)...
Generation complete.

I, [2023-11-15T20:30:11.066192 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2023-11-15T20:30:11.068804 #1]  INFO -- : 
I, [2023-11-15T20:30:11.069265 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2023-11-15T20:30:11.071395 #1]  INFO -- : 
I, [2023-11-15T20:30:11.071775 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2023-11-15T20:30:11.073753 #1]  INFO -- : 
I, [2023-11-15T20:30:11.074112 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2023-11-15T20:30:11.076281 #1]  INFO -- : 
I, [2023-11-15T20:30:11.076635 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2023-11-15T20:30:11.078603 #1]  INFO -- : 
I, [2023-11-15T20:30:11.078976 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2023/11/15 20:30:11 socat[19] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No such file or directory
I, [2023-11-15T20:30:11.085730 #1]  INFO -- : 
I, [2023-11-15T20:30:11.085913 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2023-11-15T20:30:11.088491 #1]  INFO -- : 
I, [2023-11-15T20:30:11.088855 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2023-11-15T20:30:11.091315 #1]  INFO -- : 
I, [2023-11-15T20:30:11.091626 #1]  INFO -- : > mkdir -p /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-11-15T20:30:11.093844 #1]  INFO -- : 
I, [2023-11-15T20:30:11.094303 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-11-15T20:30:11.096400 #1]  INFO -- : 
I, [2023-11-15T20:30:11.100813 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown: 
I, [2023-11-15T20:30:11.105042 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown: 
I, [2023-11-15T20:30:11.109335 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown: 
I, [2023-11-15T20:30:11.113653 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown: 
I, [2023-11-15T20:30:11.114110 #1]  INFO -- : > chown -R root /var/lib/postgresql/13/main
I, [2023-11-15T20:30:13.500753 #1]  INFO -- : 
I, [2023-11-15T20:30:13.501169 #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-11-15T20:30:13.503815 #1]  INFO -- : 
I, [2023-11-15T20:30:13.503875 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2023-11-15T20:30:13.517026 #1]  INFO -- : 
I, [2023-11-15T20:30:13.517229 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2023-11-15T20:30:13.519542 #1]  INFO -- : 
I, [2023-11-15T20:30:13.519932 #1]  INFO -- : > /root/upgrade_postgres
I, [2023-11-15T20:30:13.524016 #1]  INFO -- : 
I, [2023-11-15T20:30:13.524207 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2023-11-15T20:30:13.526310 #1]  INFO -- : 
I, [2023-11-15T20:30:13.526773 #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-11-15T20:30:13.527432 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:30:13.528013 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:30:13.529217 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:30:13.530289 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:30:13.531487 #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-11-15T20:30:13.532755 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2023-11-15T20:30:13.535371 #1]  INFO -- : 
I, [2023-11-15T20:30:13.535860 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:30:13.536342 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/13/main/postgresql.conf
I, [2023-11-15T20:30:13.537418 #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-11-15T20:30:13.538555 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/13/main/pg_hba.conf
I, [2023-11-15T20:30:13.538997 #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-11-15T20:30:13.539390 #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-11-15T20:30:13.540208 #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-11-15T20:30:13.541741 #1]  INFO -- : > sleep 5
2023-11-15 20:30:13.615 UTC [42] LOG:  starting PostgreSQL 13.12 (Debian 13.12-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit
2023-11-15 20:30:13.616 UTC [42] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2023-11-15 20:30:13.616 UTC [42] LOG:  listening on IPv6 address "::", port 5432
2023-11-15 20:30:13.622 UTC [42] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2023-11-15 20:30:13.631 UTC [45] LOG:  database system was shut down at 2023-11-15 20:25:43 UTC
2023-11-15 20:30:13.639 UTC [42] LOG:  database system is ready to accept connections
I, [2023-11-15T20:30:18.544453 #1]  INFO -- : 
I, [2023-11-15T20:30:18.544968 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
2023-11-15 20:30:18.591 UTC [55] postgres@postgres ERROR:  database "discourse" already exists
2023-11-15 20:30:18.591 UTC [55] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: error: database creation failed: ERROR:  database "discourse" already exists
I, [2023-11-15T20:30:18.593108 #1]  INFO -- : 
I, [2023-11-15T20:30:18.593505 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2023-11-15 20:30:18.638 UTC [59] postgres@discourse ERROR:  role "discourse" already exists
2023-11-15 20:30:18.638 UTC [59] postgres@discourse STATEMENT:  create user discourse;
ERROR:  role "discourse" already exists
I, [2023-11-15T20:30:18.640364 #1]  INFO -- : 
I, [2023-11-15T20:30:18.640989 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2023-11-15T20:30:18.684729 #1]  INFO -- : GRANT

I, [2023-11-15T20:30:18.685400 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
I, [2023-11-15T20:30:18.731385 #1]  INFO -- : ALTER SCHEMA

I, [2023-11-15T20:30:18.731781 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2023-11-15T20:30:18.776632 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:30:18.776993 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2023-11-15T20:30:18.819162 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:30:18.819528 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists vector;"'
NOTICE:  extension "vector" already exists, skipping
I, [2023-11-15T20:30:18.861730 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:30:18.862185 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2023-11-15T20:30:18.904800 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:30:18.905475 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2023-11-15T20:30:18.947643 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:30:18.948293 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists vector;"'
NOTICE:  extension "vector" already exists, skipping
I, [2023-11-15T20:30:18.990746 #1]  INFO -- : CREATE EXTENSION

I, [2023-11-15T20:30:18.991136 #1]  INFO -- : > sudo -u postgres psql discourse
I, [2023-11-15T20:30:18.993478 #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-11-15T20:30:19.044030 #1]  INFO -- : File > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2023-11-15T20:30:19.046767 #1]  INFO -- : File > /var/spool/cron/crontabs/postgres  chmod:   chown: 
I, [2023-11-15T20:30:19.046952 #1]  INFO -- : > echo postgres installed!
I, [2023-11-15T20:30:19.049109 #1]  INFO -- : postgres installed!

I, [2023-11-15T20:30:19.053551 #1]  INFO -- : File > /etc/service/redis/run  chmod: +x  chown: 
I, [2023-11-15T20:30:19.057816 #1]  INFO -- : File > /etc/service/redis/log/run  chmod: +x  chown: 
I, [2023-11-15T20:30:19.062112 #1]  INFO -- : File > /etc/runit/3.d/10-redis  chmod: +x  chown: 
I, [2023-11-15T20:30:19.062377 #1]  INFO -- : Replacing daemonize yes with  in /etc/redis/redis.conf
I, [2023-11-15T20:30:19.063037 #1]  INFO -- : Replacing (?-mix:^pidfile.*$) with  in /etc/redis/redis.conf
I, [2023-11-15T20:30:19.063533 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2023-11-15T20:30:19.066112 #1]  INFO -- : 
I, [2023-11-15T20:30:19.066743 #1]  INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2023-11-15T20:30:19.067356 #1]  INFO -- : Replacing (?-mix:^bind .*$) with  in /etc/redis/redis.conf
I, [2023-11-15T20:30:19.069432 #1]  INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2023-11-15T20:30:19.071593 #1]  INFO -- : Replacing (?-mix:^protected-mode yes) with protected-mode no in /etc/redis/redis.conf
I, [2023-11-15T20:30:19.073135 #1]  INFO -- : Replacing # io-threads 4 with io-threads $redis_io_threads in /etc/redis/redis.conf
I, [2023-11-15T20:30:19.075299 #1]  INFO -- : > echo redis installed
I, [2023-11-15T20:30:19.077296 #1]  INFO -- : redis installed

I, [2023-11-15T20:30:19.077694 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2023-11-15T20:30:19.081239 #1]  INFO -- : logfile ""

I, [2023-11-15T20:30:19.081601 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-11-15T20:30:19.083091 #1]  INFO -- : > sleep 10
111:C 15 Nov 2023 20:30:19.090 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
111:C 15 Nov 2023 20:30:19.090 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=111, just started
111:C 15 Nov 2023 20:30:19.090 # Configuration loaded
111:M 15 Nov 2023 20:30:19.091 * monotonic clock: POSIX clock_gettime
111:M 15 Nov 2023 20:30:19.092 * Running mode=standalone, port=6379.
111:M 15 Nov 2023 20:30:19.092 # Server initialized
111:M 15 Nov 2023 20:30:19.093 * Loading RDB produced by version 7.0.7
111:M 15 Nov 2023 20:30:19.093 * RDB age 276 seconds
111:M 15 Nov 2023 20:30:19.093 * RDB memory usage when created 14.33 Mb
111:M 15 Nov 2023 20:30:19.133 * Done loading RDB, keys loaded: 1279, keys expired: 2.
111:M 15 Nov 2023 20:30:19.133 * DB loaded from disk: 0.040 seconds
111:M 15 Nov 2023 20:30:19.133 * Ready to accept connections
I, [2023-11-15T20:30:29.086177 #1]  INFO -- : 
I, [2023-11-15T20:30:29.086800 #1]  INFO -- : > thpoff echo "thpoff is installed!"
I, [2023-11-15T20:30:29.090834 #1]  INFO -- : thpoff is installed!

I, [2023-11-15T20:30:29.091192 #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-11-15T20:30:29.154436 #1]  INFO -- : 
I, [2023-11-15T20:30:29.154773 #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-11-15T20:30:29.218341 #1]  INFO -- : 
I, [2023-11-15T20:30:29.218671 #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-11-15T20:30:29.280850 #1]  INFO -- : 
I, [2023-11-15T20:30:29.281177 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2023-11-15T20:30:29.283461 #1]  INFO -- : 
I, [2023-11-15T20:30:29.286315 #1]  INFO -- : File > /etc/cron.d/anacron  chmod:   chown: 
I, [2023-11-15T20:30:29.290880 #1]  INFO -- : File > /etc/runit/1.d/copy-env  chmod: +x  chown: 
I, [2023-11-15T20:30:29.295359 #1]  INFO -- : File > /etc/service/unicorn/run  chmod: +x  chown: 
I, [2023-11-15T20:30:29.299847 #1]  INFO -- : File > /etc/service/nginx/run  chmod: +x  chown: 
I, [2023-11-15T20:30:29.304261 #1]  INFO -- : File > /etc/runit/3.d/01-nginx  chmod: +x  chown: 
I, [2023-11-15T20:30:29.308763 #1]  INFO -- : File > /etc/runit/3.d/02-unicorn  chmod: +x  chown: 
I, [2023-11-15T20:30:29.308887 #1]  INFO -- : Replacing # postgres with sv start postgres || exit 1 in /etc/service/unicorn/run
I, [2023-11-15T20:30:29.309479 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-11-15T20:30:29.312128 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git reset --hard
138:C 15 Nov 2023 20:30:29.319 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
138:C 15 Nov 2023 20:30:29.320 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=138, just started
138:C 15 Nov 2023 20:30:29.320 # Configuration loaded
138:M 15 Nov 2023 20:30:29.321 * monotonic clock: POSIX clock_gettime
138:M 15 Nov 2023 20:30:29.321 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
138:M 15 Nov 2023 20:30:29.322 # Failed listening on port 6379 (TCP), aborting.
Updating files: 100% (33858/33858), done.
I, [2023-11-15T20:30:32.004660 #1]  INFO -- : HEAD is now at 043b4a418 FIX: replaces data-tooltip usage by <DTooltip /> (#24062)

I, [2023-11-15T20:30:32.004966 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2023-11-15T20:30:32.129851 #1]  INFO -- : 
I, [2023-11-15T20:30:32.130053 #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 tests-passed
      git fetch --depth 1 origin tests-passed
  else
      git fetch --tags --prune-tags --prune --force origin
  fi
'
From https://github.com/discourse/discourse
 - [deleted]             (none)     -> origin/0-obscuring
 - [deleted]             (none)     -> origin/autoimport-cleanup
 - [deleted]             (none)     -> origin/category-bullet-only
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.4.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.8.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.6.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.5.2
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.4.2
 - [deleted]             (none)     -> origin/dev-upgrade-reject-reason-reviewable-modal
 - [deleted]             (none)     -> origin/dev/ability-to-collect-stats-without-public-exposing
 - [deleted]             (none)     -> origin/dev/re-enable-minio-specs
 - [deleted]             (none)     -> origin/discovery-named-outlets
 - [deleted]             (none)     -> origin/feature/theme-settings-migration
 - [deleted]             (none)     -> origin/footnote-plugin
 - [deleted]             (none)     -> origin/metadata-update
 - [deleted]             (none)     -> origin/modal-ux
 - [deleted]             (none)     -> origin/neil-2
 - [deleted]             (none)     -> origin/spoiler-plugin
   043b4a418..a7ff465ca  main                  -> origin/main
 * [new branch]          0-no-attrs            -> origin/0-no-attrs
 * [new branch]          0-no-decorator        -> origin/0-no-decorator
 * [new branch]          0-picker-gjs          -> origin/0-picker-gjs
   80cf0e58b..76b7cfc4e  0-router-lint         -> origin/0-router-lint
   1e7ddf312..d9cf43b13  0-router-service      -> origin/0-router-service
 * [new branch]          add-custom-emoji-sanitization-clean -> origin/add-custom-emoji-sanitization-clean
 * [new branch]          add-ds-store-to-gitignore -> origin/add-ds-store-to-gitignore
 + 64520a075...ff17131c9 add-new-chat-indicator-preference-only-mentions -> origin/add-new-chat-indicator-preference-only-mentions  (κ°•μ œ μ—…λ°μ΄νŠΈ)
 * [new branch]          add-thumbnails-for-chat-image-uploads -> origin/add-thumbnails-for-chat-image-uploads
 * [new branch]          api-topic-title-decorator -> origin/api-topic-title-decorator
 * [new branch]          chat/direct-messages  -> origin/chat/direct-messages
 * [new branch]          delete-backups-based-on-time-window -> origin/delete-backups-based-on-time-window
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/embroider-02b6d6a7b6 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/embroider-02b6d6a7b6
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/embroider/macros-1.13.3 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/embroider/macros-1.13.3
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.5.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.5.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.9.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.9.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.7.1 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.7.1
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.6.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.6.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.5.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.5.0
 * [new branch]          desktop-noti-translation-cat-tag -> origin/desktop-noti-translation-cat-tag
 * [new branch]          desktop-notification-handlers -> origin/desktop-notification-handlers
 + ee95e6359...346f9d1cd dev/add-new-chat-metrics -> origin/dev/add-new-chat-metrics  (κ°•μ œ μ—…λ°μ΄νŠΈ)
 * [new branch]          dev/cleanup-uploads-job-housekeeping -> origin/dev/cleanup-uploads-job-housekeeping
 * [new branch]          dev/dry-up-user-status-serializers -> origin/dev/dry-up-user-status-serializers
 * [new branch]          dev_watched_words     -> origin/dev_watched_words
 * [new branch]          discourse-location    -> origin/discourse-location
 * [new branch]          extract_stripper      -> origin/extract_stripper
   9a6c6fd5b..8780daeee  feature/bookmark-menu-and-modal-redesign -> origin/feature/bookmark-menu-and-modal-redesign
 * [new branch]          feature/plugin-list-redesign -> origin/feature/plugin-list-redesign
 * [new branch]          feature_watched_words_validation -> origin/feature_watched_words_validation
   43df37774..4393dd37e  filtered-events       -> origin/filtered-events
 * [new branch]          fix_category_drop     -> origin/fix_category_drop
 * [new branch]          full-page             -> origin/full-page
   ce7fb6906..e1c820780  generic-import-latest -> origin/generic-import-latest
 * [new branch]          generic-import-latest-snowflake -> origin/generic-import-latest-snowflake
 * [new branch]          group-approve-unless-trust-level -> origin/group-approve-unless-trust-level
 * [new branch]          homepage-url-handling -> origin/homepage-url-handling
 * [new branch]          image-assets          -> origin/image-assets
 * [new branch]          independent-theme-compiler -> origin/independent-theme-compiler
 * [new branch]          input-text-field-component -> origin/input-text-field-component
 * [new branch]          keyword-site-setting  -> origin/keyword-site-setting
 + bdcc24f96...92e545292 list-wrapper          -> origin/list-wrapper  (κ°•μ œ μ—…λ°μ΄νŠΈ)
   e3636078c..5def32699  mock-chat-index-redesign -> origin/mock-chat-index-redesign
 * [new branch]          poc/auto-after-before-plugin-outlets -> origin/poc/auto-after-before-plugin-outlets
 * [new branch]          poc/insert-before-after-wrapping-outlet -> origin/poc/insert-before-after-wrapping-outlet
 * [new branch]          preload-category-field-fix -> origin/preload-category-field-fix
 * [new branch]          pretty-text-please    -> origin/pretty-text-please
 * [new branch]          remove-regex-custom-field-keys -> origin/remove-regex-custom-field-keys
 * [new branch]          search-rrf-api        -> origin/search-rrf-api
   ef3f41543..34eb4a021  stable                -> origin/stable
 * [new branch]          support-load-more-btn -> origin/support-load-more-btn
 + 76cd2ad87...015e0843e support-search-customizationz -> origin/support-search-customizationz  (κ°•μ œ μ—…λ°μ΄νŠΈ)
 * [new branch]          test-issue-temporary  -> origin/test-issue-temporary
   043b4a418..a7ff465ca  tests-passed          -> origin/tests-passed
 * [new branch]          user-card-content-container-plugin-outlet -> origin/user-card-content-container-plugin-outlet
 * [new branch]          username_cache        -> origin/username_cache
 * [new branch]          ux-add-sorting-params-to-outlet -> origin/ux-add-sorting-params-to-outlet
 * [new branch]          watch-markdown        -> origin/watch-markdown
 t [tag update]          beta                  -> beta
 t [tag update]          latest-release        -> latest-release
 * [new tag]             v3.1.3                -> v3.1.3
 * [new tag]             v3.2.0.beta3          -> v3.2.0.beta3
I, [2023-11-15T20:30:33.095001 #1]  INFO -- : 
I, [2023-11-15T20:30:33.095194 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [[ $(git symbolic-ref --short HEAD) == tests-passed ]] ; then
      git pull
  else
      git -c advice.detachedHead=false checkout tests-passed
  fi
'
'new branch' 'tests-passed'둜 μ „ν™˜λ¨
I, [2023-11-15T20:30:36.468489 #1]  INFO -- : 'tests-passed' λΆ„κΈ°λŠ” 'origin'의 원격 λΆ„κΈ° 'tests-passed'λ₯Ό μΆ”μ ν•˜λ„λ‘ μ„€μ •λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

I, [2023-11-15T20:30:36.468677 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git config user.discourse-version tests-passed
I, [2023-11-15T20:30:36.478998 #1]  INFO -- : 
I, [2023-11-15T20:30:36.479116 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2023-11-15T20:30:36.482462 #1]  INFO -- : 
I, [2023-11-15T20:30:36.482576 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2023-11-15T20:30:36.485690 #1]  INFO -- : 
I, [2023-11-15T20:30:36.485805 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2023-11-15T20:30:36.488959 #1]  INFO -- : 
I, [2023-11-15T20:30:36.489090 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2023-11-15T20:30:36.492174 #1]  INFO -- : 
I, [2023-11-15T20:30:36.492308 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2023-11-15T20:30:36.495057 #1]  INFO -- : 
I, [2023-11-15T20:30:36.495153 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2023-11-15T20:30:36.498062 #1]  INFO -- : 
I, [2023-11-15T20:30:36.498167 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
I, [2023-11-15T20:30:36.502352 #1]  INFO -- : 
I, [2023-11-15T20:30:36.502454 #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-11-15T20:30:36.506672 #1]  INFO -- : 
I, [2023-11-15T20:30:36.506777 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2023-11-15T20:30:36.511238 #1]  INFO -- : 
I, [2023-11-15T20:30:36.511345 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2023-11-15T20:30:36.515559 #1]  INFO -- : 
I, [2023-11-15T20:30:36.515747 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2023-11-15T20:30:36.520082 #1]  INFO -- : 
I, [2023-11-15T20:30:36.520278 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2023-11-15T20:30:36.524296 #1]  INFO -- : 
I, [2023-11-15T20:30:36.524401 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2023-11-15T20:30:37.690354 #1]  INFO -- : 
I, [2023-11-15T20:30:37.690497 #1]  INFO -- : > cd /var/www/discourse && [ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2023-11-15T20:30:37.693391 #1]  INFO -- : 
I, [2023-11-15T20:30:37.693605 #1]  INFO -- : /etc/service/unicorn/runμ—μ„œ '# redis'λ₯Ό 'sv start redis || exit 1'둜 λŒ€μ²΄ν•¨
I, [2023-11-15T20:30:37.694352 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2023-11-15T20:30:37.697473 #1]  INFO -- : 
I, [2023-11-15T20:30:37.697920 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2023-11-15T20:30:37.700211 #1]  INFO -- : 
I, [2023-11-15T20:30:37.700525 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2023-11-15T20:30:37.703025 #1]  INFO -- : 
I, [2023-11-15T20:30:37.703501 #1]  INFO -- : /etc/nginx/nginx.confμ—μ„œ 'pid /run/nginx.pid;'λ₯Ό 'daemon off;'둜 λŒ€μ²΄ν•¨
I, [2023-11-15T20:30:37.703972 #1]  INFO -- : /etc/nginx/conf.d/discourse.confμ—μ„œ '(?m-ix:upstream[^\}]+\})'λ₯Ό 'upstream discourse { server 127.0.0.1:3000; }'둜 λŒ€μ²΄ν•¨
I, [2023-11-15T20:30:37.704428 #1]  INFO -- : /etc/nginx/conf.d/discourse.confμ—μ„œ '(?-mix:server_name.+$)'λ₯Ό 'server_name _ ;'둜 λŒ€μ²΄ν•¨
I, [2023-11-15T20:30:37.705372 #1]  INFO -- : /etc/nginx/conf.d/discourse.confμ—μ„œ '(?-mix:client_max_body_size.+$)'λ₯Ό 'client_max_body_size $upload_size ;'둜 λŒ€μ²΄ν•¨
I, [2023-11-15T20:30:37.706492 #1]  INFO -- : /etc/nginx/nginx.confμ—μ„œ '(?-mix:worker_connections.+$)'λ₯Ό 'worker_connections $nginx_worker_connections ;'둜 λŒ€μ²΄ν•¨
I, [2023-11-15T20:30:37.706909 #1]  INFO -- : > echo "done configuring web"
I, [2023-11-15T20:30:37.708795 #1]  INFO -- : μ›Ή ꡬ성 μ™„λ£Œ

I, [2023-11-15T20:30:37.709274 #1]  INFO -- : > cd /var/www/discourse && gem install bundler --conservative -v $(awk '/BUNDLED WITH/ { getline; gsub(/ /,""); print $0 }' Gemfile.lock)
I, [2023-11-15T20:30:37.886404 #1]  INFO -- : 
I, [2023-11-15T20:30:37.886550 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
I, [2023-11-15T20:30:38.926352 #1]  INFO -- : 
I, [2023-11-15T20:30:38.926945 #1]  INFO -- : > cd /var/www/discourse && if [ "tests-passed" != "tests-passed" ]; then
  rm -rf app/assets/javascripts/node_modules
fi
I, [2023-11-15T20:30:38.929687 #1]  INFO -- : 
I, [2023-11-15T20:30:38.929814 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'
warning " > @glint/environment-ember-loose@1.1.0" has unmet peer dependency "@glimmer/component@^1.1.2".
warning " > @glint/environment-ember-template-imports@1.1.0" has unmet peer dependency "ember-template-imports@^3.0.0".
warning Resolution field "unset-value@2.0.1" is incompatible with requested version "unset-value@^1.0.0"
warning Pattern ["wrap-ansi@^7.0.0"] is trying to unpack in the same destination "/home/discourse/.cache/yarn/v6/npm-wrap-ansi-cjs-7.0.0-67e145cff510a6a6984bdf1152911d69d2eb9e43-integrity/node_modules/wrap-ansi-cjs" as pattern ["wrap-ansi-cjs@npm:wrap-ansi@^7.0.0"]. This could result in non-deterministic behavior, skipping.
warning " > discourse-markdown-it@1.0.0" has unmet peer dependency "xss@*".
warning "workspace-aggregator-1be95580-adad-4e5d-8a60-eca551307dd3 > discourse > @ember/legacy-built-in-components@0.5.0" has incorrect peer dependency "ember-source@>= 4.8".
warning "workspace-aggregator-1be95580-adad-4e5d-8a60-eca551307dd3 > discourse > @uppy/aws-s3@3.0.6" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-1be95580-adad-4e5d-8a60-eca551307dd3 > discourse > @uppy/aws-s3-multipart@3.1.3" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-1be95580-adad-4e5d-8a60-eca551307dd3 > discourse > @uppy/xhr-upload@3.1.1" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-1be95580-adad-4e5d-8a60-eca551307dd3 > discourse-plugins > ember-this-fallback@0.4.0" has unmet peer dependency "ember-source@^3.28.11 || ^4.0.0".
warning "workspace-aggregator-1be95580-adad-4e5d-8a60-eca551307dd3 > discourse > @uppy/aws-s3 > @uppy/xhr-upload@3.3.0" has incorrect peer dependency "@uppy/core@^3.2.1".
I, [2023-11-15T20:31:59.019099 #1]  INFO -- : yarn install v1.22.19
[1/5] package.json 검증 쀑...
[2/5] νŒ¨ν‚€μ§€ ν•΄κ²° 쀑...
[3/5] νŒ¨ν‚€μ§€ κ°€μ Έμ˜€λŠ” 쀑...
[4/5] μ˜μ‘΄μ„± μ—°κ²° 쀑...
[5/5] μƒˆ νŒ¨ν‚€μ§€ λΉŒλ“œ 쀑...
$ yarn --cwd app/assets/javascripts $(node -e 'const argv = JSON.parse(process.env.npm_config_argv).original; const passthrough = [`--frozen-lockfile`, `-s`].filter(arg => argv.includes(arg)); console.log(passthrough.join(` `));')
yarn install v1.22.19
[1/4] νŒ¨ν‚€μ§€ ν•΄κ²° 쀑...
[2/4] νŒ¨ν‚€μ§€ κ°€μ Έμ˜€λŠ” 쀑...
[3/4] μ˜μ‘΄μ„± μ—°κ²° 쀑...
[4/4] μƒˆ νŒ¨ν‚€μ§€ λΉŒλ“œ 쀑...
$ ./run-patch-package
patch-package 8.0.0
패치 적용 쀑...
babel-plugin-debug-macros@0.3.4 βœ”
content-tag@1.1.2 βœ”
ember-source@3.28.12 βœ”
ember-this-fallback@0.4.0 (1 deprecation-name) βœ”
ember-this-fallback@0.4.0 (2 themes) βœ”
virtual-dom@2.1.1 βœ”
40.42초 λ§Œμ— μ™„λ£Œ.
74.04초 λ§Œμ— μ™„λ£Œ.
yarn cache v1.22.19
성곡: μΊμ‹œ μ΄ˆκΈ°ν™”λ¨.
5.63초 λ§Œμ— μ™„λ£Œ.

I, [2023-11-15T20:31:59.019772 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle config --local deployment true'
I, [2023-11-15T20:31:59.177741 #1]  INFO -- : 
I, [2023-11-15T20:31:59.177913 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle config --local without "development test"'
I, [2023-11-15T20:31:59.333741 #1]  INFO -- : ν˜„μž¬ "test:development"인 without의 ν˜„μž¬ 둜컬 값을 λŒ€μ²΄ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

I, [2023-11-15T20:31:59.333902 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle install --retry 3 --jobs 4'
I, [2023-11-15T20:32:12.187213 #1]  INFO -- : https://rubygems.org/.........μ—μ„œ gem 메타데이터 κ°€μ Έμ˜€λŠ” 쀑
rake 13.1.0 κ°€μ Έμ˜€λŠ” 쀑
rake 13.1.0 μ„€μΉ˜ 쀑
concurrent-ruby 1.2.2 μ‚¬μš© 쀑
minitest 5.20.0 μ‚¬μš© 쀑
builder 3.2.4 μ‚¬μš© 쀑
erubi 1.12.0 μ‚¬μš© 쀑
crass 1.0.6 μ‚¬μš© 쀑
racc 1.7.3 κ°€μ Έμ˜€λŠ” 쀑
rack 2.2.8 μ‚¬μš© 쀑
mini_mime 1.1.5 μ‚¬μš© 쀑
date 3.3.4 κ°€μ Έμ˜€λŠ” 쀑
public_suffix 5.0.3 μ‚¬μš© 쀑
timeout 0.4.1 κ°€μ Έμ˜€λŠ” 쀑
aws-eventstream 1.2.0 μ‚¬μš© 쀑
aws-partitions 1.583.0 μ‚¬μš© 쀑
jmespath 1.6.2 μ‚¬μš© 쀑
base64 0.2.0 κ°€μ Έμ˜€λŠ” 쀑
timeout 0.4.1 μ„€μΉ˜ 쀑
msgpack 1.7.2 μ‚¬μš© 쀑
bundler 2.4.13 μ‚¬μš© 쀑
byebug 11.1.3 μ‚¬μš© 쀑
cbor 0.5.9.6 μ‚¬μš© 쀑
cgi 0.4.0 κ°€μ Έμ˜€λŠ” 쀑
base64 0.2.0 μ„€μΉ˜ 쀑
racc 1.7.3 λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 μ„€μΉ˜ 쀑
date 3.3.4 λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 μ„€μΉ˜ 쀑
cgi 0.4.0 λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 μ„€μΉ˜ 쀑
chunky_png 1.4.0 μ‚¬μš© 쀑
coderay 1.1.3 μ‚¬μš© 쀑
colored2 4.0.0 μ‚¬μš© 쀑
connection_pool 2.4.1 μ‚¬μš© 쀑
openssl 3.2.0 μ‚¬μš© 쀑
cppjieba_rb 0.4.2 μ‚¬μš© 쀑
google-protobuf 3.25.0 (x86_64-linux) κ°€μ Έμ˜€λŠ” 쀑
google-protobuf 3.25.0 (x86_64-linux) μ„€μΉ˜ 쀑
diffy 3.4.2 μ‚¬μš© 쀑
digest 3.1.1 μ‚¬μš© 쀑
discourse-fonts 0.0.9 μ‚¬μš© 쀑
email_reply_trimmer 0.1.13 μ‚¬μš© 쀑
excon 0.104.0 μ‚¬μš© 쀑
execjs 2.9.1 μ‚¬μš© 쀑
exifr 1.4.0 μ‚¬μš© 쀑
faraday-net_http 3.0.2 μ‚¬μš© 쀑
ruby2_keywords 0.0.5 μ‚¬μš© 쀑
fast_blank 1.0.1 μ‚¬μš© 쀑
fast_xs 0.8.0 μ‚¬μš© 쀑
fastimage 2.2.7 μ‚¬μš© 쀑
ffi 1.16.3 μ‚¬μš© 쀑
fspath 3.1.2 μ‚¬μš© 쀑
gc_tracer 1.5.1 μ‚¬μš© 쀑
guess_html_encoding 0.0.11 μ‚¬μš© 쀑
hana 1.3.7 μ‚¬μš© 쀑
hashie 5.0.0 μ‚¬μš© 쀑
highline 2.1.0 μ‚¬μš© 쀑
htmlentities 4.3.4 μ‚¬μš© 쀑
http_accept_language 2.1.1 μ‚¬μš© 쀑
image_size 3.3.0 μ‚¬μš© 쀑
in_threads 1.6.0 μ‚¬μš© 쀑
progress 3.6.0 μ‚¬μš© 쀑
json 2.6.3 μ‚¬μš© 쀑
regexp_parser 2.8.2 μ‚¬μš© 쀑
unf_ext 0.0.9 κ°€μ Έμ˜€λŠ” 쀑
unf_ext 0.0.9 λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 μ„€μΉ˜ 쀑
jwt 2.7.1 μ‚¬μš© 쀑
kgio 2.11.4 μ‚¬μš© 쀑
libv8-node 18.16.0.0 (x86_64-linux) μ‚¬μš© 쀑
method_source 1.0.0 μ‚¬μš© 쀑
thor 1.3.0 μ‚¬μš© 쀑
zeitwerk 2.6.12 μ‚¬μš© 쀑
logstash-event 1.2.02 μ‚¬μš© 쀑
logster 2.13.1 κ°€μ Έμ˜€λŠ” 쀑
logster 2.13.1 μ„€μΉ˜ 쀑
lru_redux 1.1.0 μ‚¬μš© 쀑
lz4-ruby 0.3.3 μ‚¬μš© 쀑
maxminddb 0.1.22 μ‚¬μš© 쀑
memory_profiler 1.0.1 μ‚¬μš© 쀑
redis 4.8.1 μ‚¬μš© 쀑
mini_sql 1.5.0 μ‚¬μš© 쀑
multi_json 1.15.0 μ‚¬μš© 쀑
multi_xml 0.6.0 μ‚¬μš© 쀑
mustache 1.1.1 μ‚¬μš© 쀑
uri 0.13.0 κ°€μ Έμ˜€λŠ” 쀑
uri 0.13.0 μ„€μΉ˜ 쀑
nio4r 2.5.9 μ‚¬μš© 쀑
version_gem 1.1.3 μ‚¬μš© 쀑
oj 3.16.1 μ‚¬μš© 쀑
optimist 3.1.0 μ‚¬μš© 쀑
pg 1.5.4 μ‚¬μš© 쀑
raindrops 0.20.1 μ‚¬μš© 쀑
rchardet 1.8.0 μ‚¬μš© 쀑
rexml 3.2.6 μ‚¬μš© 쀑
rinku 2.0.6 μ‚¬μš© 쀑
rotp 6.3.0 μ‚¬μš© 쀑
rqrcode_core 1.2.0 μ‚¬μš© 쀑
rubyzip 2.3.2 μ‚¬μš© 쀑
sshkey 3.0.0 μ‚¬μš© 쀑
stackprof 0.2.25 μ‚¬μš© 쀑
i18n 1.14.1 μ‚¬μš© 쀑
tzinfo 2.0.6 μ‚¬μš© 쀑
rack-test 2.1.0 μ‚¬μš© 쀑
request_store 1.5.1 μ‚¬μš© 쀑
message_bus 4.3.8 μ‚¬μš© 쀑
rack-mini-profiler 3.1.1 μ‚¬μš© 쀑
rack-protection 3.1.0 μ‚¬μš© 쀑
sprockets 3.7.2 (https://github.com/rails/sprockets, 3.x@f4d3dae) μ‚¬μš© 쀑
addressable 2.8.5 μ‚¬μš© 쀑
aws-sigv4 1.5.0 μ‚¬μš© 쀑
net-protocol 0.2.2 κ°€μ Έμ˜€λŠ” 쀑
net-protocol 0.2.2 μ„€μΉ˜ 쀑
openssl-signature_algorithm 1.3.0 μ‚¬μš© 쀑
bootsnap 1.17.0 κ°€μ Έμ˜€λŠ” 쀑
sass-embedded 1.66.1 (x86_64-linux-gnu) κ°€μ Έμ˜€λŠ” 쀑
bootsnap 1.17.0 λ„€μ΄ν‹°λΈŒ ν™•μž₯으둜 μ„€μΉ˜ 쀑
sass-embedded 1.66.1 (x86_64-linux-gnu) μ„€μΉ˜ 쀑
faraday 2.7.11 μ‚¬μš© 쀑
image_optim 0.31.3 μ‚¬μš© 쀑
mini_suffix 0.3.3 μ‚¬μš© 쀑
omniauth 1.9.2 μ‚¬μš© 쀑
uglifier 4.2.0 μ‚¬μš© 쀑
logstash-logger 0.26.1 μ‚¬μš© 쀑
mini_racer 0.8.0 μ‚¬μš© 쀑
pry 0.14.2 μ‚¬μš© 쀑
web-push 3.0.1 κ°€μ Έμ˜€λŠ” 쀑
web-push 3.0.1 μ„€μΉ˜ 쀑
sidekiq 6.5.12 μ‚¬μš© 쀑
redis-namespace 1.11.0 μ‚¬μš© 쀑
net-http 0.4.0 κ°€μ Έμ˜€λŠ” 쀑
net-http 0.4.0 μ„€μΉ˜ 쀑
puma 6.4.0 μ‚¬μš© 쀑
oauth-tty 1.0.5 μ‚¬μš© 쀑
snaky_hash 2.0.1 μ‚¬μš© 쀑
rbtrace 0.4.14 μ‚¬μš© 쀑
rss 0.3.0 μ‚¬μš© 쀑
unicorn 6.1.0 μ‚¬μš© 쀑
activesupport 7.0.7 μ‚¬μš© 쀑
aws-sdk-core 3.130.2 μ‚¬μš© 쀑
css_parser 1.16.0 μ‚¬μš© 쀑
rqrcode 2.2.0 μ‚¬μš© 쀑
tzinfo-data 1.2023.3 μ‚¬μš© 쀑
net-pop 0.1.2 μ‚¬μš© 쀑
net-smtp 0.4.0 μ‚¬μš© 쀑
nokogiri 1.15.4 (x86_64-linux) μ‚¬μš© 쀑
cose 1.3.0 μ‚¬μš© 쀑
dartsass-ruby 3.0.2 κ°€μ Έμ˜€λŠ” 쀑
dartsass-ruby 3.0.2 μ„€μΉ˜ 쀑
faraday-retry 2.2.0 μ‚¬μš© 쀑
oauth2 1.4.11 μ‚¬μš© 쀑
pry-byebug 3.10.1 μ‚¬μš© 쀑
pry-rails 0.3.9 μ‚¬μš© 쀑
rtlcss 0.2.1 μ‚¬μš© 쀑
mini_scheduler 0.16.0 μ‚¬μš© 쀑
rails-dom-testing 2.2.0 μ‚¬μš© 쀑
loofah 2.22.0 κ°€μ Έμ˜€λŠ” 쀑
loofah 2.22.0 μ„€μΉ˜ 쀑
globalid 1.2.1 μ‚¬μš© 쀑
activemodel 7.0.7 μ‚¬μš© 쀑
aws-sdk-kms 1.56.0 μ‚¬μš© 쀑
aws-sdk-sns 1.53.0 μ‚¬μš© 쀑
oauth 1.1.0 μ‚¬μš© 쀑
ruby-readability 0.7.0 μ‚¬μš© 쀑
sanitize 6.1.0 μ‚¬μš© 쀑
omniauth-oauth2 1.7.3 μ‚¬μš© 쀑
rails-html-sanitizer 1.6.0 μ‚¬μš© 쀑
activejob 7.0.7 μ‚¬μš© 쀑
active_model_serializers 0.8.4 μ‚¬μš© 쀑
activerecord 7.0.7 μ‚¬μš© 쀑
actionview 7.0.7 μ‚¬μš© 쀑
aws-sdk-s3 1.114.0 μ‚¬μš© 쀑
discourse-seed-fu 2.3.12 μ‚¬μš© 쀑
omniauth-facebook 9.0.0 μ‚¬μš© 쀑
omniauth-github 1.4.0 μ‚¬μš© 쀑
omniauth-google-oauth2 0.8.2 μ‚¬μš© 쀑
omniauth-oauth 1.2.0 μ‚¬μš© 쀑
actionpack 7.0.7 μ‚¬μš© 쀑
actionview_precompiler 0.3.0 μ‚¬μš© 쀑
omniauth-twitter 1.4.0 μ‚¬μš© 쀑
railties 7.0.7 μ‚¬μš© 쀑
sprockets-rails 3.4.2 μ‚¬μš© 쀑
lograge 0.14.0 μ‚¬μš© 쀑
rails_failover 2.0.1 μ‚¬μš© 쀑
rails_multisite 5.0.0 μ‚¬μš© 쀑
unf 0.1.4 μ‚¬μš© 쀑
simpleidn 0.2.1 μ‚¬μš© 쀑
json_schemer 2.0.0 μ‚¬μš© 쀑
net-imap 0.4.5 κ°€μ Έμ˜€λŠ” 쀑
net-imap 0.4.5 μ„€μΉ˜ 쀑
mail 2.8.1 μ‚¬μš© 쀑
actionmailer 7.0.7 μ‚¬μš© 쀑
Bundle μ™„λ£Œ! 135개 Gemfile μ˜μ‘΄μ„±, 170개 gem μ„€μΉ˜λ¨.
'development' 및 'test' 그룹의 GemsλŠ” μ„€μΉ˜λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.
Bundled gemsλŠ” `./vendor/bundle`에 μ„€μΉ˜λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

I, [2023-11-15T20:32:12.187566 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all'
I, [2023-11-15T20:32:14.781878 #1]  INFO -- : 
I, [2023-11-15T20:32:14.782342 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
2023-11-15 20:32:18.854 UTC [714] discourse@discourse ERROR:  relation "summary_sections" already exists
2023-11-15 20:32:18.854 UTC [714] discourse@discourse STATEMENT:  CREATE TABLE "summary_sections" ("id" bigserial primary key, "target_id" integer NOT NULL, "target_type" character varying NOT NULL, "content_range" int4range, "summarized_text" character varying NOT NULL, "meta_section_id" integer, "original_content_sha" character varying NOT NULL, "algorithm" character varying NOT NULL, "created_at" timestamp(6) NOT NULL, "updated_at" timestamp(6) NOT NULL)
rake 쀑단됨!
StandardError: An error has occurred, this and all later migrations canceled: (StandardError)

PG::DuplicateTable: ERROR:  relation "summary_sections" already exists
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:48:in `block (2 levels) in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/dependencies/interlock.rb:41:in `permit_concurrent_loads'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:47:in `block in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:752:in `block in log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:743:in `log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:46:in `execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/schema_statements.rb:326:in `create_table'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:932:in `block in method_missing'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `block in say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:921:in `method_missing'
/var/www/discourse/db/migrate/20230608163854_create_summary_sections_table.rb:5:in `change'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:870:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:854:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:853:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:852:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1046:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1360:in `block in execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:209:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1411:in `ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1359:in `execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `each'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `migrate_without_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1432:in `block in with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1447:in `with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1428:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1117:in `up'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1092:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/tasks/database_tasks.rb:262:in `migrate'
/var/www/discourse/lib/tasks/db.rake:255:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:230:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'

원인:
ActiveRecord::StatementInvalid: PG::DuplicateTable: ERROR:  relation "summary_sections" a[details=이미 μ‘΄μž¬ν•©λ‹ˆλ‹€ (ActiveRecord::StatementInvalid)
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:48:in `block (2 levels) in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/dependencies/interlock.rb:41:in `permit_concurrent_loads'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:47:in `block in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:752:in `block in log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:743:in `log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:46:in `execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/schema_statements.rb:326:in `create_table'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:932:in `block in method_missing'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `block in say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:921:in `method_missing'
/var/www/discourse/db/migrate/20230608163854_create_summary_sections_table.rb:5:in `change'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:870:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:854:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:853:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:852:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1046:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1360:in `block in execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:209:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1411:in `ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1359:in `execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `each'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `migrate_without_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1432:in `block in with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1447:in `with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1428:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1117:in `up'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1092:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/tasks/database_tasks.rb:262:in `migrate'
/var/www/discourse/lib/tasks/db.rake:255:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:230:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'

원인:
PG::DuplicateTable: ERROR:  relation "summary_sections" already exists (PG::DuplicateTable)
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rack-mini-profiler-3.1.1/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:48:in `block (2 levels) in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/dependencies/interlock.rb:41:in `permit_concurrent_loads'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:47:in `block in execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:752:in `block in log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract_adapter.rb:743:in `log'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/postgresql/database_statements.rb:46:in `execute'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/schema_statements.rb:326:in `create_table'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:932:in `block in method_missing'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `block in say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:900:in `say_with_time'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:921:in `method_missing'
/var/www/discourse/db/migrate/20230608163854_create_summary_sections_table.rb:5:in `change'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:870:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:854:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:853:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:852:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1046:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1360:in `block in execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activesupport-7.0.7/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/transactions.rb:209:in `transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1411:in `ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1359:in `execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `each'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1333:in `migrate_without_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1432:in `block in with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1447:in `with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1428:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1282:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1117:in `up'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/migration.rb:1092:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/activerecord-7.0.7/lib/active_record/tasks/database_tasks.rb:262:in `migrate'
/var/www/discourse/lib/tasks/db.rake:255:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:230:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rake-13.1.0/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => db:migrate
(전체 좔적을 보렀면 --trace μ˜΅μ…˜κ³Ό ν•¨κ»˜ μž‘μ—…μ„ μ‹€ν–‰ν•˜μ‹­μ‹œμ˜€)
I, [2023-11-15T20:32:18.887338 #1]  INFO -- : == 20230608163854 CreateSummarySectionsTable: migrating =======================
-- create_table(:summary_sections)

I, [2023-11-15T20:32:18.887838 #1]  INFO -- : Terminating async processes
I, [2023-11-15T20:32:18.887900 #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
I, [2023-11-15T20:32:18.887963 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 111
111:signal-handler (1700080338) Received SIGTERM scheduling shutdown...
2023-11-15 20:32:18.888 UTC [42] LOG:  received fast shutdown request
2023-11-15 20:32:18.899 UTC [42] LOG:  aborting any active transactions
2023-11-15 20:32:18.903 UTC [42] LOG:  background worker "logical replication launcher" (PID 51) exited with exit code 1
2023-11-15 20:32:18.905 UTC [46] LOG:  shutting down
111:M 15 Nov 2023 20:32:18.917 # User requested shutdown...
111:M 15 Nov 2023 20:32:18.917 * Saving the final RDB snapshot before exiting.
2023-11-15 20:32:18.970 UTC [42] LOG:  database system is shut down
111:M 15 Nov 2023 20:32:19.002 * DB saved on disk
111:M 15 Nov 2023 20:32:19.002 # Redis is now ready to exit, bye bye...


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 677 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
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.
0c9d252453bcca940ed7bb547990964e60fa5b97af0fd0313ca5fb537fe8af21
==================== END REBUILD LOG ====================
Failed to rebuild app.

Checking your domain name . . .

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

+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=2 -e UNICORN_SIDEKIQS=1 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_FORCE_HTTPS=true -e LC_ALL=en_US.UTF-8 -e LANGUAGE=en_US.UTF-8 -e DISCOURSE_HOSTNAME=forum.full30.com -e DISCOURSE_DEVELOPER_EMAILS=robert@full30.com -e DISCOURSE_SMTP_ADDRESS=smtp.sendgrid.net -e DISCOURSE_SMTP_PORT=587 -e DISCOURSE_SMTP_USER_NAME=apikey -e DISCOURSE_SMTP_PASSWORD=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 -e DISCOURSE_SMTP_DOMAIN=full30.com -e DISCOURSE_NOTIFICATION_EMAIL=noreply@full30.com -e 'LETSENCRYPT_ACCOUNT_EMAIL=me@example.com LETSENCRYPT_ACCOUNT_EMAIL LETSENCRYPT_ACCOUNT_EMAIL' -e DISCOURSE_MAXMIND_LICENSE_KEY=yLFCaSpeHmWVD2Y7 -h ip-10-0-159-37-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:a7:94:ef:88:8b local_discourse/app /sbin/boot
Unable to find image 'local_discourse/app:latest' locally
docker: Error response from daemon: pull access denied for local_discourse/app, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.
Failed to restart the container.


==================== PLUGINS ====================


No non-official plugins detected.

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

========================================
Discourse version at forum.full30.com: NOT FOUND
Discourse version at localhost: NOT FOUND


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

               total        used        free      shared  buff/cache   available
Mem:            7721         337        3534           0        3850        7070
Swap:              0           0           0

==================== DISK SPACE CHECK ====================
---------- OS Disk Space ----------
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       291G   67G  225G  23% /

==================== DISK INFORMATION ====================
Disk /dev/loop0: 24.59 MiB, 25780224 bytes, 50352 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


Disk /dev/loop1: 24.9 MiB, 26112000 bytes, 51000 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


Disk /dev/loop2: 55.66 MiB, 58363904 bytes, 113992 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


Disk /dev/loop3: 55.66 MiB, 58363904 bytes, 113992 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


Disk /dev/loop4: 63.45 MiB, 66531328 bytes, 129944 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


Disk /dev/loop5: 63.46 MiB, 66547712 bytes, 129976 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


Disk /dev/loop6: 111.95 MiB, 117387264 bytes, 229272 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


Disk /dev/loop7: 40.84 MiB, 42827776 bytes, 83648 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


Disk /dev/nvme0n1: 300 GiB, 322122547200 bytes, 629145600 sectors
Disk model: Amazon Elastic Block Store              
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 1D8CDFAF-5C13-49B4-AD13-5DBDDECD97FE

Device           Start       End   Sectors   Size Type
/dev/nvme0n1p1  227328 629145566 628918239 299.9G Linux filesystem
/dev/nvme0n1p14   2048     10239      8192     4M BIOS boot
/dev/nvme0n1p15  10240    227327    217088   106M EFI System

Partition table entries are not in disk order.


Disk /dev/loop8: 40.86 MiB, 42840064 bytes, 83672 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

==================== 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) [robert@full30.com]: 
Sending mail to robert@full30.com. . . 
Error response from daemon: No such container: app

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

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

You can examine the output of this script with 
LESS=-Ri less /tmp/discourse-debug.txt

BUT FIRST, make sure that you know the first three commands below!!!

Commands to know when viewing the file with the above command (called 'less'): 
q              -- quit
/error<ENTER>  -- search for the word 'error'
n              -- search for the next occurrence
g              -- go to the beginning of the file
f              -- go forward a page
b              -- go back a page
G              -- go to the end of the file
root@ip-10-0-159-37:/var/discourse# 

이것이 치λͺ…적인 였λ₯˜λ‘œ λ³΄μž…λ‹ˆλ‹€. 이 λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•œ 것은 λ¬΄μ—‡μΈκ°€μš”?

λ°μ΄ν„°λ² μ΄μŠ€μ— λ¬Έμ œκ°€ μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. 런처 μŠ€ν¬λ¦½νŠΈλŠ” rake db:migrateλ₯Ό μ‹€ν–‰ν•˜μ—¬ λ§ˆμ§€λ§‰ Discourse μΈμŠ€ν„΄μŠ€ μ—…λ°μ΄νŠΈ 이후 μΆ”κ°€λœ μƒˆλ‘œμš΄ λ§ˆμ΄κ·Έλ ˆμ΄μ…˜μ„ μ μš©ν•©λ‹ˆλ‹€. μ–΄λ–€ μ΄μœ λ‘œλ“  이미 적용된 λ§ˆμ΄κ·Έλ ˆμ΄μ…˜μ„ μ‹€ν–‰ν•˜λ €κ³  ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

μ „λ¬Έκ°€λŠ” μ•„λ‹ˆμ§€λ§Œ, 이전 μœ μ‚¬ν•œ 사둀듀을 보면 ν…Œμ΄λΈ”μ„ μ‚­μ œν•˜λŠ” 것이 ꢌμž₯λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ 이 사둀가 κ·Έλ ‡μŠ΅λ‹ˆλ‹€:

μˆ˜μ •ν•  방법에 λŒ€ν•΄ 아이디어가 μžˆλ‚˜μš”?

저도 μ „λ¬Έκ°€κ°€ μ•„λ‹ˆμ§€λ§Œ, 제 κ²½μš°μ—λŠ” μ‹œλ„ν•΄ λ³΄μ•˜μŠ΅λ‹ˆλ‹€.

ubuntu@ip-10-0-159-37:~$ sudo -s
root@ip-10-0-159-37:/home/ubuntu# su - postgres
psql discourse
su: user postgres does not exist or the user entry does not contain all the required fields
Command 'psql' not found, but can be installed with:
apt install postgresql-client-common

ν•΄λ‹Ή λͺ…λ Ήμ–΄κ°€ μ—†μ—ˆκ³ , μ„€μΉ˜ν•΄ μ£Όκ² λ‹€κ³  ν•΄μ„œ μ„€μΉ˜ν–ˆμŠ΅λ‹ˆλ‹€.

root@ip-10-0-159-37:/home/ubuntu# apt install postgresql-client-common
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  postgresql-client-common
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 29.6 kB of archives.
After this operation, 194 kB of additional disk space will be used.
Get:1 http://us-east-1.ec2.archive.ubuntu.com/ubuntu jammy/main amd64 postgresql-client-common all 238 [29.6 kB]
Fetched 29.6 kB in 0s (1746 kB/s)                   
Selecting previously unselected package postgresql-client-common.
(Reading database ... 123816 files and directories currently installed.)
Preparing to unpack .../postgresql-client-common_238_all.deb ...
Unpacking postgresql-client-common (238) ...
Setting up postgresql-client-common (238) ...
Processing triggers for man-db (2.10.2-1) ...
Scanning processes...                                                                                                                                              
Scanning linux images...                                                                                                                                           
Running kernel seems to be up-to-date.
No services need to be restarted.
No containers need to be restarted.
No user sessions are running outdated binaries.
No VM guests are running outdated hypervisor (qemu) binaries on this host.
root@ip-10-0-159-37:/home/ubuntu# drop table discourse_reactions_reactions ;
Command 'drop' not found, did you mean:
  command 'krop' from snap krop (0.6.0)
  command 'dtop' from deb diod (1.0.24-5)
  command 'grop' from deb grop (2:0.10-1.2)
  command 'krop' from deb krop (0.6.0-2ubuntu1)
See 'snap info <snapname>' for additional versions.
root@ip-10-0-159-37:/home/ubuntu#

κ·Έ ν›„ 포슀트의 μ§€μ‹œμ— 따라 μ œκ±°ν–ˆμŠ΅λ‹ˆλ‹€.

그리고 μž¬λΉŒλ“œ(rebuild)λ₯Ό μˆ˜ν–‰ν–ˆμŠ΅λ‹ˆλ‹€.

아직도 ν•΄κ²°λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.

Discourse μ»¨ν…Œμ΄λ„ˆ μ•ˆμ— κ³„μ‹ κ°€μš”? psql은 λ°˜λ“œμ‹œ μ‹€ν–‰ κ°€λŠ₯ν•΄μ•Ό ν•©λ‹ˆλ‹€.

ν•΄λ‹Ή λͺ…λ Ήμ–΄λ₯Ό μž…λ ₯ν•˜κΈ° 전에 λ‹€μŒ λͺ…λ Ήμ–΄λ‘œ μ»¨ν…Œμ΄λ„ˆμ— μ§„μž…ν•˜μ„Έμš”.

cd /var/discourse
./launcher enter app

닡글을 보고 λ°”λ‘œ ν™•μΈν•˜λŸ¬ μ™”λŠ”λ°, κ½€ κΈ°λŒ€κ°€ λμŠ΅λ‹ˆλ‹€.

λ‹€λ§Œ λ‹€μŒ λͺ…령은 μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

cd /var/discourse
nano containers/app.yml
μš”μ•½

GNU nano 6.2 containers/app.yml

## this is the all-in-one, standalone Discourse Docker container template
##
## After making changes to this file, you MUST rebuild
## /var/discourse/launcher rebuild app
##
## BE *VERY* CAREFUL WHEN EDITING!
## YAML FILES ARE SUPER SUPER SENSITIVE TO MISTAKES IN WHITESPACE OR ALIGNMENT!
## visit http://www.yamllint.com/ to validate this file as needed

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  ## Uncomment the next line to enable the IPv6 listener
  #- "templates/web.ipv6.template.yml"
  - "templates/web.ratelimited.template.yml"
  ## Uncomment these two lines if you wish to add Lets Encrypt (https)
  - "templates/web.ssl.template.yml"
  - "templates/web.letsencrypt.ssl.template.yml"

## which TCP/IP ports should this container expose?
## If you want Discourse to share a port with another webserver like Apache or nginx,
## see https://meta.discourse.org/t/17247 for details
expose:
  - "80:80"   # http
  - "443:443" # https

params:
  db_default_text_search_config: "pg_catalog.english"

  ## Set db_shared_buffers to a max of 25% of the total memory.
  ## will be set automatically by bootstrap based on detected RAM, or you can override
  db_shared_buffers: "2048MB"

  ## can improve sorting performance, but adds memory usage per-connection
  #db_work_mem: "40MB"

  ## Which Git revision should this container use? (default: tests-passed)
  #version: tests-passed

env:
  LC_ALL: en_US.UTF-8
  LANG: en_US.UTF-8
  LANGUAGE: en_US.UTF-8
  # DISCOURSE_DEFAULT_LOCALE: en

  ## How many concurrent web requests are supported? Depends on memory and CPU cores.
  ## will be set automatically by bootstrap based on detected CPUs, or you can override
  UNICORN_WORKERS: 2

  ## TODO: The domain name this Discourse instance will respond to
  ## Required. Discourse will not work with a bare IP number.
DISCOURSE_HOSTNAME: forum.full30.com

  ## Uncomment if you want the container to be started with the same
  ## hostname (-h option) as specified above (default "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO: List of comma delimited emails that will be made admin and developer
  ## on initial signup example 'user1@example.com,user2@example.com'
  DISCOURSE_DEVELOPER_EMAILS: 'robert@full30.com'

  ## TODO: The SMTP mail server used to validate new accounts and send notifications
  # SMTP ADDRESS, username, and password are required
  # WARNING the char '#' in SMTP password can cause problems!
  DISCOURSE_SMTP_ADDRESS: smtp.sendgrid.net
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: apikey
  DISCOURSE_SMTP_PASSWORD: "REDACTED"
  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (optional, default true)
  DISCOURSE_SMTP_DOMAIN: full30.com
  DISCOURSE_NOTIFICATION_EMAIL: noreply@full30.com

  ## If you added the Lets Encrypt template, uncomment below to get a free SSL certificate
  LETSENCRYPT_ACCOUNT_EMAIL: me@example.com LETSENCRYPT_ACCOUNT_EMAIL LETSENCRYPT_ACCOUNT_EMAIL
  LETSENCRYPT_ACCOUNT_EMAIL: me@example.com LETSENCRYPT_ACCOUNT_EMAIL LETSENCRYPT_ACCOUNT_EMAIL

  ## The http or https CDN address for this Discourse instance (configured to pull)
  ## see https://meta.discourse.org/t/14857 for details
  #DISCOURSE_CDN_URL: https://discourse-cdn.example.com
  ## The maxmind geolocation IP address key for IP address lookup
  ## see https://meta.discourse.org/t/-/137387/23 for details
  #DISCOURSE_MAXMIND_LICENSE_KEY: REDACTED
  DISCOURSE_MAXMIND_LICENSE_KEY:REDACTED

## The Docker container is stateless; all data is stored in /shared
volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log

## Plugins go here
## see https://meta.discourse.org/t/19157 for details
hooks:
  after_code:
    - exec:
        cd: $home/plugins
                cmd: 



## Any custom commands to run after building
run:
  - exec: echo "Beginning of custom commands"
  ## If you want to set the 'From' email address for your first registration, uncomment and change:
  ## After getting the first signup email, re-comment the line. It only needs to run once.
  #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
  - exec: echo "End of custom commands"

그리고 λ‹€μŒ λͺ…령도 μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

cd /var/discourse
./launcher rebuild app

ν•˜μ§€λ§Œ μ‹€νŒ¨λ‘œ λλ‚©λ‹ˆλ‹€.

λ‹€μŒκ³Ό 같이 μ‹œλ„ν•΄ λ³΄μ„Έμš”.

./launcher start app

μ»¨ν…Œμ΄λ„ˆμ— μ§„μž…ν•˜κΈ° 전에 μ‹€ν–‰ν•΄μ•Ό ν•©λ‹ˆλ‹€. 이전 μ»¨ν…Œμ΄λ„ˆλŠ” μ—¬μ „νžˆ μ‚¬μš© κ°€λŠ₯ν•΄μ•Ό ν•˜λ©°, μ‹œμž‘λ  수 μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. 그런 λ‹€μŒ λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μˆ˜μ •ν•΄ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

λ‹€λ₯Έ μ‚¬λžŒμ΄ 같은 λ°©μ‹μœΌλ‘œ λ§‰νž 수 μžˆμœΌλ‹ˆ λͺ‡ κ°€μ§€ μ°Έκ³ ν•  사항을 정리해 λ‘κ² μŠ΅λ‹ˆλ‹€.

λ¨Όμ € ./launcher cleanup을 μ‹€ν–‰ν•˜μ§€ 말고, κΈ°μ‘΄ μ»¨ν…Œμ΄λ„ˆλ₯Ό λ‹€μ‹œ μ‹œμž‘ν•˜λ €λ©΄ ./launcher start app을 μ‹€ν–‰ν•˜μ„Έμš”. 그러면 λ‹€μŒκ³Ό 같은 μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

./launcher enter app
su - postgres
psql discourse
drop table ...

postgres에 직접 μ—°κ²°ν•˜μ—¬ μž‘μ—…μ„ μˆ˜ν–‰ν•  μ»¨ν…Œμ΄λ„ˆκ°€ μ—†λ‹€λ©΄, μ»¨ν…Œμ΄λ„ˆ λΉŒλ“œ 쀑에 app.yml에 λ‹€μŒκ³Ό 같은 λ‚΄μš©μ„ μΆ”κ°€ν•˜μ—¬ μˆ˜ν–‰ν•΄μ•Ό ν•©λ‹ˆλ‹€:

hooks:
  after_postgres:
      - exec: /bin/bash -c 'sudo -u postgres psql discourse <<< "drop table summary_sections;"'
      - exec: /bin/bash -c 'sudo -u postgres psql discourse <<< "drop table theme_settings_migrations;"'

이 두 ν…Œμ΄λΈ”μ΄ μ™œ λ§ˆμ΄κ·Έλ ˆμ΄μ…˜κ³Ό λΆˆμΌμΉ˜ν•˜λ„λ‘ μƒμ„±λ˜μ—ˆλŠ”μ§€λŠ” μ•Œ 수 μ—†μ§€λ§Œ, 이 방법은 문제λ₯Ό ν•΄κ²°ν•΄ μ£Όμ—ˆμŠ΅λ‹ˆλ‹€. 그리고 그보닀 더 μ΄μƒν–ˆλ˜ 점은, λ°μ΄ν„°λ² μ΄μŠ€κ°€ μ–΄λ”˜κ°€μ—μ„œ μ§€μ›Œμ Έ μžˆμ—ˆκ³  이 문제λ₯Ό ν•΄κ²°ν•œ ν›„μ—λŠ” μ™„μ „νžˆ μƒˆλ‘œμš΄ λ°μ΄ν„°λ² μ΄μŠ€κ°€ λ˜μ–΄, 과거에 λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ 쀑간에 μ€‘λ‹¨λ˜μ—ˆμ–΄μ•Ό ν–ˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.