2012-05-23 10 views
2

У меня есть экземпляр ec2, работающий на AWS. Aegir и drush make отлично подходят для установки новых платформ, за исключением случаев, когда мне нужно загрузить тему из частного репозитория github.Как получить доступ к частному репозиторию github от Aegir через Drush Сделать на AWS

drush make не имеет доступа к GitHub частного хранилища и не платформа установки.

Как это преодолеть? Есть ли какой-нибудь причудливый способ дать drush make или пользовательские ssh-ключи для git-репозитория?

Я не знаю много о ssh-agent, но я решил, что, возможно, это все время будет работать на моем сервере, поэтому у aegir будет доступ к моему github.

Как сделать drush make доступ к частному хранилищу github?

ответ

1

Создайте ключ SSH в экземпляре EC2, а затем добавьте открытый ключ (обычно id_rsa.pub) в частный репозиторий в качестве ключа deoploy.

1

stevenh512 является правильным, шаг за шагом объяснение следующим образом:

Отказ от ответственности: Я использую GitLab + пользовательские VPS на Centos но тот же рабочий процесс может быть применен на любом хостинге (с SSH) и GitHub (п.с. я люблю GitLab для частных РЕПО)

  1. Вход в систему VPS как AEGIR, вероятно, вы не можете (если настроить сервер плотно безопасный), так войти в систему как корень Зи AEGIR

  2. Перейти на главную директорию (кд/var/aegir) и проверьте, есть ли у вас ключ SSH. Если у вас есть один прыжок 1 шаг.

    cat ~/.ssh/id_rsa.pub 
    
  3. Если вам не создать и не использовать идентификационную фразу (для получения дополнительной информации http://community.aegirproject.org/node/30#SSH_keys но есть решения, если вы хотите идентификационную фразу). После создания у вас будет случайное изображение ключа. (Исследование SSH это слишком важно для безопасности!)

    ssh-keygen -t rsa 
    
  4. Скопируйте ключ, а затем перейти к вам GitHub/Lab-> счета/профиль настройки-> SSH ключей-> Добавить ключ SSK. Для названия дайте все, что хотите (например: Aegir Key), а для ключевой пасты - ключ от вашего сервера.

    cat ~/.ssh/id_rsa.pub 
    
  5. Теперь вернемся к серверу необходимо добавить мерзавец, как известно множество, мы идем по легкому пути: просто войти в систему с SSH и введите да, когда он запросит соединение. Готов!!

    ssh [email protected] 
    - or - 
    ssh [email protected] 
    
  6. Тестирование: сделать файл .make и сохранить его где-нибудь общественность (как Dropbox, щелкните правой кнопкой мыши скопировать открытый URL), как:

    core = 7.x 
    api = 2 
    projects[drupal][version] = 7.26 
    projects [my_module_name][type] = "module" 
    projects [my_module_name][download][type] = "git" 
    projects [my_module_name][download][url] = "[email protected]:my_repo.git" 
    projects [my_module_name][download][branch] = "master" 
    
  7. Перейти к AEGIR графический интерфейс и создать новую платформу и дождитесь проверки (в противном случае вы можете ssh как aegir на сервер и протестировать его с помощью drush make url.make folder)

Предупреждение! Этот рабочий процесс не самый безопасный! Просто экспериментируйте с ним и настройте правильный сервер!

Информация: Этот рабочий процесс также работает на локальном компьютере Dev (Linux, Mac, Cygwin), чтобы играть с частными репозиториев на GitHub и GitLab