我正在尝试使用 Capistrano 部署我的 rails 应用程序,但是,部署过程 ( cap production deploy
) 一直在行:
$HOME/.rbenv/bin/rbenv exec bundle install --path /home/deploy/appname/shared/bundle --jobs 4 --without development test --deployment -- quiet
当我 ssh 进入服务器并在没有--quiet
标志的最新版本中运行相同的命令时,我看到大多数 gems 已安装,但是当它到达时
Installing sassc 2.4.0 with native extensions
它冻结了。如果我使用 cloud watch 监控 CPU(我使用的是运行 Ubuntu 20.04 的 EC2 实例),我会看到它也会出现峰值。我已经尝试删除所有依赖 sassc 的依赖项,但这已经证明是一个非常令人头疼的问题,而且似乎没有必要。一些依赖的 gem 包括我的 CMS(舒适的墨西哥沙发)、webpacker 和一些节点依赖。
我也尝试使用安装 sassc
apt-get install sassc
无济于事(它安装了,但捆绑安装仍然冻结)。
有谁知道为什么这个 gem 在安装时遇到这么多麻烦?任何解决方法/修复?顺便说一下,依赖项在我的 macOS Catalina 机器上本地安装和运行良好。
也许根本不可能使用免费的 EC2 计划安装 sassc?
谢谢。
我创建了一个行程生成应用程序,要求用户输入他/她的旅行日期。唯一的问题是,使用 UIDatePicker 时,日期始终作为给定日/月/年的当前时间给出。
在一个单独的文件中,我扩展了 Date 类来尝试编写一个简单的方法,该方法将返回给定日期的午夜。
首先我尝试过
var midnight:Date{
let cal = Calendar(identifier: .gregorian)
return cal.startOfDay(for: self)
}
Run Code Online (Sandbox Code Playgroud)
然而,这总是给我 04:00 或 05:00,具体取决于夏令时,这给了我一个想法,我应该根据夏令时简单地删除 4 或 5 小时,因此我创建了以下方法:
var timezone:TimeZone{
return TimeZone.current
}
///Returns the first instance of the date, e.g. 2018-02-26 00:00:00
var trueMidnight:Date{
let cal = Calendar(identifier: .gregorian)
let midnight = cal.startOfDay(for: self)
let secondsFromGMT = TimeZone.current.secondsFromGMT()
print("Daylight savings? \(daylightSavings)")
return midnight.addingTimeInterval(Double(secondsFromGMT))
}
///If this var returns true, then daylight savings time is active and an hour of daylight is …
Run Code Online (Sandbox Code Playgroud)