SSH доступ к github-репо по кодексу - PullRequest
1 голос
/ 22 мая 2019

Я пытаюсь нажать на github из контейнера на Codeship. После получения ошибки Permission denied (publickey) я последовал предложению здесь:

https://documentation.codeship.com/pro/builds-and-configuration/setting-ssh-private-key/

Я создал службу под названием publish to и несколько шагов, чтобы попытаться воссоздать предложение статьи.

Мой файл codehip_services.yml:

# codeship_services.yml
publish:
  build: 
    image: codeship/setting-ssh-key-test
    dockerfile: Dockerfile.publish
  encrypted_env_file: codeship.env.encrypted
  volumes:
    - ./.ssh:/root/.ssh

Мой файл codehip_steps.yml:

- name: temp publish service
  service: publish
  command: /bin/bash -c "echo -e $PRIVATE_SSH_KEY >> /root/.ssh/id_rsa"

- name: chmod id_rsa
  service: publish
  command: chmod 600 /root/.ssh/id_rsa

- name: add server to list of known hosts
  service: publish
  command: /bin/bash -c "ssh-keyscan -H github.com >> /root/.ssh/known_hosts"

- name: confirm ssh connection to server, authenticating with generated public ssh key
  service: publish
  command: /bin/bash -c "ssh -T git@github.com"

При запуске jet steps я все равно получаю ошибку Permission denied (publickey):

(step: temp_publish_service) success ✔
(step: chmod_id_rsa) 
(step: chmod_id_rsa) success ✔
(step: add_server_to_list_of_known_hosts) 
(service: publish) (step: add_server_to_list_of_known_hosts) # github.com:22 SSH-2.0-babeld-80573d3e
(service: publish) (step: add_server_to_list_of_known_hosts) # github.com:22 SSH-2.0-babeld-80573d3e
(service: publish) (step: add_server_to_list_of_known_hosts) # github.com:22 SSH-2.0-babeld-80573d3e
(step: add_server_to_list_of_known_hosts) success ✔
(step: confirm_ssh_connection_to_server,_authenticating_with_generated_public_ssh_key) 
(service: publish) (step: confirm_ssh_connection_to_server,_authenticating_with_generated_public_ssh_key) Permission denied (publickey).
(step: confirm_ssh_connection_to_server,_authenticating_with_generated_public_ssh_key) error ✗
(step: confirm_ssh_connection_to_server,_authenticating_with_generated_public_ssh_key) container exited with a 255 code

Я сгенерировал ключи, как указано в статье, и добавил зашифрованный закрытый ключ к codeship.env.encryped.

Что-то мне не хватает?

1 Ответ

1 голос
/ 22 мая 2019

Единственным пропущенным шагом будет регистрация открытого ключа на самой учетной записи GitHub

Только тогда соединение SSH, использующее тот же открытый ключ, получит шанс на успех.

Если нет, попробуйте хотя бы ssh -Tvv git@github.com на последнем шаге, чтобы получить больше подсказок.

...