Issue Details (XML | Word | Printable)

Key: MPSITE-24
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Lukas Theussl
Reporter: Julian Dunn
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Maven 1.x Site Plugin

site:deploy with "clean"

Created: 12/Apr/05 04:44 PM   Updated: 13/Sep/05 12:49 PM   Resolved: 13/Sep/05 12:49 PM
Return to search
Component/s: plugin
Affects Version/s: 1.6
Fix Version/s: 1.7

Time Tracking:
Not Specified


 Description  « Hide

The site:deploy with "clean" (clean target site before deployment) functionality does not respect the args set in maven.ssh.args. This causes problems if the maven.ssh.args property specifies a particular SSH keypair to use; when cleaning, the plugin will thereby try to ssh to the target without specifying a key (or any other args) and will fail.

For example:

--8<-- project.properties --8<--
maven.scp.args=-i /home/jdunn/.ssh/id_dsa_maventest
maven.site.deploy.method=ssh
maven.ssh.args=-i /home/jdunn/.ssh/id_dsa_maventest
maven.username=jdunn
maven.site.deploy.clean=true
--8<-- project.properties --8<--

where ~/.ssh/id_dsa_maventest is a public/private keypair verified to work interactively, then

% maven site:deploy
.
.
.
site:sshdeploy:
[tar] Building tar: /home/jdunn/devel/platform/target/platform-1.0-site.tar
[gzip] Building: /home/jdunn/devel/platform/target/platform-1.0-site.tar.gz
[delete] Deleting: /home/jdunn/devel/platform/target/platform-1.0-site.tar
[echo] Cleaning destination first
jdunn@host01's password:
jdunn@host01's password: [exec] Permission denied, please try again.



Julian Dunn added a comment - 22/Apr/05 03:36 PM

I think this patch would probably fix it.

— plugin.jelly.bak 2005-04-22 16:27:06.055396318 -0400
+++ plugin.jelly 2005-04-22 16:28:15.625727301 -0400
@@ -152,7 +152,7 @@
<j:if test="${siteClean}">
<echo>Cleaning destination first</echo>
<exec dir="." executable="${maven.ssh.executable}">

  • <arg line="${siteUsername}@${siteAddress} 'rm -r ${siteDirectory}'" />
    + <arg line="${maven.ssh.args} -l ${siteUsername} ${siteAddress} 'rm -r ${siteDirectory}'" />
    </exec>
    </j:if>

However, my view is that it would be nicer if the "clean" target were able to remove only files that don't exist in the new tarball, so that while the tarball is being pushed over SSH (and if the push fails) then the site doesn't suddenly go AWOL?


Lukas Theussl added a comment - 13/Sep/05 12:49 PM

Fixed, thanks!
The risk about using the clean option is documented on the plugin site.


Lukas Theussl made changes - 13/Sep/05 12:49 PM
Field Original Value New Value
Status Open [ 1 ] Closed [ 6 ]
Assignee Lukas Theussl [ lukas ]
Fix Version/s 1.6.2 [ 11784 ]
Resolution Fixed [ 1 ]