2014-03-06 17 views
0

我想將我的debian軟件包(https://github.com/indykish/megam_akka.git)的一部分打包爲cron。構建deb包時無法打包使用sbt-native-packager的cron作業

debian軟件包是使用sbt-native-packager構建的。 我把cron的腳本我的bin目錄中,如下https://github.com/indykish/megam_akka/blob/master/bin/megamherk.cron.d

我這裏改變了我的build.sbt皮卡的megamher.cron.d https://github.com/indykish/megam_akka/blob/master/build.sbt

我重視的代碼在這裏的片段:

linuxPackageMappings in Debian <+= (baseDirectory) map { bd => 
(packageMapping((bd/"bin/herk_stash") -> "/usr/share/megamherk/bin/herk_stash") 
withUser "root" withGroup "root" withPerms "0755") 
} 

linuxPackageMappings in Debian <+= (baseDirectory) map { bd => 
(packageMapping((bd/"bin/megamherk.cron.d") -> "/etc/cron.d/megamherk") 
withUser "root" withGroup "root" withPerms "0755") 
} 

我跑:所述T內

sbt clean compile 

sbt dist:dist 

sbt debian:packageBin 

所生成的Debian束arget目錄沒有捆綁cron。

我提到這個Debian的文檔(http://www.debian.org/doc/manuals/maint-guide/dother.en.html#crond

我失去了一些東西在這裏?我如何使sbt-native-package取得一份cron作業?

+1

我想你應該把你的bin目錄中的src因爲baseDirectory在你的片段是源代碼目錄 – kardapoltsev

回答

0

打包簡單文件的最簡單方法是使用默認的目錄結構。

src/linux/... 

你的情況,你乾脆把文件

src/linux/etc/cron.d/megamherk 

您的區域設置將重新應用。所以如果megamherk是可執行的,它將保持可執行。

如果這不起作用,用一個小測試用例打開ticket

歡呼聲,繆奇