Opened 2 months ago

Last modified 11 hours ago

#23830 new enhancement

Update README to get a development environment for metrics-web going

Reported by: irl Owned by: metrics-team
Priority: Medium Milestone:
Component: Metrics/Website Version:
Severity: Normal Keywords:
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Attempting to set up a development environment for metrics-web is not easy.

There is a reference to Debian packages that don't appear to exist, for example I think r-cran-java should be r-cran-rjava maybe?

It would be good to have a knowledgable person go over the whole thing and double check it.

Child Tickets

Change History (10)

comment:1 Changed 2 months ago by iwakeh

Summary: Update README to get a development environment for metrics-lib goingUpdate README to get a development environment for metrics-web going
Type: taskenhancement

Corrected title.

comment:2 Changed 2 months ago by iwakeh

The packages might refer to older debian names or contain typos and need an update, that's true.

Please post more of your findings or questions.

Thanks!

comment:3 Changed 2 months ago by karsten

Alright, I made a start in updating the README in my task-23830 branch. However, I can't determine whether we ever needed that r-cran-[r]java package, and I ran into issues with JSTL packages being missing in Stretch that were still present in Jessie.

iwakeh, did you succeed in setting up a metrics-web instance? If so, can you resolve that JSTL mystery? If not, can you try setting up an instance and, erm, resolve that JSTL mystery? ;) If not, I'll give it another try another time.

comment:4 Changed 7 weeks ago by karsten

From talking to iwakeh: we might want to look into switching ExoneraTor and then metrics-web from Tomcat to Jetty, and maybe that will magically resolve the JSTL mystery.

comment:5 Changed 7 weeks ago by iwakeh

I can also look into this metrics-web issue here first to make instances 'reproducible'.

comment:6 Changed 7 weeks ago by karsten

Whatever is easier. That's why I wrote ExoneraTor first, because it is so much smaller. And metrics-web is not on fire at the moment. Whatever is easier.

comment:7 Changed 4 weeks ago by iwakeh

There is a patch branch of metrics-web available now on ticket #24175. It is not completely finished yet, but usable for web testing and looking at how to integrate a new module, see #24175#comment:2 for more details especially How to test web related things and new modules.

comment:8 Changed 3 days ago by iwakeh

The list of packages won't be part of the future 'readme', b/c releases contain all necessary libraries and enable a better way of reproducing the productive environment as well as a faster start for a development environment. The debian packages also contain way more libraries than necessary.

All referenced jar (except metrics-lib) are available on debian stretch and their packages can be identified with the following query:
https://packages.debian.org/search?suite=stretch&searchon=contents&keywords=xyz.jar

Here the list of debian packages for jetty based metrics-web:

libcommons-codec-java
libcommons-lang3-java
libcommons-lang-java
libcommons-compress-java
liblogback-java
libslf4j-java
libgoogle-gson-java
r-cran-rserve or r-cran-rjava both supply REngine.jar and Rserve.jar
libservlet3.1-java
libxz-java
libjetty9-java
libjetty9-extra-java
libasm-java
libtaglibs-standard-spec-java
libtomcat8-embed-java
libecj-java

comment:9 Changed 14 hours ago by irl

libpostgresql-jdbc-java is missing from this list.

Only r-cran-rjava doesn't contains Rserve.jar, but r-cran-rserve has both.

comment:10 Changed 11 hours ago by irl

I found that I also required tomcat8-annotations-api-8.5.24.jar but this may be due to me using different versions on Debian testing. Next year I'll get a Debian stable virtual machine set up for doing development/testing on.

I also had to disable duplicate="fail" for the war target in the ant script. This is probably suboptimal although I don't really understand what that does. Maybe it's only working for me by chance.

Other than that, using iwakeh's task-24175-stepbystep branch, I was able to set up a development instance! (:

Note: See TracTickets for help on using tickets.