Hello all again!

The Sonatype Open Source Software maven repository is now available for us
and I am uploading a first set of snapshots. I plan to configure the
continuous integration server to upload snapshots automatically.

You can examine the contents of the repository at
http://oss.sonatype.org/content/repositories/snapshots/org/argouml/.

I also added upload of sources so I expect meclipse to be able to download
sources automatically when debugging/browsing into a dependency.

        /Linus


2011/8/19 Linus Tolke Tigris <[email protected]>

> Hello all!
>
> I have now applied for the argouml project to be allowed to publish
> snapshots in this open source repository.
>
>         /Linus
>
>
> 2011/8/10 Linus Tolke Tigris <[email protected]>
>
>> Hello Mark!
>>
>> I mailed mvnrepository.com in an attempt to understand what the purpose
>> and conditions were.
>>
>> Then I noticed that Sonatype provides a server that allows open source
>> projects to publish snapshots (with automatic deletion of old snapshots) (
>> https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide).
>> To me this sounds exactly like what we need.
>>
>>         /Linus
>>
>>
>> 2011/8/9 Mark Fortner <[email protected]>
>>
>>> Hi Linus,
>>> I'll take a look at the toppom.xml file.  One thing I'm curious about is
>>> how to define a minimal checkout.  We're currently doing this with the PSF
>>> files, but it would be nice if you're a module developer, if you're only
>>> checkout was your module, plus an extra pom file.
>>>
>>> Setting up the maven repo on a different box sounds good.  I wonder how
>>> difficult it would be to contribute it directly to mvnrepository.com?
>>> It's the default repo that most people use for open source projects.
>>>
>>> Mark
>>>
>>>
>>>
>>> On Tue, Aug 9, 2011 at 1:38 PM, Linus Tolke Tigris <[email protected]>wrote:
>>>
>>>> Hello again Mark!
>>>>
>>>> My knowledge of maven is limited so I can only guess as to what would be
>>>> the best way forward. Please proceed with this if you think this is the
>>>> natural way to do it. The items 2 - 5 should go in the toppom.xml since 
>>>> they
>>>> involve several projects.
>>>>
>>>> The argouml maven2 respository is an SVN based repository. For snapshot
>>>> jars I would like to publish them from a repository that is not SVN-based
>>>> (to reduce long term disk space usage). Shall I set up a public maven
>>>> repository for publishing the snapshot versions on the build host? Could we
>>>> do that someplace with more available bandwidth and better up-time?
>>>>
>>>>         /Linus
>>>>
>>>>
>>>>
>>>> 2011/8/9 Mark Fortner <[email protected]>
>>>>
>>>>> Hi Linus,
>>>>> It sounds like you've made a lot of progress towards getting the Maven
>>>>> build working. Perhaps our next step should be to try and get the an
>>>>> installable build working.  To do this we'd need to:
>>>>>
>>>>>    1. Modify the pom's so that they're picking up the resources
>>>>>    properly and putting them in the jar files.
>>>>>    2. Create assemblies that combine the JAR files and the
>>>>>    dependencies into a single installable zip file.
>>>>>    3. Create the webstart build using the WebStart mojo:
>>>>>    http://mojo.codehaus.org/webstart/webstart-maven-plugin/
>>>>>    4. Create the Mac build using the Mac/Maven mojo:
>>>>>    http://mojo.codehaus.org/osxappbundle-maven-plugin/
>>>>>
>>>>> It might also be worth taking a look at the IzPack mojo.  This would
>>>>> allow us to generate a cross-platform installer, with support for optional
>>>>> module downloads and installs.
>>>>> http://izpack.codehaus.org/izpack-maven-plugin/index.html
>>>>>
>>>>> What do you think?
>>>>>
>>>>> Mark
>>>>>
>>>>>
>>>>> On Tue, Aug 9, 2011 at 12:19 PM, Linus Tolke Tigris 
>>>>> <[email protected]>wrote:
>>>>>
>>>>>> Hello Mark!
>>>>>>
>>>>>> The work I have done is with almost no maven experience so I will try
>>>>>> to understand what you are asking and answer.
>>>>>>
>>>>>> Let me first describe how it works now.
>>>>>>
>>>>>> The maven-site job is job with everything. It checks out argouml (and
>>>>>> argouml-actionscript3) from trunk and runs maven targets install and site
>>>>>> using the file argouml/tools/maven/toppom.xml. This includes running all
>>>>>> tests, checkstyle, pmd and findbugs. This also installs the
>>>>>> argouml/trunk/pom.xml (argouml-core) in the local repository as a 
>>>>>> snapshot.
>>>>>>
>>>>>> The argouml-tools and parentpom jobs just stores their respective poms
>>>>>> in the local repository. These poms are used by other jobs.
>>>>>>
>>>>>> All other maven jobs (argouml-actionscript3, argouml-app,
>>>>>> argouml-core-diagrams-activity2, argouml-core-diagrams-class2,
>>>>>> argouml-core-diagrams-deployment2, argouml-core-diagrams-sequence2,
>>>>>> argouml-core-diagrams-state2, argouml-core-diagrams-structure2,
>>>>>> argouml-core-model, argouml-core-model-euml, argouml-core-model-mdr,
>>>>>> argouml-core-notation, argouml-core-transformer, and
>>>>>> argouml-core-umlpropertypanels) just checks out the specific subproject,
>>>>>> fetches libraries from the argouml maven2 repository of released 
>>>>>> artifacts
>>>>>> and fetches poms and newly built snapshot versions of things built by 
>>>>>> other
>>>>>> jobs from the local repository. These uses the install target that runs 
>>>>>> all
>>>>>> tests and installs the resulting jar in the local repository.
>>>>>>
>>>>>> The Jenkins/Hudson maven plugin has functions that uses the knowledge
>>>>>> of things deployed in the local repository to start jobs when 
>>>>>> dependencies
>>>>>> are updated. This can be seen as Upstream projects and Downstream 
>>>>>> projects
>>>>>> on each project. For an example, see
>>>>>> http://closettop.homelinux.org:8080/job/argouml-app/.
>>>>>>
>>>>>> I will now attempt to answer your questions.
>>>>>>
>>>>>> *How mavenized is the rest of the build currently?*
>>>>>> So far my goal has been merely to avoid maintaining tools for the
>>>>>> static checks so an update of checkstyle of findbugs will be a simple 
>>>>>> change
>>>>>> in a single file and to use Jenkins reports.
>>>>>>  *
>>>>>> *
>>>>>> *Do you build deployable artifacts?*
>>>>>> I am not sure. They are not signed, the build host does not have the
>>>>>> key, but they are deployed in the local repository on the build host.
>>>>>> *
>>>>>>
>>>>>> *
>>>>>> *Do you build JAR files with maven?*
>>>>>> Yes, jar files are installed in the local repository and used by other
>>>>>> jobs.
>>>>>> *
>>>>>> *
>>>>>> *Do the JAR files contain the manifest file and appropriate META-INF
>>>>>> directories?*
>>>>>> I am not sure, I don't think so. I have not bothered about this since
>>>>>> the jars in the local repository are only used to build and run tests in
>>>>>> other maven jobs.
>>>>>> *
>>>>>> *
>>>>>> *Do you build installable artifacts?*
>>>>>>  No.
>>>>>> *
>>>>>> *
>>>>>> *Does the build include assemblies that contain all of the dependent
>>>>>> JARs?*
>>>>>> No.
>>>>>> *
>>>>>> *
>>>>>> *Does the build create the webstart artifacts, the Mac DMG, and Linux
>>>>>> installs?  Have you tried creating RPMs and pkgs for RedHat and Ubuntu
>>>>>> respectively?*
>>>>>>  No.
>>>>>>
>>>>>> *Do all the projects have at least a minimal pom file and appropriate
>>>>>> references to the parent pom?  I noticed that argo-core-diagrams-uml2
>>>>>> didn't, but I don't know if this was intentional or not.*
>>>>>>  No, just the projects mentioned above has poms. My plan is to extend
>>>>>> this one project at the time but I also get the feeling that it would be
>>>>>> good if this could be reviewed by someone with more maven knowledge, like
>>>>>> you, to make sure that this is the right direction.
>>>>>>
>>>>>> *Do the unit tests run, and do you currently generate a report from
>>>>>> the unit tests?*
>>>>>> Yes, well, the Jenkins/Hudson has its own reports that also has the
>>>>>> time dimensions (to see when a test starts to fail and stops failing) see
>>>>>> http://closettop.homelinux.org:8080/job/argouml-app/.
>>>>>>
>>>>>> The maven-site job also runs the mvaen site target to generate the
>>>>>> maven site but I see now that there is no rapport from the JUnit tests 
>>>>>> while
>>>>>> the other reports are there. See here:
>>>>>> http://closettop.homelinux.org:8080/job/maven-site/site/argouml-app/project-reports.html
>>>>>>
>>>>>> *Do you currently deploy the artifacts to a mvn repository (like
>>>>>> artifactory) so that if you're doing a build of module you don't have to
>>>>>> check out all of the other argouml projects?  If it's deployed to a mvn
>>>>>> repository, and you do a mvn build, it will download the JARs for
>>>>>> argouml-core* and any other dependent projects.  This minimizes the 
>>>>>> download
>>>>>> time, and lets people get up and running fairly quickly.
>>>>>> *
>>>>>> SNAPSHOT jars are only installed in the local repository on the build
>>>>>> host so that the other jobs can benefit from this. Other developers 
>>>>>> cannot
>>>>>> currently benefit from these builds.
>>>>>>
>>>>>> The java-interfaces jar should be build as a SNAPSHOT and installed in
>>>>>> the local repository by a job but I have not dared to run the mdr 
>>>>>> generation
>>>>>> from maven. Instead java-interfaces jar is treated as an external library
>>>>>> and taken from the argouml maven2 repository. The antlr builds, I have 
>>>>>> not
>>>>>> dared to address either.
>>>>>>
>>>>>> In an attempt not to confuse things I have confused things by using
>>>>>> different version numbers for the maven-builds SNAPSHOT jars and for the
>>>>>> development and stable builds. The maven-builds are only at 0.2. I have
>>>>>> attempted to state this version number in as few places as possible. I 
>>>>>> found
>>>>>> a maven discussion post with some pointers to do this.
>>>>>>
>>>>>>          /Linus
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2011/8/9 Mark Fortner <[email protected]>
>>>>>>
>>>>>>> Hi Linus,
>>>>>>> How mavenized is the rest of the build currently?
>>>>>>>
>>>>>>>    - Do you build deployable artifacts?
>>>>>>>       - Do you build JAR files with maven?
>>>>>>>       - Do the JAR files contain the manifest file and appropriate
>>>>>>>       META-INF directories?
>>>>>>>    - Do you build installable artifacts?
>>>>>>>       - Does the build include assemblies that contain all of the
>>>>>>>       dependent JARs?
>>>>>>>       - Does the build create the webstart artifacts, the Mac DMG,
>>>>>>>       and Linux installs?  Have you tried creating RPMs and pkgs for 
>>>>>>> RedHat and
>>>>>>>       Ubuntu respectively?
>>>>>>>    - Do all the projects have at least a minimal pom file and
>>>>>>>    appropriate references to the parent pom?  I noticed that
>>>>>>>    argo-core-diagrams-uml2 didn't, but I don't know if this was 
>>>>>>> intentional or
>>>>>>>    not.
>>>>>>>    - Do the unit tests run, and do you currently generate a report
>>>>>>>    from the unit tests?
>>>>>>>    - Do you currently deploy the artifacts to a mvn repository (like
>>>>>>>    artifactory) so that if you're doing a build of module you don't 
>>>>>>> have to
>>>>>>>    check out all of the other argouml projects?  If it's deployed to a 
>>>>>>> mvn
>>>>>>>    repository, and you do a mvn build, it will download the JARs for
>>>>>>>    argouml-core* and any other dependent projects.  This minimizes the 
>>>>>>> download
>>>>>>>    time, and lets people get up and running fairly quickly.
>>>>>>>
>>>>>>> Mark
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Jul 15, 2011 at 4:36 PM, Linus Tolke Tigris <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hello again Mark!
>>>>>>>>
>>>>>>>> I think I have solved the checksum problem now. I still get errors
>>>>>>>> that the poms are invalid though. I don't understand that problem.
>>>>>>>>
>>>>>>>>         /Linus
>>>>>>>>
>>>>>>>>
>>>>>>>> 2011/7/16 Mark Fortner <[email protected]>
>>>>>>>>
>>>>>>>>> Hi Linus,
>>>>>>>>> When I do a build, I get messages like this:
>>>>>>>>>
>>>>>>>>> [WARNING] *** CHECKSUM FAILED - Error retrieving checksum file for
>>>>>>>>> org/argouml/argouml-mdr/0.32/argouml-mdr-0.32.jar - IGNORING
>>>>>>>>>
>>>>>>>>> [WARNING] *** CHECKSUM FAILED - Error retrieving checksum file for
>>>>>>>>> org/netbeans/mdr/nbmdr/0.0-5/nbmdr-0.0-5.jar - IGNORING
>>>>>>>>>
>>>>>>>>> [WARNING] *** CHECKSUM FAILED - Error retrieving checksum file for
>>>>>>>>> org/argouml/argouml-mdr/0.32/argouml-mdr-0.32.pom - IGNORING
>>>>>>>>> [WARNING] POM for 'org.argouml:argouml-mdr:pom:0.32:test' is
>>>>>>>>> invalid.
>>>>>>>>>
>>>>>>>>> Its dependencies (if any) will NOT be available to the current
>>>>>>>>> build.
>>>>>>>>> [WARNING] POM for 'org.argouml:java-interfaces:pom:0.32:test' is
>>>>>>>>> invalid.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> And a few like this:
>>>>>>>>>
>>>>>>>>> Downloading:
>>>>>>>>> http://argouml-downloads.tigris.org/maven2/org/codehaus/plexus/plexus-containers/1.0-alpha-16/plexus-containers-1.0-alpha-16.pom
>>>>>>>>> [INFO] Unable to find resource
>>>>>>>>> 'org.codehaus.plexus:plexus-containers:pom:1.0-alpha-16' in repository
>>>>>>>>> argouml (http://argouml-downloads.tigris.org/maven2)
>>>>>>>>> Downloading:
>>>>>>>>> http://repo1.maven.org/maven2/org/codehaus/plexus/plexus-containers/1.0-alpha-16/plexus-containers-1.0-alpha-16.pom
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> The project still builds properly though.
>>>>>>>>>
>>>>>>>>> Mark
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Jul 15, 2011 at 2:52 PM, Linus Tolke Tigris <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Hello Mark!
>>>>>>>>>>
>>>>>>>>>> I think I have understood how to synchronize the version numbers
>>>>>>>>>> throughout the maven pom files. It is, however, not synchronized 
>>>>>>>>>> with the
>>>>>>>>>> version numbers of the stable and development builds.
>>>>>>>>>>
>>>>>>>>>> What are the old versions you are referring to? I find the
>>>>>>>>>> java-interfaces jar. Is that the one?
>>>>>>>>>>
>>>>>>>>>> The maven build uses only tools downloaded from maven (with
>>>>>>>>>> version specified in the parentpom.xml). No ant files or property 
>>>>>>>>>> files are
>>>>>>>>>> used so the pom files constitute a complete set of configuration 
>>>>>>>>>> files. As
>>>>>>>>>> you can see I have managed to get it to build in the Hudson server. 
>>>>>>>>>> What is
>>>>>>>>>> it that is not working for you?
>>>>>>>>>>
>>>>>>>>>>       /Linus
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> 2011/7/15 Mark Fortner <[email protected]>
>>>>>>>>>>
>>>>>>>>>>> Hi Linus,
>>>>>>>>>>> Now that you have the new build machine setup, have you made any
>>>>>>>>>>> progress with updating the maven pom files?  There still seem to be 
>>>>>>>>>>> a lot of
>>>>>>>>>>> references to an old mvn repo, where it tries to download outdated
>>>>>>>>>>> artifacts. I did a checkout recently to setup a new machine with 
>>>>>>>>>>> argouml and
>>>>>>>>>>> I'd forgotten how painful it is to get a argouml into a buildable 
>>>>>>>>>>> state.
>>>>>>>>>>>  Not to mention the fact that there's a dissertation, and a whole 
>>>>>>>>>>> lot of
>>>>>>>>>>> tools checked into the svn repo.
>>>>>>>>>>>
>>>>>>>>>>> Regards,
>>>>>>>>>>>
>>>>>>>>>>> Mark
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Sun, Jun 5, 2011 at 5:54 AM, Linus Tolke Tigris <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hello all!
>>>>>>>>>>>>
>>>>>>>>>>>> I have now replaced the old host running the continuous
>>>>>>>>>>>> integration and nightly build with a new one. It is a P4 Dual 
>>>>>>>>>>>> 2.6GHz with
>>>>>>>>>>>> 2GB memory instead of a P2 400MHz with 512M, Ubuntu instead of 
>>>>>>>>>>>> Debian and
>>>>>>>>>>>> Jenkins instead of Hudson. Everything is a lot quicker.
>>>>>>>>>>>>
>>>>>>>>>>>>          /Linus
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=450&dsMessageId=2826053

To unsubscribe from this discussion, e-mail: 
[[email protected]].
To be allowed to post to the list contact the mailing list moderator, email: 
[[email protected]]

Reply via email to