Quelqu'un at-il configuré avec succès Teamcity pour surveiller, extraire et compiler à partir de GitHub?
Je n'arrive pas à comprendre comment et où configurer les clés SSH pour Teamcity. Teamcity fonctionne en tant que service système, sous un compte système. Alors, où est-ce que Teamcity cache sa configuration SSH?
MODIFIER
Pour que cela fonctionne, je devais empêcher l'agent de s'exécuter sous un compte système.
Ok ... je dois commencer à travailler sur mon serveur Windows. Voici les étapes que j'ai suivies pour configurer TeamCity 4.5 Professional :
.BuildServer\plugins
J'ai obtenu la "Clé privée par défaut" pour travailler avec des agents s'exécutant en tant qu'utilisateur SYSTEM sous Windows. Pour moi, la réponse était d'avoir le fichier d'identité à
C:\Windows\SysWOW64\config\systemprofile\.ssh\id_rsa
au lieu de
C:\Windows\System32\config\systemprofile\.ssh\id_rsa
Votre question concerne spécifiquement SSH, mais il est certainement plus simple et plus rapide d’utiliser HTTP sur TLS, car GitHub et TeamCity prennent désormais en charge l’authentification HTTP. De plus, GitHub supporte également tokens api personnels avec des autorisations limitées, que vous pouvez configurer à votre guise, ou créer un nouvel utilisateur si vous préférez.
Voir l'image ci-dessous de nos paramètres TeamCity.
Depuis TeamCity 8.1, la gestion des clés SSH est officiellement prise en charge. Veuillez lire la documentation suivante: https://confluence.jetbrains.com/display/TCD9/SSH+Keys+Management
(Ceci est une réponse à jour à une vieille question)
J'ai obtenu des versions basées sur SSH travaillant avec github/gitlab et teamcity 7 comme ceci:
Connectez-vous à la machine teamcity et utilisez puttygen/ssh-keygen pour générer une paire de clés rsa et enregistrer la clé openssh dans un endroit raisonnable. (Gotcha - Utilisation de puttygen? Assurez-vous que la clé privée est au format openssh - puttygen> conversions > clé openssh d'exportation)
Je vous suggère de sauvegarder la clé privée
C:\.ssh\id_rsa
Maintenant, configurez "clé privée par défaut" dans teamcity - créez un fichier
C:\.ssh\config
Et dans cette place, placez ceci:
Host * IdentityFile c:\.ssh\id_rsa
Connectez-vous à votre compte gitlab/guthub et collez la clé publique openssh pour la clé privée de votre teamcity.
Vous devriez maintenant pouvoir créer une racine git vcs dans teamcity pouvant utiliser la clé privée par défaut pour extraire votre source.
pour la clé privée, le nom d'utilisateur doit être vide.
Je ne sais pas pourquoi mais le choix de Default Private Key
m'a échoué.
Puis je choisis de Custom Private Key
comme capture d’écran ci-dessous:
Le champ Username
doit être vide.
Le champ Passphrase
est le mot de passe de votre clé privée
(Supposons que vous ayez déjà ajouté la clé publique de cette clé privée dans git.)
J'espère que personne ne s'est coincé comme moi!
Vous aurez peut-être besoin d'un plugin tiers comme this