lein release는 비활성화된 PGP를 사용하지 않습니다.

6530 단어 leiningen

묘사

만약에 clojars에 배치하려고 시도한다면 예상대로 실패할 것입니다. clojars는 401을 제공합니다.
$ env LEIN_PASSWORD=test LEIN_USERNAME=hi lein deploy
WARNING: please set :url in project.clj.
Warning: specified :main without including it in :aot.
Implicit AOT of :main will be removed in Leiningen 3.0.0.
If you only need AOT for your uberjar, consider adding :aot :all into your
:uberjar profile instead.
Compiling clojush.core
Created /Users/saul/projects/Clojush/target/clojush-2.0.40.jar
Wrote /Users/saul/projects/Clojush/pom.xml
Sending clojush/clojush/2.0.40/clojush-2.0.40.jar (1470k)
    to https://clojars.org/repo/
Could not transfer artifact clojush:clojush:jar:2.0.40 from/to releases (https://clojars.org/repo): Failed to transfer file: https://clojars.org/repo/clojush/clojush/2.0.40/clojush-2.0.40.jar. Return code is: 401, ReasonPhrase: Unauthorized.
Sending clojush/clojush/2.0.40/clojush-2.0.40.pom (4k)
    to https://clojars.org/repo/
Could not transfer artifact clojush:clojush:pom:2.0.40 from/to releases (https://clojars.org/repo): Failed to transfer file: https://clojars.org/repo/clojush/clojush/2.0.40/clojush-2.0.40.pom. Return code is: 401, ReasonPhrase: Unauthorized.
Failed to deploy artifacts: Could not transfer artifact clojush:clojush:jar:2.0.40 from/to releases (https://clojars.org/repo): Failed to transfer file: https://clojars.org/repo/clojush/clojush/2.0.40/clojush-2.0.40.jar. Return code is: 401, ReasonPhrase: Unauthorized.
그러나 만약 내가 lein release로 같은 시도를 한다면, pgp로 서명을 시도하기 때문에 실패할 것이다
$ env LEIN_PASSWORD=test LEIN_USERNAME=hi lein release
On branch release-travis
nothing to commit, working directory clean
[release-travis d68e8b7] Version 2.0.40
 1 file changed, 1 insertion(+), 1 deletion(-)
gpg: skipped "Saul Shanabrook <[email protected]>": secret key not available
gpg: signing failed: secret key not available
error: gpg failed to sign the data
error: unable to sign the tag
java.lang.Exception: Couldn't tag. git exit code: 128
 at leiningen.core.eval$sh_with_exit_code.doInvoke (eval.clj:204)
    clojure.lang.RestFn.applyTo (RestFn.java:139)
    clojure.core$apply.invoke (core.clj:632)
    leiningen.vcs$fn__8171.doInvoke (vcs.clj:78)
    clojure.lang.RestFn.invoke (RestFn.java:410)
    clojure.lang.MultiFn.invoke (MultiFn.java:229)
    clojure.lang.Var.invoke (Var.java:379)
    clojure.lang.AFn.applyToHelper (AFn.java:154)
    clojure.lang.Var.applyTo (Var.java:700)
    clojure.core$apply.invoke (core.clj:632)
    leiningen.vcs$vcs.doInvoke (vcs.clj:102)
    clojure.lang.RestFn.invoke (RestFn.java:425)
    clojure.lang.Var.invoke (Var.java:383)
    clojure.lang.AFn.applyToHelper (AFn.java:156)
    clojure.lang.Var.applyTo (Var.java:700)
    clojure.core$apply.invoke (core.clj:632)
    leiningen.core.main$partial_task$fn__6030.doInvoke (main.clj:261)
    clojure.lang.RestFn.applyTo (RestFn.java:139)
    clojure.lang.AFunction$1.doInvoke (AFunction.java:29)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.core$apply.invoke (core.clj:632)
    leiningen.core.main$apply_task.invoke (main.clj:311)
    leiningen.core.main$resolve_and_apply.invoke (main.clj:317)
    leiningen.release$release.invoke (release.clj:108)
    leiningen.release$release.invoke (release.clj:103)
    clojure.lang.Var.invoke (Var.java:379)
    clojure.lang.AFn.applyToHelper (AFn.java:154)
    clojure.lang.Var.applyTo (Var.java:700)
    clojure.core$apply.invoke (core.clj:632)
    leiningen.core.main$partial_task$fn__6030.doInvoke (main.clj:261)
    clojure.lang.RestFn.invoke (RestFn.java:410)
    clojure.lang.AFn.applyToHelper (AFn.java:154)
    clojure.lang.RestFn.applyTo (RestFn.java:132)
    clojure.lang.AFunction$1.doInvoke (AFunction.java:29)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.core$apply.invoke (core.clj:632)
    leiningen.core.main$apply_task.invoke (main.clj:311)
    leiningen.core.main$resolve_and_apply.invoke (main.clj:317)
    leiningen.core.main$_main$fn__6096.invoke (main.clj:390)
    leiningen.core.main$_main.doInvoke (main.clj:383)
    clojure.lang.RestFn.invoke (RestFn.java:408)
    clojure.lang.Var.invoke (Var.java:379)
    clojure.lang.AFn.applyToHelper (AFn.java:154)
    clojure.lang.Var.applyTo (Var.java:700)
    clojure.core$apply.invoke (core.clj:630)
    clojure.main$main_opt.invoke (main.clj:316)
    clojure.main$main.doInvoke (main.clj:421)
    clojure.lang.RestFn.invoke (RestFn.java:436)
    clojure.lang.Var.invoke (Var.java:388)
    clojure.lang.AFn.applyToHelper (AFn.java:160)
    clojure.lang.Var.applyTo (Var.java:700)
    clojure.main.main (main.java:37)
project.clj에서 서명 버전을 비활성화했습니다.
(defproject clojush "2.0.40"
  [...]
  :repositories [["releases" {:url "https://clojars.org/repo"
                              :username :env
                              :sign-releases false
                              :password :env}]]
그렇다면 왜 release PGP와 계약을 시도합니까?나는 어떻게 해야만 그것을 금지할 수 있습니까?

토론 #1

아, 이것은git 라벨에 서명하려는 것과 관련이 있다고 생각합니다. 사용하지 않을 수 있습니다.https://github.com/technomancy/leiningen/blob/stable/doc/DEPLOY.md#tagging

토론 #2

나는 다시 이 오류를 만났는데 어떻게 디버깅해야 할지 모르겠다.다만happening on Travis.
gpg: skipped "Travis CI <_>": secret key not available
gpg: signing failed: secret key not available
error: gpg failed to sign the data
error: unable to sign the tag
나는 ["vcs" "tag" "v" "--no-sign"]added to my release tasks가 있다.왜 얘가 라벨에 사인을 해야 돼요?

토론 #셋

이 기능은 2.5.3에 포함되지만travis는 2.5.1을 사용한다.사전 구축 단계lein upgrade로 사용할 수 있습니다.

토론 #4

@saulshanabrook: 이 문제가 트라비스 CI가 최신 버전의 라이언에 나타나지 않았음을 증명할 수 있습니까?예를 들어 travis ci/travis ci#4791에서 말한 바와 같이 Leiningen을 2.5.3으로 업그레이드하는 것을 미리 구축하는 절차로 합니까?

토론 #5

That fixes it !

좋은 웹페이지 즐겨찾기