2015-10-20 108 views
2

我有一個Yesod網站,並且已經創建了處理下載和強制約束的處理程序。我的Yesod項目目錄有一個名爲downloads的子目錄,它包含我希望用戶在登錄時能夠下載的文件。該處理程序在我的開發和暫存框中非常有用,但在轉移到生產時會中斷。我追蹤到yesod keter這個問題,當它建立它的包時,不會歸檔這些文件。在Keter中包含額外的目錄

我該如何說服keter包含目錄?

+0

我忘記了確切的細節,但我認爲'yesod keter'的功能已被其他軟件包覆蓋。也許這有更多的配置選項? – MaxGabriel

回答

1

所有yesod keter命令確實是創建包含以下子目錄.keter擴展.tar.gz壓縮歸檔文件:

  • config:在同名的目錄在你的源代碼樹
  • dist的精確副本:包含一個包含應用程序二進制文件的子目錄bin
  • static:源樹中同名文件夾的精確副本

請注意,您的應用程序的二進制文件的路徑,而你的靜態文件的路徑是通過root設置中設置在config/keter.yml通過exec設置中設置。如果您想查看源代碼,則在findFiles函數中指定yesod keter命令包含的確切文件集。

如果您想自定義.keter文件的內容,編寫shell腳本來創建存檔可能是最直接的。使用此腳本,您可以將任意額外的目錄添加到存檔中。

你需要效仿的yesod keter行爲的最低限度bash腳本如下:

#!/bin/bash 
tar cvf myapp.keter config/ dist/bin/ static/ 

您可以自定義此不過要產生正確的內容。將download/添加到此命令行的末尾應該有所斬獲。