2013-05-30 2 views
4

Leiningen을 사용하여 Clojure 라이브러리를 배포하고 싶습니다. 'lein deploy clojars'는 패스워드를 묻지 않습니다.

  • 가 ~/.lein/credentials.clj.gpg
  • 설치 GPG 에이전트
  • 내 Clojars 자격 증명을 암호화 된 GPG 키 쌍을 생성

    • 설치 GPG : 나는 다음과 같은 일을 수행 한

    내가 'lein이 clojars를 배포'전화 Keychain를 설치, 나는 다음과 같은 출력을 얻을 :

    WARNING: please set :license in project.clj. 
    Could not decrypt credentials from ~/.lein/credentials.clj.gpg 
    gpg: can't query passphrase in batch mode 
    gpg: decryption failed: secret key not available 
    
    See `lein help gpg` for how to install gpg. 
    No credentials found for clojars 
    See `lein help deploy` for how to configure credentials. 
    Username: 
    

    그런 다음 gpg를 제거하고 gpg2를 설치하고 gpg에서 gpg2로 심볼릭 링크를 만들었습니다. 나는 지금 'lein이 clojars을 배포하는'호출 할 때 내가 얻을 :

    WARNING: please set :license in project.clj. 
    ^CCould not decrypt credentials from ~/.lein/credentials.clj.gpg 
    pinentry-curses: no LC_CTYPE known - assuming UTF-8 
    pinentry-curses: no LC_CTYPE known - assuming UTF-8 
    pinentry-curses: no LC_CTYPE known - assuming UTF-8 
    pinentry-curses: no LC_CTYPE known - assuming UTF-8 
    
    gpg: signal Interrupt caught ... exiting 
    
    See `lein help gpg` for how to install gpg. 
    No credentials found for clojars 
    See `lein help deploy` for how to configure credentials. 
    Username: 
    

    을 경고 한 후, 입력에 대한 명령을 기다리는에서 내가 할 수있는 CTRL-C를 눌러에만 종료합니다.

    누구든지 라이브러리를 배포하려면 어떻게해야합니까?

  • 답변

    2

    leinlein-clojar plugin으로 가능한 한 단순한 clojars으로 배포했습니다.

    {:user {:plugins [[lein-clojars "0.9.1"]]}} 
    

    불행하게도, 당신이 lein-clojar 플러그인 passphrased 키를 사용할 수 없지만 lein keygen 명령을 사용하여 새 ssh 키를 생성 할 수 있습니다 :

    먼저, 다음과 같은 내용으로 ~/.lein/profiles.clj 파일을 만듭니다. 새 ssh 키를 ~/.leiningen/에 넣으므로 lein에 의해서만 사용됩니다.

    키를 생성 한 후 lein은 공용 부분을 콘솔에 인쇄합니다. 이 파일을 clojars 계정으로 복사해야합니다.

    마지막으로 lein push과 함께 프로젝트를 배포 할 수 있습니다.

    물론이 플러그인을 사용하지 않고 lein deploy clojarsssh 또는 pgp 키를 사용하여 프로젝트를 배포 할 수 있습니다. 아마도 lein deploy clojars과 함께 경로 구를 사용하는 것이 가능하지만 확실하지 않습니다.

    +0

    고맙습니다. 그거야. 이상합니다. 불가능합니다. [배포 가이드] (https://github.com/technomancy/leiningen/blob/stable/doc/DEPLOY.md)는 가능하다고 제안합니다. – Kocki

    +0

    문제가 뭔지 잘 모르겠지만, 패스 프레이스 키'lein push '를 사용하여 자신의 프로젝트를'clojars'에 배포하려고했을 때 불가능하다고했습니다. –

    +0

    @Kocki 다시 확인했습니다. 암호로 고쳐 쓴 열쇠로 작업 할 수없는'lein-clojars'처럼 보입니다. 그래서, 아마도'lein deploy clojars'를 사용하여 암호로 구별 된 키로 배포하는 것이 가능합니다. –