Peut-être GitHub du soutien pour déployer des touches est ce que vous recherchez? Pour citer cette page:
Quand dois-je utiliser une de déployer la clé?
Simple, lorsque vous avez un serveur qui a besoin de tirer l'accès à un seul privé des pensions.
Si c'est ce que vous êtes déjà essayer et ça ne fonctionne pas, vous pouvez mettre à jour votre question avec plus de détails de l'Url en cours d'utilisation, les noms et l'emplacement des fichiers de clés, etc.
Maintenant pour la partie technique: Comment utiliser votre clé SSH avec Jenkins?
Si vous avez, disons, un jenkins
d'utilisateur unix, vous pouvez stocker vos déployer clé en ~/.ssh/id_rsa
. Lorsque Jenkins essaie de cloner le repo via ssh, il va essayer d'utiliser cette clé.
Dans certaines configurations, vous ne pouvez pas exécuter Jenkins comme un compte d'utilisateur, et éventuellement aussi ne peut pas utiliser la clé ssh par défaut emplacement ~/.ssh/id_rsa
. Dans de tels cas, vous pouvez créer une clé dans un autre emplacement, par exemple, ~/.ssh/deploy_key
, et de configurer ssh
à l'utiliser avec une entrée en ~/.ssh/config
:
Host github-deploy-myproject
HostName github.com
User git
IdentityFile ~/.ssh/deploy_key
IdentitiesOnly yes
Parce que tous vous authentifier pour tous les dépôts Github à l'aide de git@github.com
et vous ne voulez pas la clé ci-dessus pour être utilisé pour toutes vos connexions à Github, nous avons créé un alias d'hôte github-déployer-myproject. Votre clone URL devient maintenant
git clone github-deploy-myproject:myuser/myproject
et c'est aussi ce que vous mettez comme référentiel URL dans Jenkins.
(Notez que vous devez de ne pas mettre ssh:// devant pour que cela fonctionne.)