2014-10-28 6 views
1

Grunt를 사용하여 프로젝트에 대한 빌드 스크립트를 만들고 커밋 -> 태그 -> 원격 서버로 푸시하고 싶은데 어떻게해야할지 모르겠다. git push 중에 Bitbucket에 대한 자격 증명을 입력하라는 메시지가 표시됩니다. https://www.npmjs.org/package/grunt-git의 grunt-git 용 문서는이 문제를 해결하지 못하는 것 같습니다. 자격 증명 (암호 만)은 다른 곳에 저장된 구성 파일에서 읽은 다음 요청했을 때 주어진 것이 이상적입니다.원격으로 push 할 때 git/bitbucket 자격 증명을 입력하는 방법.

나는이 문제를 해결하기 위해 무당 벌레 껍질을 사용할 수 있을지도 모른다고 생각했지만, 그때는 확실하지 않습니다. 추가 생각에, 아마도 git commit 및 git tag 명령을 수행하기 위해 grunt를 사용하고, 자격 증명을 처리하고 원격으로 푸시하기 위해 CI 서버 소프트웨어 (이 경우 Jenkins)로 남겨 두어야합니다.

제 질문은 실제로 두 가지입니다. 1)이 경우 요청할 때 자격 증명을 제공 할 수 있습니까? 그렇다면 어떻게? 2) 단순히이 책임을 CI 서버 (젠킨스)에 맡기는 것이 더 나은 솔루션 (더 나은 방법/더 쉬운 방법)이 될 수 있습니까?

감사합니다.

답변

0

1)이 경우 요청시 자격 증명을 제공 할 수 있습니까? 그렇다면 어떻게?

당신 add your SSH key이의 Bitbucket 당신은 당신이 암호를 입력하지 않은 SSH 키를 생성 할 때, 당신은 당신이 밀어하려고 어떤 자격 증명을 입력하라는 메시지가 표시되지 않습니다 제공하는 경우.

2) 이 책임을 CI 서버 (Jenkins)에 맡기는 것이 더 나은 솔루션 (더 나은 방법/더 쉬운 방법)이 될 수 있습니까?

젠킨스는 자체 SSH 키를 사용하며 암호가없는 경우 자격 증명없이 Jenkins 키를 가져온 호스트로 푸시하는 빌드를 실행할 수 있습니다.

일반적으로 빌드 도구가 아닌 CI 서버에서 처리합니다. 그러나 현재 필요한 것은 로컬 컴퓨터의 암호를 무시하거나 암호가없는 SSH 키를 생성하거나 SSH Agent과 같은 암호를 사용하는 것입니다.

+0

위대한 답변에 감사드립니다. 지금은 스크립트에서 SSH 키를 사용하지 않고이 상황에서 CI 도구를 사용합니다. – z0d14c

관련 문제