初めての Rails アプリケーション テンプレートを作成しようとしていますが、copy_file
メソッドでわずかな問題が発生しています。
最初にいくつかの背景.... どうやら Ruby OpenSSL パッケージには CA ストアが同梱されていないため、HTTPS サービスに接続しようとするとすぐに失敗します。これを回避する方法 (Rails 3 アプリの場合) は、ファイルOpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE
の先頭に行を追加することです。config/environment.rb
jQuery をインストールできるように、テンプレートでその場でこれを行う必要があります。
だから私はそれをすべて理解しました、私の一般的な考えは次のとおりです:
- ファイルのバックアップを作成し
config/environment.rb
ます。 - 元のデータの先頭に追加
jquery:install --ui
タスクを実行する- 元のファイルを復元し
config/environment.rb
ます。
私のテンプレート Gistを参照してください。行 25..34 が関連するセクションです。
そのため、ステップ #4 まではすべて機能し、ステップError: Could not find "env.orig" in any of your source paths
#31 で失敗します。
28行目は機能し、ディスク上のファイルを見ることができるので、これは私にとって非常に困惑していenv.orig
ます。なぜ逆は機能しないのですか?
私は何を間違っていますか?
更新 1:
Thor ソースを見た後、Thorthor\actions.rb
がソースと宛先に異なるパス (現在のプロジェクト パスではない) を使用していることが明らかになりました。さらに、私のコピーは実際には機能していませんでした。実際には、既に生成されたファイルではなく、ERB テンプレート ファイルをコピーしていました。
一息ついた後、仕事に適したツールを使用することに気づきました。UNIXツールがインストールされていないWindowsボックスではこれが機能しないと確信していますが、それでも問題ありません。誰かがより良い方法を持っていますか?run 'cp environment.rb environment.~'
run 'mv environment.~ environment.rb'