Я пытаюсь развернуть приложение Rails с помощью capistrano. Скрипт развертывания, инициированный cap production deploy
работает нормально, пока эта команда:
$HOME/.rbenv/bin/rbenv exec bundle install --path /home/deploy/app/shared/bundle --jobs 4 --without development test --deployment --debug --backtrace --quiet
Я подключился к серверу и запустил ту же команду, но заменил --quiet
флаг с --verbose
, и увидите, что пакет завис при установке sassc:
Using activestorage 6.0.3.2
Using actionmailbox 6.0.3.2
Using webpacker 4.2.2
Using actiontext 6.0.3.2
Using rails 6.0.3.2
Installing sassc 2.4.0 with native extensions
Из моего обширного исследования я понял, что установка с собственными расширениями может занять очень много времени, но независимо от того, сколько времени я позволяю ей работать, ничего не происходит. Я вручную установил гем в подробном режиме после того, как оставил его работать всю ночь, и, похоже, это удалось:
compiling ./libsass/src/position.cpp
compiling ./libsass/src/prelexer.cpp
compiling ./libsass/src/remove_placeholders.cpp
compiling ./libsass/src/sass.cpp
compiling ./libsass/src/sass2scss.cpp
compiling ./libsass/src/sass_context.cpp
compiling ./libsass/src/sass_functions.cpp
compiling ./libsass/src/sass_values.cpp
compiling ./libsass/src/source.cpp
compiling ./libsass/src/source_map.cpp
compiling ./libsass/src/stylesheet.cpp
compiling ./libsass/src/to_value.cpp
compiling ./libsass/src/units.cpp
compiling ./libsass/src/utf8_string.cpp
compiling ./libsass/src/util.cpp
compiling ./libsass/src/util_string.cpp
compiling ./libsass/src/values.cpp
linking shared-object sassc/libsass.so
current directory: /home/deploy/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/sassc-2.4.0/ext
"make \"DESTDIR=\" install"
/usr/bin/install -c -m 0755 libsass.so ./.gem.20200720-1092-b4v9ch/sassc
current directory: /home/deploy/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/sassc-2.4.0/ext
/home/deploy/.rbenv/versions/2.6.3/bin/ruby -I /home/deploy/.rbenv/versions/2.6.3/lib/ruby/2.6.0 -r ./siteconf20200720-1092-1xt3w4b.rb extconf.rb
current directory: /home/deploy/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/sassc-2.4.0/ext
make "DESTDIR=" clean
current directory: /home/deploy/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/sassc-2.4.0/ext
make "DESTDIR="
current directory: /home/deploy/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/sassc-2.4.0/ext
make "DESTDIR=" install
Successfully installed sassc-2.4.0
Parsing documentation for sassc-2.4.0
Parsing sources...
100% [261/261] lib/sassc/version.rb
Done installing documentation for sassc after 1 seconds
1 gem installed
но развертывание все еще зависает sassc
.
Я выполняю развертывание на экземпляре AWS EC2 и заметил, что все мои кредиты ЦП были исчерпаны через несколько часов после запуска сценария развертывания, поэтому я даже включил неограниченный режим, чтобы исправить это, заплатив за дополнительные циклы ЦП. Однако я позволял скрипту работать несколько дней, но безрезультатно. Я действительно в растерянности, и это очень расстраивает.
Любая помощь будет принята с благодарностью.