<div dir="ltr">Hi Chris,<div><br></div><div>Automatic *provisioning* of ssh key is not yet supported on buildbot, but this does not mean buildbot does not support ssh keys.</div><div>Buildbot is not doing anything magic here. It is just using the configuration of the user that is running the buildbot-worker program.</div><div><br></div><div>You should first try to do the git clone manually with your buildbot user, and make sure that user is able to clone the repository.</div><div><br></div><div>Here you problem is "<span style="color:rgb(33,33,33)">Host key verification failed." This is a common problem with automatiting ssh. whenever ssh will encounter a new host, he will ask a human to accept its key. Here, as buildbot is not human, it will just fail.</span></div><div><span style="color:rgb(33,33,33)">If you run the git clone manually, he will ask you to verify the host key, and then remember that choice, so any further automated connection will work.</span></div><div><span style="color:rgb(33,33,33)"><br></span></div><div><span style="color:rgb(33,33,33)">Pierre</span></div></div><br><div class="gmail_quote"><div dir="ltr">Le lun. 13 mars 2017 à 16:50, Chris Spencer <<a href="mailto:chrisspen@gmail.com">chrisspen@gmail.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg"><div class="gmail_msg">I've done that, but Buildbot is giving me the following error:<br class="gmail_msg"><br class="gmail_msg">    git fetch -t git@bitbucket.org:myproject/myproject.git branch1<br class="gmail_msg">     in dir /usr/local/myproject/src/buildbot/worker/myproject_runtests/build (timeout 1200 secs)<br class="gmail_msg">     watching logfiles {}<br class="gmail_msg">     argv: ['git', 'fetch', '-t', 'git@bitbucket.org:myproject/myproject.git', 'branch1']<br class="gmail_msg">     environment:<br class="gmail_msg">      HOME=/home/ubuntu<br class="gmail_msg">      LANG=en_US.UTF-8<br class="gmail_msg">      LOGNAME=buildbot<br class="gmail_msg">      MAIL=/var/mail/buildbot<br class="gmail_msg">      OLDPWD=/home/ubuntu<br class="gmail_msg">      PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin<br class="gmail_msg">      PWD=/usr/local/myproject/src/buildbot/worker/myproject_runtests/build<br class="gmail_msg">      SHELL=/bin/bash<br class="gmail_msg">      SHLVL=1<br class="gmail_msg">      SUDO_COMMAND=/bin/bash -c cd /usr/local/myproject/src/buildbot; /usr/local/myproject/.env/bin/buildbot-worker restart worker<br class="gmail_msg">      SUDO_GID=1000<br class="gmail_msg">      SUDO_UID=1000<br class="gmail_msg">      SUDO_USER=ubuntu<br class="gmail_msg">      TERM=vt100<br class="gmail_msg">      USER=buildbot<br class="gmail_msg">      USERNAME=buildbot<br class="gmail_msg">      _=/usr/local/myproject/.env/bin/buildbot-worker<br class="gmail_msg">     using PTY: False<br class="gmail_msg">    Host key verification failed.<br class="gmail_msg">    fatal: Could not read from remote repository.<br class="gmail_msg"><br class="gmail_msg"></div>Presumably, the problem is that Buildbot is using /home/ubuntu for HOME instead of /var/lib/buildbot. However, Buildbot is running as the buildbot user, so I'm unsure why it would be using the ubuntu user's home directory. How do I fix this?<br class="gmail_msg"></div><div class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg">On Mon, Mar 13, 2017 at 11:41 AM, Bob Drummond <span dir="ltr" class="gmail_msg"><<a href="mailto:bob.drummond@netronome.com" class="gmail_msg" target="_blank">bob.drummond@netronome.com</a>></span> wrote:<br class="gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto" class="gmail_msg"><div class="gmail_msg">Assuming <span style="font-family:sans-serif" class="gmail_msg">/var/lib/buildbot is the home directory of your buildbot worker/slave user, yes, that's all you should have to do. If you can log in interactively as the buildbot user and SSH without a password, you should be set. I've found the "ssh -v" flag is useful in debugging what key is actually being used.</span><br class="gmail_msg"><br class="gmail_msg"><div data-smartmail="gmail_signature" class="gmail_msg">Bob Drummond<br class="gmail_msg">Software Engineer<br class="gmail_msg"><br class="gmail_msg"><br class="gmail_msg">Netronome | 3159 Unionville Road, Suite 100 Cranberry Twp., PA 16066<br class="gmail_msg"><br class="gmail_msg">Phone: <a href="tel:(724)%20778-3295" value="+17247783295" class="gmail_msg" target="_blank">+1 (724) 778-3295</a> |  <a href="http://www.netronome.com" class="gmail_msg" target="_blank">www.netronome.com</a></div><div class="gmail_msg"><div class="m_3280565438279048740h5 gmail_msg"><div class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg">On Mar 13, 2017 11:08, "Chris Spencer" <<a href="mailto:chrisspen@gmail.com" class="gmail_msg" target="_blank">chrisspen@gmail.com</a>> wrote:<br type="attribution" class="gmail_msg"><blockquote class="m_3280565438279048740m_-7298592481193562576quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg">My preference would be to use SSH keys. However, since there's no official documentation explaining how to use them with Buildbot, and these replies have mentioned a lot of caveats, I was acting as though SSH keys are officially not supported.<br class="gmail_msg"><br class="gmail_msg"></div>I posted this question to SO over a year ago, and the only reply I received was essentially "just use a username and password".<br class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">How do I configure Buildbot to use SSH keys? I only have a single slave running on the same server as master, so can I simply upload my custom SSH key to /var/lib/buildbot/.ssh/mykey.pem or do I need to update something in my tac or cfg files?<br class="gmail_msg"></div></div><div class="m_3280565438279048740m_-7298592481193562576elided-text gmail_msg"><div class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg">On Mon, Mar 6, 2017 at 2:47 PM, Pierre Tardy <span dir="ltr" class="gmail_msg"><<a href="mailto:tardyp@gmail.com" class="gmail_msg" target="_blank">tardyp@gmail.com</a>></span> wrote:<br class="gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr" class="gmail_msg">It is not implemented because people are supposed to use SSH keys. Is there a reason why you can't use SSH keys ?</p>
<p dir="ltr" class="gmail_msg">Buildbot has capabilities to redact password from commands. It's used I think in svn<br class="gmail_msg">
</p><div class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081HOEnZb gmail_msg"><div class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081h5 gmail_msg">
<br class="gmail_msg"><div class="gmail_quote gmail_msg"><div dir="ltr" class="gmail_msg">Le lun. 6 mars 2017 20:32, Chris Spencer <<a href="mailto:chrisspen@gmail.com" class="gmail_msg" target="_blank">chrisspen@gmail.com</a>> a écrit :<br class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">Is there any way to suppress the output of the Git step (<a href="http://docs.buildbot.net/latest/manual/cfg-buildsteps.html#step-Git" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" target="_blank">http://docs.buildbot.net/latest/manual/cfg-buildsteps.html#step-Git</a>), so my password isn't visible in the logs? It doesn't appear to accept any type of "gitbin" option.<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"></div><div class="gmail_extra m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><div class="gmail_quote m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">On Thu, Mar 2, 2017 at 6:42 PM, Will Rosecrans <span dir="ltr" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><<a href="mailto:wrosecrans@gmail.com" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" target="_blank">wrosecrans@gmail.com</a>></span> wrote:<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><blockquote class="gmail_quote m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">As far as I know, the GitPoller doesn't directly support that.  I have mostly used salt to set up the buildslave machine, and included ssh and git config as part of the buildslave's system config rather than the buildbot config.  If you are using GitHub, it's also easy to set up token passwords on an account and use that for service work.  It uses a password rather than an actual key, but the password is a long string of gibberish, and you can use the token as a sub account, with different permissions for the tokens and the ability tp revoke them individually.<div class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"></div><div class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">You can also set the GitPoller's gitbin to point to a script that runs git with whatever key setup you like, and have buildbot just invoke that script.</div></div></blockquote></div></div><div class="gmail_extra m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><div class="gmail_quote m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><blockquote class="gmail_quote m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><div class="gmail_quote m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><span class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">On Wed, Mar 1, 2017 at 5:18 PM, Chris Spencer <span dir="ltr" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><<a href="mailto:chrisspen@gmail.com" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" target="_blank">chrisspen@gmail.com</a>></span> wrote:<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"></span><blockquote class="gmail_quote m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><div dir="ltr" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><div class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">How do you specify the ssh key to use with the Gitpoller and Git step classes?<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"><br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"></div>I'm currently hard-coding my username/password in the repourl, and I'd like to move away from that for security reasons. However, even after reading the docs and looking at the source, I can see no obvious way to specify the pem key file to checkout and fetch via ssh.<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"></div>
<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"></span><span class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">_______________________________________________<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">
users mailing list<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">
<a href="mailto:users@buildbot.net" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" target="_blank">users@buildbot.net</a><br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">
<a href="https://lists.buildbot.net/mailman/listinfo/users" rel="noreferrer" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" target="_blank">https://lists.buildbot.net/mailman/listinfo/users</a><br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"></span></blockquote></div><br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg"></div>
</blockquote></div></div>
_______________________________________________<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">
users mailing list<br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">
<a href="mailto:users@buildbot.net" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" target="_blank">users@buildbot.net</a><br class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg">
<a href="https://lists.buildbot.net/mailman/listinfo/users" rel="noreferrer" class="m_3280565438279048740m_-7298592481193562576m_-2818269083958457081m_-5789764041128712557gmail_msg gmail_msg" target="_blank">https://lists.buildbot.net/mailman/listinfo/users</a></blockquote></div>
</div></div></blockquote></div><br class="gmail_msg"></div>
</div><br class="gmail_msg">_______________________________________________<br class="gmail_msg">
users mailing list<br class="gmail_msg">
<a href="mailto:users@buildbot.net" class="gmail_msg" target="_blank">users@buildbot.net</a><br class="gmail_msg">
<a href="https://lists.buildbot.net/mailman/listinfo/users" rel="noreferrer" class="gmail_msg" target="_blank">https://lists.buildbot.net/mailman/listinfo/users</a><br class="gmail_msg"></blockquote></div><br class="gmail_msg"></div></div></div></div></div>
</blockquote></div><br class="gmail_msg"></div>
_______________________________________________<br class="gmail_msg">
users mailing list<br class="gmail_msg">
<a href="mailto:users@buildbot.net" class="gmail_msg" target="_blank">users@buildbot.net</a><br class="gmail_msg">
<a href="https://lists.buildbot.net/mailman/listinfo/users" rel="noreferrer" class="gmail_msg" target="_blank">https://lists.buildbot.net/mailman/listinfo/users</a></blockquote></div>