Levi
Levi

Reputation: 371

How to copy only changed files with Publish over SSH

I'm setting up Jenkins to build and then send changed files to a remote server using SSH. However, using the Publish over SSH plugin, I can only find an option to specify files to send over. I only want to send over files that have changed on GitHub. Is there a way to achieve this?

Upvotes: 5

Views: 1070

Answers (1)

gavsyuk
gavsyuk

Reputation: 306

What you want to do might be outside of the scope of the Publish Over SSH plugin, but it is doable as a shell script.

You can run a command like this to get the files changed between the current commit and the last commit: git diff --name-only $GIT_PREVIOUS_COMMIT $GIT_COMMIT

Then using the results of that you can run a shell scp command.

You can do this in a pipeline or in a execute script post-build action.

Upvotes: 3

Related Questions