2015-07-28 19 views
5

quản lý thư viện của tôi Tôi sử dụng Composer, vì vậy tôi đặt phụ thuộc trong composer.json và sau đó thêm (bao gồm trong composer.json) địa chỉ từ xa của kho lưu trữ riêng .Cách cung cấp quyền truy cập vào kho lưu trữ git được Composer

Khi chạy composer update/install Tôi được nhắc với yêu cầu khóa truy cập vào kho lưu trữ riêng tư đó.

Bây giờ, tôi đang cố triển khai ứng dụng Symfony 2 cho Heroku.

Sự cố phát sinh khi Heroku cố tải xuống các gói từ kho lưu trữ riêng tư của tôi: làm cách nào tôi có thể cung cấp quyền truy cập Heroku vào các kho lưu trữ đó?

Đây là một cấu hình mẫu composer.json:

"require": { 
    "my/private-package": "~1.0", 
}, 
"repositories": [ 
    { 
     "type": "git", 
     "url": "https://[email protected]/Aerendir/private-package" 
    } 
] 

này cấu hình is explained in the Composer Documentation (nó hoạt động cũng không Satis, trừ các "vấn đề" với Heroku :) - hoặc đám mây khác lưu trữ tôi nghĩ).

Có, khoảng athentication, được giải thích:

Lưu ý rằng nếu các gói tin của bạn được lưu trữ trên GitHub, máy chủ của bạn nên có một khoá ssh cung cấp cho nó truy cập vào các gói, và sau đó bạn nên thêm cờ --no-interact (hoặc -n) vào lệnh để đảm bảo nó rơi trở lại xác thực khóa ssh thay vì nhắc nhập mật khẩu. Đây cũng là một mẹo tốt cho các máy chủ tích hợp liên tục.

Bây giờ, câu hỏi 2:

  1. BitBucket có deployment keys nhưng tôi cũng set a SSH key thể.
  2. Điều gì về Heroku SSH keys?

Vì vậy, làm cách nào tôi có thể cấp cho Heroku quyền truy cập vào kho lưu trữ riêng tư của tôi trên BitBucket? Tôi làm cách nào để tải xuống các kho lưu trữ riêng tư được lưu trữ trên BitBucket từ lệnh composer install mà Heroku thực hiện khi triển khai?

+0

Bạn có thể muốn một khóa triển khai được thêm vào Bitbucket (phần công khai) và sử dụng nó trong Heroku (phần riêng). – Sven

+0

Bạn có thể cho tôi biết thêm không? – Aerendir

+0

@Aerendir bạn đã từng giải quyết vấn đề này chưa ??? hoặc bạn đã từ bỏ việc sử dụng heroku? lol ... cảm ơn – Drmjo

Trả lời

-1

để làm https làm việc với nhà soạn nhạc

  1. bạn nên tạo auth thẻ trong bitbucket.
  2. chạy composer config -g github-oauth.github.com token

hoặc

add server key ssh để BitBucket

và thay đổi https://bitbucket.com/organisation/reponame.git

để

[email protected]:organisation/reponame.git

hy vọng nó sẽ giúp

+4

phím ssh của máy chủ trong heroku là gì? – Drmjo

1

Resolved/phá vỡ giới hạn này Heroku của việc sử dụng Composer để cài đặt phụ thuộc trong kho BitBucket tin theo:

thay đổi:

[email protected]:username/repository.git 

trong composer.json tôi để:

https://bitbucket.org/username/repository.git 

Khi chạy composer update --no-dev, Nhà soạn nhạc sẽ yêu cầu bạn kết hợp tên người dùng/mật khẩu vào xác thực. Nhà soạn nhạc tiếp theo sẽ cung cấp cho bạn để lưu các thông tin đăng nhập này trong /Users/username/.composer/auth.json, cũng thấy: https://getcomposer.org/doc/articles/http-basic-authentication.md

Chọn "Y" để tạo tệp đó.

Bây giờ, hãy sao chép tệp đã tạo auth.json vào thư mục dự án của bạn. Sử dụng git để thêm, cam kết và đẩy nó vào Heroku.

này đã làm việc cho tôi, tiếc là auth.json cửa hàng mật khẩu của bạn trong văn bản đơn giản, vì vậy đối với tôi nó không phải là một giải pháp lý tưởng ...

Somebody từ Heroku giám sát vấn đề này? Khi sử dụng http://www.CloudControl.com, người ta có thể kiểm tra chi tiết của một ứng dụng, bao gồm khóa công khai. Thêm nó vào BitBucket và nó hoạt động. Hoặc là có hoặc có Composer đúng cách sử dụng các khóa công cộng có thể thêm vào Heroku ...

Các vấn đề liên quan