This Ruby script thing is too complicated & we can't expect all the people
who build our platform to install Ruby & gems and what not. So, let's get
rid of the Ruby script & replace it with a sh & bat file. I will look into
the sh file, someone on Windows please look into the bat file.

On Tue, Mar 20, 2012 at 11:04 AM, Supun Malinga <[email protected]> wrote:

>
>
> On Tue, Mar 20, 2012 at 10:56 AM, Thilini Ishaka <[email protected]> wrote:
>
>>
>>
>> On Tue, Mar 20, 2012 at 10:50 AM, Chintana Wilamuna <[email protected]>wrote:
>>
>>> Hi,
>>>
>>> Try doing a # gem install zip
>>>
>> Yes.
>> sudo apt-get install libzip-ruby1.8
>>
>
> libzip-ruby1.9.1 is latest it seems.
>
> thanks,
>
>>
>>
>>>
>>> You need to have rubygems installed - http://rubygems.org/pages/download
>>>
>>>     -Chintana
>>>
>>>
>>> On Tue, Mar 20, 2012 at 5:44 AM, Afkham Azeez <[email protected]> wrote:
>>>
>>>> How do you manually run this ruby script?
>>>>
>>>> ruby gen_emma_coverage.rb instrument
>>>> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
>>>>
>>>> Above command did not work on Mac OS X.
>>>>
>>>> I got the following error.
>>>>
>>>> gen_emma_coverage.rb:3:in `require': no such file to load -- zip/zip
>>>> (LoadError)
>>>> from gen_emma_coverage.rb:3
>>>>
>>>>
>>>> On Tue, Mar 20, 2012 at 9:59 AM, Charitha Kankanamge <[email protected]
>>>> > wrote:
>>>>
>>>>> *.em file (EMMA meta data holder) has been generated by "instr"
>>>>> command (xargs -n 1 $JAVA_HOME/jre/bin/java -cp emma.jar emma instr
>>>>> -m overwrite -cp < jarlist.txt), so this command execution did not happen
>>>>> correctly or failed.
>>>>>
>>>>> [1] http://emma.sourceforge.net/userguide/ar01s02s03.html
>>>>>
>>>>>
>>>>>
>>>>> On Tue, Mar 20, 2012 at 9:12 AM, Afkham Azeez <[email protected]> wrote:
>>>>>
>>>>>> OK. I got the hang of it. But now it is failing with the following
>>>>>> error.
>>>>>>
>>>>>> Caused by: java.io.FileNotFoundException: Source
>>>>>> '/Users/azeez/projects/wso2/org/carbon/kernel/trunk/distribution/integration/tests/target/carbontmp1332214836127/wso2carbon-core-4.0.0-SNAPSHOT/coverage.em'
>>>>>> does not exist
>>>>>>  at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:767)
>>>>>> at
>>>>>> org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:706)
>>>>>>  at
>>>>>> org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:670)
>>>>>> at
>>>>>> org.wso2.carbon.integration.framework.utils.ServerUtils.instrumentJarsForEmma(ServerUtils.java:232)
>>>>>>  at
>>>>>> org.wso2.carbon.integration.framework.utils.ServerUtils.startServerUsingCarbonHome(ServerUtils.java:55)
>>>>>>
>>>>>>
>>>>>> On Tue, Mar 20, 2012 at 8:44 AM, Afkham Azeez <[email protected]> wrote:
>>>>>>
>>>>>>> Can you please explain how that method works?
>>>>>>>
>>>>>>> 1. What does the following block do?
>>>>>>>
>>>>>>> for (File file : new File(emmaHome).listFiles()) {
>>>>>>>                 if
>>>>>>> (file.getName().startsWith("org.wso2.carbon.integration.core")) {
>>>>>>>                     ArchiveManipulator archiveManipulator = new
>>>>>>> ArchiveManipulator();
>>>>>>>
>>>>>>> archiveManipulator.extract(file.getAbsolutePath(), emmaHome);
>>>>>>>                 } else if (file.getName().startsWith("emma")) {
>>>>>>>                     emmaJarName = file.getName();
>>>>>>>                 }
>>>>>>>             }
>>>>>>>
>>>>>>>
>>>>>>> 2. What does the following block do?
>>>>>>>
>>>>>>> for (File file : new File[]{new File(carbonHome), emmaOutput}) {
>>>>>>>                 FileUtils.copyFileToDirectory(new File(carbonHome +
>>>>>>> File.separator + "lib" +
>>>>>>>                         File.separator + "emma.jar"), file);
>>>>>>>                 FileUtils.copyFileToDirectory(new File(emmaHome +
>>>>>>> "gen_emma_coverage.rb"), file);
>>>>>>>                 FileUtils.copyFileToDirectory(new File(jarList),
>>>>>>> file);
>>>>>>>             }
>>>>>>>
>>>>>>> gen_emma_coverage.rb is inside the resources directory in the Maven
>>>>>>> module. How does it get picked?
>>>>>>>
>>>>>>>
>>>>>>> On Tue, Mar 20, 2012 at 8:28 AM, Thilini Ishaka <[email protected]>wrote:
>>>>>>>
>>>>>>>> If I recall, we initially generated the coverage report manually by
>>>>>>>> using below set of steps.
>>>>>>>> Then the ServerUtils is used to handle that.
>>>>>>>>
>>>>>>>> 1. Create a jarlist.txt
>>>>>>>> eg:* find
>>>>>>>> /home/thilini/Desktop/wso2greg-3.6.0/repository/components/plugins/ >>
>>>>>>>> /home/thilini/Desktop/wso2greg-3.6.0/repository/components/plugins/jarlist.txt
>>>>>>>> *  (jarlist.txt should contain absolute paths of jars. Remove
>>>>>>>> unwanted jars from the list. If not there will be issues when starting 
>>>>>>>> the
>>>>>>>> server)
>>>>>>>>
>>>>>>>> 2. xargs -n 1 $JAVA_HOME/jre/bin/java -cp emma.jar emma instr -m
>>>>>>>> overwrite -cp < jarlist.txt
>>>>>>>> 3. ruby dynamicImportsPatcher.rb < jarlist.txt  (Before running
>>>>>>>> this step need to install rubyzip. Use sudo apt-get install
>>>>>>>> libzip-ruby1.8)
>>>>>>>> 4. Copy emma.jar to */repository/components/plugins,
>>>>>>>> /repository/components/lib *and */lib *directories.
>>>>>>>> 4. Start Carbon Server
>>>>>>>> 5. Do the test
>>>>>>>> 6. Shutdown server
>>>>>>>> 7. cp wso2greg-3.6.0/coverage.ec .
>>>>>>>> 8. java -cp emma.jar emma report -r html -in coverage.em,
>>>>>>>> coverage.ec
>>>>>>>>
>>>>>>>> <http://coverage.ec/>Thanks
>>>>>>>> Thilini
>>>>>>>>
>>>>>>>> On Tue, Mar 20, 2012 at 8:02 AM, Afkham Azeez <[email protected]>wrote:
>>>>>>>>
>>>>>>>>> Emma has been disabled for the past few months, and inevitably,
>>>>>>>>> the code that does the instrumentation does not work. Can the person 
>>>>>>>>> who
>>>>>>>>> wrote the following method please explain how it works?
>>>>>>>>>
>>>>>>>>> public synchronized static void instrumentJarsForEmma(String
>>>>>>>>> carbonHome) throws IOException {
>>>>>>>>>         String workingDir = System.getProperty("user.dir");
>>>>>>>>>         try {
>>>>>>>>>             System.setProperty("user.dir", carbonHome);
>>>>>>>>>             String emmaHome = System.getProperty("emma.home");
>>>>>>>>>             if (emmaHome == null) {
>>>>>>>>>                 return;
>>>>>>>>>             } else if (!emmaHome.endsWith(File.separator)) {
>>>>>>>>>                 emmaHome += File.separator;
>>>>>>>>>             }
>>>>>>>>>             File emmaOutput = new
>>>>>>>>> File(System.getProperty("emma.output"));
>>>>>>>>>             if (!emmaOutput.exists()) {
>>>>>>>>>                 FileUtils.forceMkdir(emmaOutput);
>>>>>>>>>             }
>>>>>>>>>             String emmaJarName = null;
>>>>>>>>>             for (File file : new File(emmaHome).listFiles()) {
>>>>>>>>>                 if
>>>>>>>>> (file.getName().startsWith("org.wso2.carbon.integration.core")) {
>>>>>>>>>                     ArchiveManipulator archiveManipulator = new
>>>>>>>>> ArchiveManipulator();
>>>>>>>>>
>>>>>>>>> archiveManipulator.extract(file.getAbsolutePath(), emmaHome);
>>>>>>>>>                 } else if (file.getName().startsWith("emma")) {
>>>>>>>>>                     emmaJarName = file.getName();
>>>>>>>>>                 }
>>>>>>>>>             }
>>>>>>>>>
>>>>>>>>>             if (emmaJarName == null) {
>>>>>>>>>                 return;
>>>>>>>>>             }
>>>>>>>>>
>>>>>>>>>             String jarList = System.getProperty("jar.list");
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>             FileUtils.copyFile(new File(emmaHome + emmaJarName),
>>>>>>>>>                     new File(carbonHome + File.separator +
>>>>>>>>> "repository" +
>>>>>>>>>                             File.separator + "components" +
>>>>>>>>> File.separator + "plugins" +
>>>>>>>>>                             File.separator + "emma.jar"));
>>>>>>>>>             FileUtils.copyFile(new File(emmaHome + emmaJarName),
>>>>>>>>>                     new File(carbonHome + File.separator +
>>>>>>>>> "repository" +
>>>>>>>>>                             File.separator + "components" +
>>>>>>>>> File.separator + "lib" +
>>>>>>>>>                             File.separator + "emma.jar"));
>>>>>>>>>             FileUtils.copyFile(new File(emmaHome + emmaJarName),
>>>>>>>>>                     new File(carbonHome + File.separator + "lib" +
>>>>>>>>>                             File.separator + "emma.jar"));
>>>>>>>>>             for (File file : new File[]{new File(carbonHome),
>>>>>>>>> emmaOutput}) {
>>>>>>>>>                 FileUtils.copyFileToDirectory(new File(carbonHome
>>>>>>>>> + File.separator + "lib" +
>>>>>>>>>                         File.separator + "emma.jar"), file);
>>>>>>>>>                 FileUtils.copyFileToDirectory(new File(emmaHome +
>>>>>>>>> "gen_emma_coverage.rb"), file);
>>>>>>>>>                 FileUtils.copyFileToDirectory(new File(jarList),
>>>>>>>>> file);
>>>>>>>>>             }
>>>>>>>>>
>>>>>>>>>             String temp;
>>>>>>>>>             Process process = Runtime.getRuntime().exec(new
>>>>>>>>> String[]{"ruby",
>>>>>>>>>                     "gen_emma_coverage.rb", "instrument",
>>>>>>>>> System.getenv("JAVA_HOME")}, null,
>>>>>>>>>                     new File(carbonHome));
>>>>>>>>>             BufferedReader reader = new BufferedReader(
>>>>>>>>>                     new
>>>>>>>>> InputStreamReader(process.getInputStream()));
>>>>>>>>>             try {
>>>>>>>>>                 while ((temp = reader.readLine()) != null) {
>>>>>>>>>                     System.out.println(temp);
>>>>>>>>>                 }
>>>>>>>>>             } catch (IOException ignored) {
>>>>>>>>>             }
>>>>>>>>>             FileUtils.copyFileToDirectory(new File(carbonHome +
>>>>>>>>> File.separator + "coverage.em"),
>>>>>>>>>                     emmaOutput);
>>>>>>>>>         } finally {
>>>>>>>>>             System.setProperty("user.dir", workingDir);
>>>>>>>>>         }
>>>>>>>>>     }
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> *Afkham Azeez*
>>>>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>>>>>> * <http://www.apache.org/>**
>>>>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>>>>>> twitter: 
>>>>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>>>>>> *
>>>>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>>>>>> *
>>>>>>>>> *
>>>>>>>>> *Lean . Enterprise . Middleware*
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> *Regards*
>>>>>>>>
>>>>>>>> *Thilini Ishaka*
>>>>>>>> *WSO2 Inc. http://wso2.com
>>>>>>>> *
>>>>>>>> *Mobile: +94 71 840 8171 *
>>>>>>>> *            +94 77 211 8797*
>>>>>>>> *Bolg: thiliniishaka.blogspot.com*
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> *Afkham Azeez*
>>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>>>> * <http://www.apache.org/>**
>>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>>>> twitter: 
>>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>>>> *
>>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>>>> *
>>>>>>> *
>>>>>>> *Lean . Enterprise . Middleware*
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> *Afkham Azeez*
>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>>> * <http://www.apache.org/>**
>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>>> twitter: 
>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>>> *
>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>>> *
>>>>>> *
>>>>>> *Lean . Enterprise . Middleware*
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Dev mailing list
>>>>>> [email protected]
>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> *Afkham Azeez*
>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>> * <http://www.apache.org/>**
>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>> twitter: 
>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>> *
>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>> *
>>>> *
>>>> *Lean . Enterprise . Middleware*
>>>>
>>>>
>>>
>>>
>>> --
>>> Chintana Wilamuna
>>> Associate Technical Lead
>>> WSO2, Inc.; http://wso2.com
>>> lean.enterprise.middleware
>>>
>>> phone: +94 75 211 1106
>>> blog: http://engwar.com/
>>> photos: http://flickr.com/photos/chintana
>>> linkedin: http://www.linkedin.com/in/engwar
>>> twitter: twitter.com/std_err
>>>
>>>
>>
>>
>> --
>> *Regards*
>>
>> *Thilini Ishaka*
>> *WSO2 Inc. http://wso2.com
>> *
>> *Mobile: +94 71 840 8171 *
>> *            +94 77 211 8797*
>> *Bolg: thiliniishaka.blogspot.com*
>>
>>
>> _______________________________________________
>> Dev mailing list
>> [email protected]
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>
>
> --
> Supun Malinga,
>
> Software Engineer,
> WSO2 Inc.
> http://wso2.com
> http://wso2.org
> email - [email protected] <[email protected]>
> mobile - 071 56 91 321
>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 
*Afkham Azeez*
Director of Architecture; WSO2, Inc.; http://wso2.com
Member; Apache Software Foundation; http://www.apache.org/
* <http://www.apache.org/>**
email: **[email protected]* <[email protected]>* cell: +94 77 3320919
blog: **http://blog.afkham.org* <http://blog.afkham.org>*
twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
*
linked-in: **http://lk.linkedin.com/in/afkhamazeez*
*
*
*Lean . Enterprise . Middleware*
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to