Quick Setup guide with Jabox 0.3.0 (SVN + Redmine + Nexus + Jenkins)

630 views
Skip to first unread message

Spiddy

unread,
Mar 17, 2012, 2:32:53 PM3/17/12
to users...@googlegroups.com
Here is a quick setup guide with Jabox 0.3.0 how to prepare an environment with the following tools:

  • SVN
  • Redmine
  • Nexus
  • Jenkins
  • Maven
Steps

- Install Java 6 (Java 7 is not working yet)
- Download Jabox 0.3.0
- Launch Jabox using the following command:

         java -jar jabox-0.3.0-jetty-console.war 

(If you deploy the war to a tomcat make sure it's tomcat 6, tomcat 7 is having some issues)

- Click Start on the jetty-console (default port is 8080)
- Goto http://localhost:8080/ (your default browser will be launched automatically there)
- Login (default credentials: admin/admin)
- Click Containers (don't mind that the login screen is still appearing this is a known issue)

You'll see a Default container preloaded. This by default is configured to install: Tomcat 6.0.35, Jenkins 1.436 (+some plugins), Nexus 1.9.2.3, Sonar 2.10 (+some plugins), Redmine 1.3.0.
If you need to change the configuration edit this file ~/.jabox/config/containers/Default.xml (sorry no complete GUI yet)
(Container is configured to use port 9080 9081 & 9082, if they are not free, change the xml configuration)

- Click Start icon of Default container (be patient, don't click twice, check the jabox jetty-console for logs, tomcat logs once deployed can be seen at ~/.jabox/cargo/Default.log. When deployment is finished browser will show a "Container started" message)
- Wait for about 15-20 minutes for everything to be downloaded & deployed (don't worry files are cached locally for later deploys at ~/.jabox/downloads/ & ~/.jabox/.m2/)
- Click Servers
- Click New Issue Tracking System
  - Put name Redmine
  - Choose Redmine plugin
  - set URL: http://<hostname>:9080/redmine
  - username: admin
  - password: admin
  - Check checkbox: Add Repository Configuration
  - Submit
- Click Projects
- Click New Project
   - Project Name: hello-world
   - Project Description: Hello World
   - Maven Archetype: maven-archetype-webapp
   - Submit (scroll at the end of the page)
(Wait about 30 seconds until it shows 'Project "hello-world" Created.')

The project has been created.

- Click on Redmine tab on the top menu
    You will see the project 'hello-world'
- Click hello-world
- Click Repository
You will see the initial code of the project (created from the maven archetype) connected with Redmine 
- Click Roadmap
You will see an initial 0.0.1 version created ready for issues to be assigned to it.

- Click Jenkins tab on the top menu
  You will see the hello-world project (If the project is marked as red, do a build now and it will compile correctly)

Once the project is blue:
- Click Sonar
You will now see the project "hello-world Maven Webapp" since the sonar build  is launched after the compilation at Jenkins

- Click Jenkins tab again
- Click hello-world
- Click "Perform Maven Release"
- Click "Schedule Maven Release" without any other change

You now have your first release done.

- Hover over the Nexus tab (it will show you as tooltip the url of Nexus, put that in the browser. it will be something like: http://localhost:9080/nexus - Clicking on nexus tab doesn't render well Nexus page since it's not behaving well under frames)
- Search hello-world

You will see three binaries:
- 1.0.0-SNAPSHOT (The snapshot binary of the initial version)
- 1.0.1 (the release we did)
- 1.0.1-SNAPSHOT (The snapshot binary of the next version)

As you can see there are some tricks that you still need to be aware of, but now you have a full ALM platform working with the above OSS tools.

Hope this guide can help in making the setup easier.

raduto...@gmail.com

unread,
Mar 27, 2012, 5:04:53 AM3/27/12
to users...@googlegroups.com
Hi, I had a problem following your tutorial when trying to execute a Jenkins job on a newly created project because of some Maven dependency problems, for example:

message : Error resolving version for plugin 'org.apache.maven.plugins:maven-checkstyle-plugin' 
from the repositories [local (/home/***/.m2/repository), 
central (http://my-machine:9080/nexus/content/groups/public/)]: Plugin not found in any plugin repository

In the end, given that it seemed to be a repository problem, I managed to find a solution searching in the Sonar webpage, so I changed the .m2/settings.xml file found in the Jabox installation directory by adding a mirror:

<mirrors>
<mirror>
    <id>nexus</id>
    <mirrorOf>*,!sonar</mirrorOf>
    <url>http://localhost:9080/nexus/content/groups/public</url>
    <name>Central maven repository</name>
</mirror>
</mirrors>

Now it seems to work, I even managed to make a release :)

Regards,
Radu
Reply all
Reply to author
Forward
0 new messages