我有一個Rails 4.1項目,運行在RVM下,依賴於Rails引擎。Bundler希望重新安裝rails引擎作爲gem
在主應用程序的Gemfile中,我參考發動機:
寶石的車庫',路徑:「/ SRV/web應用/車庫」
發動機被部署到該目錄,而不是作爲一個打包的.gem文件,但所有的文件解壓縮 - 它包含在頂層,它自己的Gemfile,garage.gemspec和目錄應用程序庫規範...
當在父級中運行「包」應用程序,它將中止此消息:
變量Errno :: EACCES:P ermission denied @ rb_sysopen - garage-0.0.6.gem 安裝garage(0.0.6)時發生錯誤,並且Bundler無法繼續。 確保gem install garage -v '0.0.6'
在捆綁之前成功。
(即版本號匹配由「車庫」發動機要求保護的版本號)。
然而,應用程序運行得很好 - 它發現寶石(路徑指向的Gemfile中)。
那麼,爲什麼捆紮機試圖使本地已經安裝了寶石的另一個副本?並且,它在什麼路徑上獲得「權限被拒絕」 - 這是一個難題,因爲我是主應用程序和引擎的部署目錄中每個文件的所有者,並且也具有對/ usr/local/rvm的寫入權限。
請發佈命令的輸出_full_你跑了。 – 2014-10-02 05:07:56
Heisenbug?問題沒有復發,但自從最初發布以來,我只部署了一次這個應用程序。如果它再次發生,我會在這裏返回更詳細的信息。 – 2014-11-12 20:41:19
看看這個寶石,它可以幫助從本地來源的寶石工作:https://github.com/EPI-USE-Labs/git-bundle – 2016-07-01 16:25:14