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)
- 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.