Jenkins SCM Sync Configuration Plugin In Docker Won't Talk to Github
docker, git, jenkins
Solution
We use our docker jenkins container with github extensively. We have not had this issue. We don't need to manually setup the key in the container, just using the credentials plugin. Give this container a shot and let me know what errors you get?
The steps to setup in the UI are:
- Install the Credentials Plugin and the Github Plugin
- Click Mange credentials in Manage Jenkins page
- Add your private key and give it a name
- Reference the key by name in your job
Problem
I'm creating an image from the Jenkins Docker image and trying to install the SCM Sync Configuration Plugin. I have a key created that I'm copying to the image that is also copied to the ssh keys for the Github repo. I've tried creating `.ssh/` folders in `/root` as well as `/var/jenkins_home`. I followed this example and tried adding both of the keys to `/etc/ssh/ssh_config`. This didn't work. I also tried following another answer (lost the link to it) where you can add a `config` file to `.ssh/` containing something like this: ``` Host github HostName github.com User git IdentityFile "/var/jenkins_home/.ssh/id_rsa" ``` This also didn't work. I'm using the credentials plugin + Git plugin and the credentials entry points at the `/var/jenkins_home/.ssh/id_rsa file`. Has anyone gotten this plugin or git integration in general working with Jenkins in a Docker image? The errors I get are as follows: INFO: Creating SCM repository object for url : git@github.com:MY_REPO/scm-sync.git Nov 25, 2014 4:20:30 AM hudson.plugins.scm_sync_configuration.scms.SCM getConfiguredRepository SEVERE: Error creating ScmRepository : No such provider: 'github.com'. Nov 25, 2014 4:20:30 AM jenkins.model.Jenkins WARNING: null java.lang.RuntimeException: Error during ScmSyncConfiguration initialisation ! at hudson.plugins.scm_sync_configuration.ScmSyncConfigurationPlugin.init(ScmSyncConfigurationPlugin.java:154) at hudson.plugins.scm_sync_configuration.extensions.ScmSyncConfigurationItemListener.onLoaded(ScmSyncConfigurationItemListener.java:24) at jenkins.model.Jenkins.(Jenkins.java:864) at hudson.model.Hudson.(Hudson.java:82) at hudson.model.Hudson.(Hudson.java:78) at hudson.WebAppMain$3.run(WebAppMain.java:222) Caused by: java.lang.NullPointerException at org.apache.maven.scm.manager.AbstractScmManager.getProviderByRepository(AbstractScmManager.java:180) at hudson.plugins.scm_sync_configuration.SCMManipulator.scmConfigurationSettledUp(SCMManipulator.java:60) at hudson.plugins.scm_sync_configuration.ScmSyncConfigurationBusiness.initializeRepository(ScmSyncConfigurationBusiness.java:69) at hudson.plugins.scm_sync_configuration.ScmSyncConfigurationBusiness.init(ScmSyncConfigurationBusiness.java:64) at hudson.plugins.scm_sync_configuration.ScmSyncConfigurationPlugin.init(ScmSyncConfigurationPlugin.java:152) ... 5 more