Hi Ryan,

        Thanks for the reply, My repository is served via apache and the user 
running it is www-data. And yes, the user does have rights in the folder. 
Here's the code I'm trying to run with the contents of the output.txt file from 
the python code.

Python code: 

log_cmd='java -jar -Duser.home=/var/www 
/tmp/integrationtestscript-1.0-SNAPSHOT.jar'
import os
output = os.popen(log_cmd, 'r').read()
ofile = open('/tmp/output.txt','w')
ofile.write(output)
ofile.close()

JAVA code: 

package integrationtestscript;

import com.ibatis.common.jdbc.ScriptRunner;
import java.io.*;
import java.sql.SQLException;
import com.mysql.jdbc.ConnectionImpl;

public class App {
    public static void main(String[] args) {

        try {
            System.out.println("Hello World!");

            File f;
            f=new File("/tmp/myfile.txt");
            if(!f.exists()){
                f.createNewFile();
                System.out.println("New file \"myfile.txt\" has been created to 
the current directory");
            }

            System.out.println("Exit");
            System.exit(0);
        } catch (Exception ex) {
            System.out.println(ex.getMessage());
        }
    }
}

Contents of /tmp/Output.txt after execution as a pre-commit hook.

Hello World!
Permission denied


Regards,

Brent


-----Original Message-----
From: Ryan Schmidt [mailto:subversion-20...@ryandesign.com] 
Sent: Tuesday, December 15, 2009 10:02 PM
To: DEVELA Brent
Cc: 'users@subversion.apache.org'
Subject: Re: Permission Denied Error on Pre-commit Java hook


On Dec 15, 2009, at 04:14, DEVELA Brent wrote:

> I've created my very first hook and what it does is that a Python script 
> calls a java jar file which then creates a file writes something into it. 
> When it is run as a hook, I am getting a Permission Denied error. The script 
> runs perfectly when its directly run using the command line. Any help will be 
> appreciated. How do I get around this security issue? The SVN resides on a 
> Linux box.

How is your repository served -- via apache? or svnserve? As what user is that 
process running? Does that user have permission to write to the place where 
your jar is creating its file?



Reply via email to