2015-10-20 99 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/添加到此命令行的末尾应该有所斩获。