[JIRA] [publish-over-ssh-plugin] (JENKINS-27963) Please add support for jenkins pipeline plugin to publish-over-ssh

295 views
Skip to first unread message

batmat@batmat.net (JIRA)

unread,
Jan 27, 2016, 9:01:02 AM1/27/16
to jenkinsc...@googlegroups.com
Baptiste Mathus updated an issue
 
Jenkins / Improvement JENKINS-27963
Please add support for jenkins pipeline plugin to publish-over-ssh
Change By: Baptiste Mathus
Summary: Please add support for jenkins  workflow  pipeline  plugin to publish-over-ssh
Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265)
Atlassian logo

jglick@cloudbees.com (JIRA)

unread,
Feb 16, 2016, 12:39:02 PM2/16/16
to jenkinsc...@googlegroups.com

jglick@cloudbees.com (JIRA)

unread,
Feb 16, 2016, 12:41:01 PM2/16/16
to jenkinsc...@googlegroups.com
Jesse Glick commented on Improvement JENKINS-27963
 
Re: Please add support for jenkins pipeline plugin to publish-over-ssh

Not really essential, since you could already write something like

sshagent(['my-private-key-credentials-ID']) {
  sh 'scp some-file w...@somewhere.net:/apps'
}

tyler@monkeypox.org (JIRA)

unread,
Feb 16, 2016, 12:53:01 PM2/16/16
to jenkinsc...@googlegroups.com

We're doing something similar for the jenkins website deployment Jenkinsfile.

it's not exactly ideal, but it works on *nix-type systems which provide scp/sftp command line tools (read: non-Windows). The [Publish Over SSH](https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH+Plugin) plugin does provide a lot of useful advanced features which normal shelling out doesn't.

I wouldn't say this is critical, but definitely would be nice IMHO.

vijaysl@java.net (JIRA)

unread,
Mar 9, 2016, 2:27:02 PM3/9/16
to jenkinsc...@googlegroups.com
vijaysl commented on Improvement JENKINS-27963

The sshagent doesn't appear to support username password authentication

peter.marcoen@outlook.com (JIRA)

unread,
Mar 10, 2016, 4:25:02 AM3/10/16
to jenkinsc...@googlegroups.com

If anyone else has trouble implementing Jesse's workaround, now that when you enter global credentials you have to press 'Advanced' and enter an ID, this ID should be used, not the name given to the credential.

This took me quite some time to figure out

peter.marcoen@outlook.com (JIRA)

unread,
Mar 10, 2016, 4:25:02 AM3/10/16
to jenkinsc...@googlegroups.com
Peter Marcoen edited a comment on Improvement JENKINS-27963
If anyone else has trouble implementing Jesse's workaround, now that when you enter global credentials you have to press 'Advanced' and enter an ID, this ID should be used, not the name given to the credential.

Pretty confusing because the name can be used in the Job-step of ssh-agent but not in the Pipeline-step.
This took me quite some time to figure out :)

peter.marcoen@outlook.com (JIRA)

unread,
Mar 10, 2016, 4:26:02 AM3/10/16
to jenkinsc...@googlegroups.com
Peter Marcoen edited a comment on Improvement JENKINS-27963
If anyone else has trouble implementing Jesse's workaround,  now  know  that when you enter global credentials you have to press 'Advanced' and enter an ID, this ID should be used, not the name given to the credential.


Pretty confusing because the name can be used in the Job-step of ssh-agent but not in the Pipeline-step.
This took me quite some time to figure out :)

budhi003@gmail.com (JIRA)

unread,
May 12, 2016, 12:40:02 AM5/12/16
to jenkinsc...@googlegroups.com

budhi003@gmail.com (JIRA)

unread,
May 12, 2016, 1:23:02 AM5/12/16
to jenkinsc...@googlegroups.com
Ashudeep Budhiraja commented on Improvement JENKINS-27963
 
Re: Please add support for jenkins pipeline plugin to publish-over-ssh

Hi Jesse, Peter,

Getting - java.lang.NoSuchMethodError: No such DSL method 'sshagent' found among

Thanks

peter.marcoen@outlook.com (JIRA)

unread,
May 12, 2016, 2:36:03 AM5/12/16
to jenkinsc...@googlegroups.com

budhi003@gmail.com (JIRA)

unread,
May 13, 2016, 9:17:02 PM5/13/16
to jenkinsc...@googlegroups.com

riccardo.russo79@gmail.com (JIRA)

unread,
Jun 15, 2016, 5:14:01 AM6/15/16
to jenkinsc...@googlegroups.com

Hello,
sshagent does not support username and password but only private key + passphrase!

Moreover now, for me, that plugin is not working because of boucycaste plugin (org.bouncycastle.openssl.PEMException: Unable to create OpenSSL PBDKF: PBKDF-OpenSSL SecretKeyFactory not available). There is a ticket open.

Just to know: will the plugin be avaible from Pipeline plugin?

This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)
Atlassian logo

riccardo.russo79@gmail.com (JIRA)

unread,
Jun 15, 2016, 5:14:04 AM6/15/16
to jenkinsc...@googlegroups.com
Riccardo Russo edited a comment on Improvement JENKINS-27963
Hello,
sshagent does not support username and password but only private key + passphrase!

Moreover now, for me, that plugin is not working because of boucycaste plugin (

{code:java}
org.bouncycastle.openssl.PEMException: Unable to create OpenSSL PBDKF: PBKDF-OpenSSL SecretKeyFactory not available

{code}
). There is a ticket open.

Just to know: will the plugin be avaible available from Pipeline plugin?

riccardo.russo79@gmail.com (JIRA)

unread,
Jun 15, 2016, 5:15:01 AM6/15/16
to jenkinsc...@googlegroups.com
Riccardo Russo edited a comment on Improvement JENKINS-27963
Hello,
sshagent does not support username and password but only private key + passphrase!

Moreover now, for me, that plugin is not working because of boucycaste plugin (
{code:java}
org.bouncycastle.openssl.PEMException: Unable to create OpenSSL PBDKF: PBKDF-OpenSSL SecretKeyFactory not available
{code}
). There is a ticket open already opened .

Just to know: will the plugin be available from Pipeline plugin?

clausfod@gmail.com (JIRA)

unread,
Sep 5, 2016, 5:03:02 AM9/5/16
to jenkinsc...@googlegroups.com
clausfod commented on Improvement JENKINS-27963

You can of course do it all yourselve with the SSH Agent plugin - but the nice features provided by the Publish Over SSH plugin is not available unless you "code" it yourselve.

So I would like to know also - Is the plugin planned to be available from the Pipeline plugin ?

tristan@techsoft3d.com (JIRA)

unread,
Oct 6, 2016, 3:05:02 PM10/6/16
to jenkinsc...@googlegroups.com

tristan@techsoft3d.com (JIRA)

unread,
Oct 6, 2016, 3:06:08 PM10/6/16
to jenkinsc...@googlegroups.com

tristan@techsoft3d.com (JIRA)

unread,
Oct 6, 2016, 3:06:10 PM10/6/16
to jenkinsc...@googlegroups.com
Tristan Lewis assigned an issue to Unassigned
Change By: Tristan Lewis
Assignee: Tristan Lewis

slide.o.mix@gmail.com (JIRA)

unread,
Feb 25, 2018, 4:39:05 PM2/25/18
to jenkinsc...@googlegroups.com
Alex Earl assigned an issue to Alex Earl
Change By: Alex Earl
Assignee: bap Alex Earl
This message was sent by Atlassian JIRA (v7.3.0#73011-sha1:3c73d0e)
Atlassian logo

scm_issue_link@java.net (JIRA)

unread,
Feb 25, 2018, 4:41:03 PM2/25/18
to jenkinsc...@googlegroups.com
SCM/JIRA link daemon commented on Improvement JENKINS-27963
 
Re: Please add support for jenkins pipeline plugin to publish-over-ssh

Code changed in jenkins
User: Alex Earl
Path:
pom.xml
src/main/java/jenkins/plugins/publish_over_ssh/BapSshHostConfiguration.java
src/main/java/jenkins/plugins/publish_over_ssh/BapSshPromotionPublisherPlugin.java
src/main/java/jenkins/plugins/publish_over_ssh/BapSshPublisherPlugin.java
src/main/java/jenkins/plugins/publish_over_ssh/BapSshTransfer.java
src/main/java/jenkins/plugins/publish_over_ssh/descriptor/BapSshPublisherDescriptor.java
src/main/java/jenkins/plugins/publish_over_ssh/descriptor/BapSshTransferDescriptor.java
http://jenkins-ci.org/commit/publish-over-ssh-plugin/8a78eeb871f60cbfe37a05db1e95500c48badc60
Log:
Fix JENKINS-27963

Added @Symbol annotations and cleaned up the constructors a bit.

elomonaco127@gmail.com (JIRA)

unread,
Feb 25, 2018, 6:00:02 PM2/25/18
to jenkinsc...@googlegroups.com

I'm taking a guess this should be available in the very near future?

slide.o.mix@gmail.com (JIRA)

unread,
Feb 25, 2018, 7:44:05 PM2/25/18
to jenkinsc...@googlegroups.com

slide.o.mix@gmail.com (JIRA)

unread,
Feb 26, 2018, 3:57:05 PM2/26/18
to jenkinsc...@googlegroups.com
Alex Earl resolved as Fixed
 

Fixed in 1.19

Change By: Alex Earl
Status: Open Resolved
Resolution: Fixed

tapio.reijonen@vaisala.com (JIRA)

unread,
Feb 27, 2018, 1:30:03 AM2/27/18
to jenkinsc...@googlegroups.com
Tapio Reijonen commented on Improvement JENKINS-27963
 
Re: Please add support for jenkins pipeline plugin to publish-over-ssh

Very quickly tested this 1.19 and seams to work OK in pipeline and freestyle jobs. Thanks!

m@phrk.de (JIRA)

unread,
Feb 27, 2018, 3:09:03 AM2/27/18
to jenkinsc...@googlegroups.com

First test was also successful here. Still have two entries in the DropDown List:
Unable to render embedded object: File (2018-02-27_084410.jpg) not found.

Further: Would it be possible to get the _configNamevalue _from a variable? Currently i need to hardcode this value in my pipeline...

sshPublisher(publishers: [sshPublisherDesc(configName: 'swpsci06', transfers: [sshTransfer(execCommand: '', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])

I would like to do something like. The variable "ReleaseNumber" is getting populate from my paramterized build.

#!/usr/bin/env groovy

def call(Map params = [:]) {
	def serverHostname = "swpsws26"
	
	 pipeline {
		agent any
		
		stages {
			stage('Download') {
				steps {
					sshPublisher(publishers: [sshPublisherDesc(configName: $serverHostname, transfers: [sshTransfer(execCommand: '''
						echo "INFO: Downloading $filename from $ReleaseNumber"
						echo "INFO: $serverHostname"
					''', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
				}
			}
		}
	}
}

m@phrk.de (JIRA)

unread,
Feb 27, 2018, 3:10:05 AM2/27/18
to jenkinsc...@googlegroups.com
Stephan Watermeyer edited a comment on Improvement JENKINS-27963
First test was also successful here. Still have two entries in the DropDown List:
!2018-02-27_084410.jpg |thumbnail !


Further: Would it be possible to get the _configNamevalue _from a variable? Currently i need to hardcode this value in my pipeline...
{code:java}
sshPublisher(publishers: [
sshPublisherDesc sshPublisherDe sc (configName: 'swpsci06', transfers: [sshTransfer(execCommand: '', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)]){code}

I would like to do something like. The variable "ReleaseNumber" is getting populate from my paramterized build.
{code:java}

#!/usr/bin/env groovy

def call(Map params = [:]) {
def serverHostname = "swpsws26"

  pipeline {
  agent any
  
  stages {
   stage('Download') {
    steps {
     sshPublisher(publishers: [sshPublisherDesc(configName: $serverHostname, transfers: [sshTransfer(execCommand: '''
      echo "INFO: Downloading $filename from $ReleaseNumber"
      echo "INFO: $serverHostname"
     ''', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
    }
   }
  }
}
}

{code}

m@phrk.de (JIRA)

unread,
Feb 27, 2018, 3:10:11 AM2/27/18
to jenkinsc...@googlegroups.com
Stephan Watermeyer edited a comment on Improvement JENKINS-27963
First test was also successful here. Still have two entries in the DropDown List:
!2018-02-27_084410.jpg!


Further: Would it be possible to get the _configNamevalue _from a variable? Currently i need to hardcode this value in my pipeline...
{code:java}
sshPublisher(publishers: [sshPublisherDe sc(configName: 'swpsci06', transfers: [sshTransfer(execCommand: '', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)]){code}

I would like to do something like. The variable "ReleaseNumber" is getting populate from my paramterized build.
{code:java}
#!/usr/bin/env groovy

def call(Map params = [:]) {
def serverHostname = "swpsws26"

  pipeline {
  agent any
  
  stages {
   stage('Download') {
    steps {
     sshPublisher(publishers: [sshPublisherDesc(configName: $serverHostname, transfers: [sshTransfer(execCommand: '''
      echo "INFO: Downloading $filename from $ReleaseNumber"
      echo "INFO: $serverHostname"
     ''', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
    }
   }
  }
}
}

{code}

m@phrk.de (JIRA)

unread,
Feb 27, 2018, 3:10:21 AM2/27/18
to jenkinsc...@googlegroups.com

m@phrk.de (JIRA)

unread,
Feb 27, 2018, 3:10:21 AM2/27/18
to jenkinsc...@googlegroups.com
Stephan Watermeyer edited a comment on Improvement JENKINS-27963
First test was also successful here. Still have two entries in the DropDown List:

!2018-02-27_084410.jpg|thumbnail!

Further: Would it be possible to get the _configNamevalue _from a variable? Currently i need to hardcode this value in my pipeline...
{code:java}
sshPublisher(publishers: [sshPublisherDe sc(configName: 'swpsci06', transfers: [sshTransfer(execCommand: '', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)]){code}
I would like to do something like. The variable "ReleaseNumber" is getting populate from my paramterized build.
{code:java}
#!/usr/bin/env groovy

def call(Map params = [:]) {
def serverHostname = "swpsws26"

  pipeline {
  agent any
  
  stages {
   stage('Download') {
    steps {
     sshPublisher(publishers: [sshPublisherDesc(configName: $serverHostname, transfers: [sshTransfer(execCommand: '''
      echo "INFO: Downloading $filename from $ReleaseNumber"
      echo "INFO: $serverHostname"
     ''', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
    }
   }
  }
}
}

{code}

m@phrk.de (JIRA)

unread,
Feb 27, 2018, 3:10:25 AM2/27/18
to jenkinsc...@googlegroups.com
Stephan Watermeyer edited a comment on Improvement JENKINS-27963
[~slide_o_mix]: First test was also successful here. Still have two entries in the DropDown List:


!2018-02-27_084410.jpg|thumbnail!

Further: Would it be possible to get the _configNamevalue _from a variable? Currently i need to hardcode this value in my pipeline...
{code:java}
sshPublisher(publishers: [sshPublisherDe sc(configName: 'swpsci06', transfers: [sshTransfer(execCommand: '', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)]){code}
I would like to do something like. The variable "ReleaseNumber" is getting populate from my paramterized build.
{code:java}
#!/usr/bin/env groovy

def call(Map params = [:]) {
def serverHostname = "swpsws26"

  pipeline {
  agent any
  
  stages {
   stage('Download') {
    steps {
     sshPublisher(publishers: [sshPublisherDesc(configName: $serverHostname, transfers: [sshTransfer(execCommand: '''
      echo "INFO: Downloading $filename from $ReleaseNumber"
      echo "INFO: $serverHostname"
     ''', execTimeout: 120000, sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
    }
   }
  }
}
}

{code}

wapinet@mail.ru (JIRA)

unread,
Feb 27, 2018, 9:11:05 AM2/27/18
to jenkinsc...@googlegroups.com

after 1.19 settings are not saving.

  • Remove prefix
  • Remote directory
    this is important regression

wapinet@mail.ru (JIRA)

unread,
Feb 27, 2018, 9:11:07 AM2/27/18
to jenkinsc...@googlegroups.com
Gemor Roj edited a comment on Improvement JENKINS-27963
after {{1.19}} settings are not saving.
- Remove prefix
- Remote directory

this is important regression

wapinet@mail.ru (JIRA)

unread,
Feb 27, 2018, 9:11:12 AM2/27/18
to jenkinsc...@googlegroups.com
Gemor Roj edited a comment on Improvement JENKINS-27963
after {{1.19}} settings are not saving ( {{ 1.18 }} works fine).

- Remove prefix
- Remote directory

this is important regression

wapinet@mail.ru (JIRA)

unread,
Feb 27, 2018, 9:11:12 AM2/27/18
to jenkinsc...@googlegroups.com
Gemor Roj edited a comment on Improvement JENKINS-27963
after {{1.19}} settings are not saving (1 . 18 works fine).
- Remove prefix
- Remote directory

this is important regression

sorin.sbarnea@gmail.com (JIRA)

unread,
Apr 28, 2018, 1:16:05 PM4/28/18
to jenkinsc...@googlegroups.com
Sorin Sbarnea reopened an issue
 

As of latest version of the plugin and Jenkins (LTS) 2.89.4 this plugin does not expose any pipeline functionality.

/pipeline-syntax/ - does not contain any ssh function listed (ticket screenshot is outdated because now the dropdown contains function names)

/pipeline-syntax/html – does not contain any "ssh" occurence

Jenkins log does not report any errors or warnings related to ssh plugin, and it was restarted after installation.

Change By: Sorin Sbarnea
Resolution: Fixed
Status: Resolved Reopened

slide.o.mix@gmail.com (JIRA)

unread,
Apr 28, 2018, 7:22:07 PM4/28/18
to jenkinsc...@googlegroups.com
Alex Earl commented on Improvement JENKINS-27963
 
Re: Please add support for jenkins pipeline plugin to publish-over-ssh

Gemor Roj Please open a new issue.

Sorin Sbarnea I am not able to reproduce your issue. I've attached my screenshot of running under 2.89.4 and using the pipeline syntax to generate snippets.

slide.o.mix@gmail.com (JIRA)

unread,
Apr 28, 2018, 7:22:09 PM4/28/18
to jenkinsc...@googlegroups.com
Alex Earl updated an issue
 
Change By: Alex Earl
Attachment: 2018-04-28 16_19_35-Greenshot.png

slide.o.mix@gmail.com (JIRA)

unread,
Apr 28, 2018, 7:22:10 PM4/28/18
to jenkinsc...@googlegroups.com
Alex Earl resolved as Fixed
Change By: Alex Earl
Status: Reopened Resolved
Resolution: Fixed
Reply all
Reply to author
Forward
0 new messages