Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-18298

Jenkins (Github Plugin) post-commit hook fails to build with ssh config aliases

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • github-plugin
    • None
    • Ubuntu 12.10

      I have several private GitHub repos that I need to build. I'm using deployment keys and a config file for SSH to let the Jenkins user know what key to use for each repo. In order to get Jenkins to work with GitHub in this fashion, I had to change the repository URL to point to the host alias. So, it looks like:

      git@myalias.github.com:myorg/repo.git

      This allows me to initiate a build from Jenkins, which is able to checkout the code from github successfully.

      I need to initiate builds from GitHub when code is committed. I setup everything and tested the webhook. I saw the payload come in successfully in the logs. When I commit code to the repo, I get the following error: "FINE: Skipped <repo> because it doesn't have a matching repository."

      If I change my repository URL back to git@github.com:myorg/repo.git I get a match on the repo after code commit, but then the jenkins user can't checkout the code from GitHub because it doesn't know what SSH key to use.

      Is there a way to get this to work? Thanks.

          [JENKINS-18298] Jenkins (Github Plugin) post-commit hook fails to build with ssh config aliases

          IT Archmerc created issue -
          IT Archmerc made changes -
          Description Original: I have the same issue as closed bug #594. There wasn't a resolution in the follow-up that resolves this issue for me.

          I have several private GitHub repos that I need to build. I'm using deployment keys and a config file for SSH to let the Jenkins user know what key to use for each repo. In order to get Jenkins to work with GitHub in this fashion, I had to change the repository URL to point to the host alias. So, it looks like:

          git@myalias.github.com:myorg/repo.git

          This allows me to initiate a build from Jenkins, which is able to checkout the code from github successfully.

          I need to initiate builds from GitHub when code is committed. I setup everything and tested the webhook. I saw the payload come in successfully in the logs. When I commit code to the repo, I get the following error: "FINE: Skipped <repo> because it doesn't have a matching repository."

          If I change my repository URL back to git@github.com:myorg/repo.git I get a match on the repo after code commit, but then the jenkins user can't checkout the code from GitHub because it doesn't know what SSH key to use.

          Is there a way to get this to work? Thanks.
          New: I have several private GitHub repos that I need to build. I'm using deployment keys and a config file for SSH to let the Jenkins user know what key to use for each repo. In order to get Jenkins to work with GitHub in this fashion, I had to change the repository URL to point to the host alias. So, it looks like:

          git@myalias.github.com:myorg/repo.git

          This allows me to initiate a build from Jenkins, which is able to checkout the code from github successfully.

          I need to initiate builds from GitHub when code is committed. I setup everything and tested the webhook. I saw the payload come in successfully in the logs. When I commit code to the repo, I get the following error: "FINE: Skipped <repo> because it doesn't have a matching repository."

          If I change my repository URL back to git@github.com:myorg/repo.git I get a match on the repo after code commit, but then the jenkins user can't checkout the code from GitHub because it doesn't know what SSH key to use.

          Is there a way to get this to work? Thanks.
          David Campos made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          David Campos made changes -
          Status Original: In Progress [ 3 ] New: Open [ 1 ]
          Kirill Merkushev made changes -
          Link New: This issue is duplicated by JENKINS-31797 [ JENKINS-31797 ]
          Kirill Merkushev made changes -
          Link New: This issue is duplicated by JENKINS-19463 [ JENKINS-19463 ]
          Kirill Merkushev made changes -
          Link New: This issue is duplicated by JENKINS-27477 [ JENKINS-27477 ]
          Stephan Herzog made changes -
          Attachment New: 18298_proposal.png [ 32350 ]
          Stephan Herzog made changes -
          Attachment Original: 18298_proposal.png [ 32350 ]
          Stephan Herzog made changes -
          Comment [ Also interested in this. Curious how this isn't a bigger issue (measured on the number of comments/votes). If it is a lot of effort to resolve entries in the ssh-config (without breaking cross platform support), maybe an additional setting per Jenkins job could do the trick? Either a checkbox to ignore the host for the current job (like in Alex Ehlke's fork) or a text input to specify the Github URL that will be posted to Jenkins. I am not familiar with writing Jenkins plugins so this might be impractical, but something like this (with a more accurate description, though):

          !18298_proposal.png|thumbnail! ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 149605 ] New: JNJira + In-Review [ 177413 ]

            Unassigned Unassigned
            itarchmerc IT Archmerc
            Votes:
            9 Vote for this issue
            Watchers:
            14 Start watching this issue

              Created:
              Updated: