簡體   English   中英

釋放clojure leiningen項目時,如何在:release-tasks中使用lein exec任務?

[英]How to use a lein exec task in :release-tasks when releasing a clojure leiningen project?

我將lein exec插件任務用作我的:release-tasks向量中的任務,但是每次這些lein exec任務之一完成時,其余的發布任務都不會運行。

我的:release-tasks是:

$ lein pprint :release-tasks
[["vcs" "assert-committed"]
 ["change" "version" "leiningen.release/bump-version" "release"]
 ["exec" "bin/set-version-from-project.clj"]
 ["vcs" "commit"]
 ["vcs" "tag"]
 ["exec" "bin/make-bin.clj"]
 ["change" "version" "leiningen.release/bump-version"]
 ["exec" "bin/set-version-from-project.clj"]
 ["vcs" "commit"]
 ["vcs" "push"]]

當我釋放它時,它會像這樣在第一個exec任務處停止,但會返回成功的退出代碼:

$ DEBUG=1 lein release
Leiningen's classpath: /Users/paul/.lein/self-installs/leiningen-2.5.0-standalone.jar
Applying task release to []
Applying task change to [version leiningen.release/bump-version release]
Applying task exec to [bin/set-version-from-project.clj]
$ echo $?
0

當我自己運行exec任務時,它會正確運行並返回成功的退出代碼:

$ lein exec bin/set-version-from-project.clj
$ echo $? 
0

我如何才能使所有這些:release-tasks依次運行?

我從lein-exec插件切換到lein- oneoff插件。 這是一個類似的插件,可用於:release-tasks。

這是工作中的:release-tasks。

$ lein pprint :release-tasks
[["vcs" "assert-committed"]
 ["change" "version" "leiningen.release/bump-version" "release"]
 ["oneoff" "bin/set-version-from-project.clj"]
 ["vcs" "commit"]
 ["vcs" "tag"]
 ["oneoff" "bin/make-bin.clj"]
 ["change" "version" "leiningen.release/bump-version"]
 ["oneoff" "bin/set-version-from-project.clj"]
 ["vcs" "commit"]
 ["vcs" "push"]]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM