简体   繁体   English

释放clojure leiningen项目时,如何在:release-tasks中使用lein exec任务?

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

I am using lein exec plugin tasks as tasks in my :release-tasks vector but every time one of those lein exec tasks finishes the rest of the release tasks don't run. 我将lein exec插件任务用作我的:release-tasks向量中的任务,但是每次这些lein exec任务之一完成时,其余的发布任务都不会运行。

My :release-tasks are: 我的: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"]]

And when I release it stops at the first exec task like so but returns a successful exit code: 当我释放它时,它会像这样在第一个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

And when I run the exec task by itself it runs correctly and returns a successful exit code: 当我自己运行exec任务时,它会正确运行并返回成功的退出代码:

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

How can I get all of these :release-tasks to run in order? 我如何才能使所有这些:release-tasks依次运行?

I switched from the lein-exec plugin to the lein-oneoff plugin. 我从lein-exec插件切换到lein- oneoff插件。 It's a similar plugin and works with :release-tasks. 这是一个类似的插件,可用于:release-tasks。

Here's the working :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