Heroku Toolbelt의 로그인 프롬프트를 스크립트로 작성하거나 무시할 수있는 승인 된 방법이 있습니까? 나는 솔루션 (기대, 환경 변수, .netrc의 환경 변수를 보간하는 것 등)을 제공한다고 주장하는 많은 해킹을 보았지만 안정적인 해결책을 찾고 싶다.CI 환경에서 "heroku login"스크립트
답변
문서에서 볼 수 있듯이 세 가지 방법으로이 문제를 해결할 수 있습니다.
첫 번째 것은 authenticate via Login&Password (bleh)입니다. 입력 형식을 알고 - 다른 한편으로, 한 줄에 암호를 로그인 - 우리가 cat
또는 echo
데이터 수 있습니다 보안 ENV 통해
을 바르 :
(
echo "$HEROKU_CREDENTIALS_EMAIL" # or you can plaintext it, if you're feeling adventurous
echo "$HEROKU_CREDENTIALS_PASSWORD"
) | heroku login
이 중요한 부분을 강조 (변수 이름 및 보안).
되찾기 루트에 .heroku_cred
라는 이름의 파일 준비 :
[email protected]
IAmPdohertyAndThisIsMyPasswordIWorkHereWithMyOldMan
이 그 다음 암호화 :
또는 암호화 된 파일을 통해
는travis encrypt-file .heroku_cred
그것은 당신에게 두 가지를 줄 것이다 : 레포 루트에 .heroku_cred.enc
이라는 파일과 Travis에서 파일의 암호를 해독하는 명령. git add
암호화 된 파일 (우연히 이 아닌은 암호화되지 않은 파일을 가져 오지 마십시오!)를 입력하고 before_install
에 명령을 추가하십시오. 그런 다음 Heroku가 인증 할 장소에 추가 :
cat .heroku_cred | heroku login
자,이 방법은 짜증 두 가지 이유 : 첫째, 당신이 '당신을 누설하는 경우 때문에, 끔찍한 당신의 문자 암호를 사용하고 다시 100 % 망했어. 만약 당신이 그것을 바꾼다면 당신의 빌드는 거짓으로 시작될 것이다.
다음 방법은 the HEROKU_API_KEY
env var입니다.이 방법은 "인증 명령의 정상적인 작동을 방해 할 수 있습니다."하지만 다른 방법으로 인증하지 않기 때문에 문제가되지 않습니다. 이렇게
가 .travis.yml
에 대한 변경이 필요하지 않습니다, (당신은 아마 인증하고) 당신의 컴퓨터에
heroku auth:token
란에서 출력을 포함 HEROKU_API_KEY
이름 만 안전한 환경 변수.
이 방법은 보안 (폐기 된 OAuth 토큰)과 설정의 단순성을 결합합니다.
세 번째 방법은 using ~/.netrc
입니다. 사용자 이름과 비밀번호를 사용하여 CLI를 통해 인증 한 것처럼 전체 생태계와 협업합니다 (대신 OAuth 토큰을 사용하는 것이 더 낫습니다).이것에 따르지
단계는 1.2 유사합니다
machine api.heroku.com
login [email protected]
password c4cd94da15ea0544802c2cfd5ec4ead324327430
machine git.heroku.com
login [email protected]
password c4cd94da15ea0544802c2cfd5ec4ead324327430
:
먼저이 같은 Heroku가 (details)로 인증을 위해 ~/.netrc
책임의 부분을 포함 .heroku-netrc
라는 이름의 파일을 생성
그런 다음,이를 암호화하는, 실행
travis encrypt .heroku-netrc
당신은 암호 해독 명령을 얻을 수 (0으로 추가 할 것) 및 .heroku-netrc.enc
이어야하며 git add
이어야합니다 (암호화되지 않은 .heroku-netrc
을 추가하지 않도록주의하십시오). 그 후, install
단계로이 추가 : "감사합니다"난 그냥 참조 할 수 있도록이를 끌어 올려 내가 말할 두번째을해야한다고 생각
cat .heroku-netrc >> $HOME/.netrc
- 1. CI 환경에서 아이비를 어떻게 사용해야합니까?
- 2. 벽돌 jquery가 프로덕션 환경에서 렌더링되지 않습니다. (Heroku)
- 3. Heroku 배포 환경에서 로컬 구성 사용
- 4. CI 환경에서 Maven 프로젝트의 GPG 비밀 키를 보관할 위치는 어디입니까?
- 5. Spring JPA : CI 환경에서 여러 데이터베이스로 DAO 계층 테스트
- 6. ci
- 7. CI 내 CI 프로젝트에 문제
- 8. 가상 환경에서 PIL 종속성을 설치하는 중 Heroku 오류가 발생했습니다
- 9. 프로덕션 환경에서 Heroku Rails Console을 통해 데이터베이스를 변경할 수 있습니까?
- 10. Travis CI
- 11. 트래커 CI
- 12. Heroku Pipelines + Amazon Cloudfront 및 다중 환경
- 13. 선택에서 Heroku PG 오류
- 14. s3없이 종이 클립과 Heroku?
- 15. 다른 환경에서 테스트를 실행하기 위해 CI Bamboo 계획을 구성하는 방법은 무엇입니까?
- 16. PDF로 변환 : Heroku on Heroku
- 17. heroku on heroku on devus
- 18. CI 컨트롤러의 중복 구현
- 19. Travis CI 서브 디렉토리
- 20. CI 구조 및 개발
- 21. CI 컨트롤러의 html 태그
- 22. 트래비스-CI 실행 로컬
- 23. CI 발표자의 설정 값
- 24. CI 경로로 새 페이지로드
- 25. Gitlab의 Wordpress CI
- 26. Bamboo CI 계획 템플릿?
- 27. 엔터프라이즈 CI (SOA/.Net)
- 28. CI : Authorize.net (또는 기타?)
- 29. 폼 유효성 검사기가 Ci
- 30. CI 뉴스 레터 신청
유용하고 상세한 답변을 정리하는 시간을 가졌기 때문입니다. – pdoherty926