This issue is archived. You can view it, but you can't modify it. Learn more

ExportXMLWordPrintable

      Because of the presence of the ignoreMissing option for the sshagent() Workflow step, one might assume that the absence of a credential will result in a failed build. Or at the very least that the contents of the sshagent() {} block would not execute.

      Neither is the case unfortunately.

      With the following workflow:

      node {
        sshagent(["non-existent-garbage"]) {
          unstash "foo"
          sh "ls"
        }
      }
      

      The following will occur:

      [Workflow] Allocate node : Start
      Running on Docker-bb75aee9cf85 in /home/jenkins/workspace/multipass/master
      [Workflow] node {
      [Workflow] SSH Agent : Start
      FATAL: [ssh-agent] Could not find specified credentials
      [ssh-agent] Looking for ssh-agent implementation...
      [ssh-agent]   Java/JNR ssh-agent
      [ssh-agent] Started.
      [Workflow] sshagent {
      [Workflow] unstash
      [Workflow] sh
      [master] Running shell script
      + ls build/archives
      jenkins.io-2.0.35+3e5ba13.zip
      [Workflow] } //sshagent
      [Workflow] SSH Agent : End
      [Workflow] } //node
      [Workflow] Allocate node : End
      [Workflow] End of Workflow
      Finished: SUCCESS
      

      There does not seem to be any way to prevent the execution of the block if the credentials are missing.

            Assignee:
            Unassigned
            Reporter:
            R. Tyler Croy
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: