liferay, jira & crowd integration
DESCRIPTION
This presentation will help / teches the technical people to integrate three best open source tools, Liferay Portal, Jira Project Management tool and Crowd application.TRANSCRIPT
Liferay, Jira & Crowd Integration
Prepared By :
Attune Infocom Pvt Ltdwww.attuneinfocom.in
Liferay Installation2
Installation requirement for liferay : 1GB RAM Download liferay distribution with various application server for now we will use liferay + tomcat6 Intsall java jdk and environment variable JAVA_HOME set to OS You can Download the desired bundle from http://www.liferay.com/web/guest/downloads/portal and unzip to particular folder Run Liferay by double-click on the startup.bat. Open a browser and go to http://localhost:8080 Liferay have sample data with it (7cogs) to demo application to remove this, delete seven-cog folder from liferay-dir/tomcat/web-apps/… in liferay-dir/data/… also delete hsql database folder Re-start your application using startup.bat Liferay can be configured to use many different databases. i.e. we will change the default database (Hypersonic) of the Liferay-Tomcat bundle to point to a MySQL database
Liferay Installation3
We are now using Liferay v5.2 unifies the configuration of the database in a single file for all application servers. As most other configuration options you can set this up in the portal - ext.properties file as follows (example for MySQL):
jdbc.default.driverClassName=com.mysql.jdbc.Driver jdbc.default.url=jdbc:mysql://localhost/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false jdbc.default.username= jdbc.default.password=
If you don’t have existing portal-ext.pro… file than manually create it and save it to - {liferay-home}\{tomcat}\webapps\ROOT\WEB-INF\classes Now you have to make sure that you have already created database like this - create database lportal character set utf8
If you want configure extra setting than read full administration pdf from liferay.com and install appropriate libraries
Jira Installation4
Pre-requisite for Jira Installation
Browsers – if you have disabled Javascript in your browser or are using a script blocker like NoScript, you will need to enable Javascript for JIRA to get the full experience JIRA has to offer.
Java - JIRA requires a Java Developers Kit (JDK) to be installed on the server and set java home variable JAVA_HOME
Application Server – tomcat 5 or 6 or any other server
Jira installation5
Jira available in two distributions – standalone and ear/war
We will install in war distribution and uses tomcat version 6
First you download your application distribution from http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa and unzip JIRA, Ensure that you download the WAR/EAR version, not the Standalone version that is recommended on the Downloads page.
Jira Configuration for war distribution
6
JIRA needs to be told what type of database you'll be using. The database is specified in$JIRA_INSTALL/edit-webapp/WEB-INF/classes/entityengine.xml Locate the <datasource> tag near the bottom, and change the field-type-name attribute value. See the relevantsetup guide for your database to find out what value should be used for field-type-name:
Also in entityengine.xml , ensure the <transaction-factory>...</transaction-factory> tag contains:
Jira Configuration for war distribution
7
Specify the location of your JIRA Home Directory (note that you need to do this before you build JIRA) Edit the jira-application.properties file (see the JIRA Installation Directory page to find where this file is located), add a 'jira.home' property and set it to your desired location for JIRA home directory. Please use forward-slashes ("/") Tomcat does not come with some libraries required to run JIRA. To fix this, download jira-jars-tomcat6.zip (1.5Mb), and copy the contained jars to Tomcat's lib/ directory. To prevent exceptions related to logging, please ensure that commons-logging-1.0.4.jar and log4j-1.2.15.jar are present in Tomcat's /lib/ directory. Also ensure that these files are not present in Tomcat's webapps/jira/WEB-INF/lib directory.Additionally, if you are running Sun's distribution of Tomcat, download tomcat-dbcp.jar and copy it to the tomcat6/lib directory.
Jira Configuration for war distribution
8
A JIRA 'context' now needs to be set up in Tomcat. To do this:1. Make a Catalina/localhost/ directory in Tomcat's conf/ directory.2. Copy dist-tomcat/tomcat-6/jira.xml from the built JIRA
distribution to your Tomcat's conf/Catalina/localhost/ directory.3. Customise the copied jira.xml as follows:
Jira Integration with crowd9
Prerequisites
1. To install crowd : Refer to the Crowd installation guide for instructions. We will refer to the Crowd root folder as CROWD.
1. To install JIRA (version 3.7.4 or later). Refer JIRA installation guide We will refer to the JIRA root folder as JIRA.
1. Purposes of this document is, we will assume that you have used the 'Standalone' (i.e. the easier and recommended) installation method of JIRA. If you need to install JIRA as an EAR/WAR, simply explode the EAR/WAR and make the necessary changes as described below, then repackage the EAR/WAR.
1. Run the JIRA Setup Wizard, as described in the JIRA documentation During this setup process, you will define the JIRA administrator's username and password. It is easier to do this before you integrate JIRA with Crowd.
1. After setting up JIRA, shut down JIRA before you begin the integration process described below.
Jira Integration with crowd10
The JIRA application will need to locate users from a directory configured in Crowd. You will need to set up a directory in Crowd for JIRA. This directory may be any Crowd-configured directory, such as an LDAP directory hooked up to Crowd or a Crowd internal directory. JIRA also requires particular groups to exist in the directory in order to authenticate users. You need to ensure that these three groups exist in the JIRA Directory in Crowd:jira-usersjira-developersjira-administrators You also need to ensure that the JIRA Directory in Crowd contains at least one user who is a member of all three groups. Log in to the Crowd Administration Console and navigate to Applications > Add Application. Complete the 'Add Application' wizard for the JIRA application. See the instructions. The Name and Password values you specify in the 'Add Application' wizard must match the application. name and application.password that you will set in the JIRA/atlassian-jira/WEB-INF/classes/crowd.properties file.
Jira Integration with crowd11
Once Crowd is aware of the JIRA application, Crowd needs to know which users can authenticate (log in) to JIRA via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorizations for the application.
Jira Integration with crowd12
If you are using the Crowd WAR distribution, then you will need to get the CROWD client libraries from the standalone distribution, available on our download site.Copy the Crowd client libraries and configuration files to JIRA: Copy From Copy To CROWD/client/crowd-integration-client-X.X.X.jar JIRA/atlassian-jira/WEB-INF/lib CROWD/client/conf/crowd.properties JIRA/atlassian-jira/WEB-INF/classes
If you are using JIRA 3.11 or earlier, you will need to remove the seraph-0.7.12.jar file from JIRA's WEB-INF/lib/ directory and replace it with the following file:http://repository.atlassian.com/maven2/com/atlassian/seraph/atlassian-seraph/0.10/atlassian-seraph-0.10.jar
If you are using JIRA 3.12.2 or earlier, you will need to update JIRA's xfire libraries: Remove the xfire-all-1.2.1.jar file from JIRA's WEB-INF/lib/ directory. Copy the following two files from Crowd's client/lib/ directory to JIRA's WEB-INF/lib/ directory: xfire-aegis-1.2.6.jarxfire-core-1.2.6.jar
Jira Integration with crowd13
Replace JIRA's cache configuration file: Copy From CROWD/client/conf/crowd-ehcache.xml Replace File JIRA/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml
Edit JIRA/atlassian-jira/WEB-INF/classes/crowd.properties. Change the following properties: application.name – jira The application name must match the name that you specified when you defined the application in Crowd (see Step 1 above). application.password -- The password must match the one that you specified when you defined the application in Crowd (see Step 1 above). crowd.server.url -- http://localhost:8095/crowd/services/ If your Crowd server's port is configured differently from the default (i.e. 8095), set it accordingly. session.validationinterval -- Set to 0, if you want authentication checks to occur on each request. Otherwise set to the number of minutes between request to validate if the user is logged in or out of the Crowd SSO server. Setting this value to 1 or higher will increase the performance of Crowd's integration.
Jira Integration with crowd - Authenticator
14
Edit the JIRA config file JIRA/atlassian-jira/WEB-INF/classes/osuser.xml. Comment out any existing authentication providers and uncomment/insert the Crowd providers:
Jira Integration with crowd - Authenticator
15
View JIRA/atlassian-jira/WEB-INF/classes/propertyset.xml. If there is no entry for the CrowdPropertySet, add the following <propertyset> item at the end of the file as the last <propertyset> item: <propertyset name="crowd" lass="com.atlassian.crowd.integration.osuser.CrowdPropertySet"/>
At this stage, JIRA is set up for centralised authentication. If you wish, you can now enable single sign-on (SSO) to JIRA.
Skip this step if you are using the JIRA NTLM plugin to enable SSO. Instead, follow the instructions on configuring JIRA for NTLM SSO. Edit JIRA/atlassian-jira/WEB-INF/classes/seraph-config.xml. Change the authenticator node to read: <authenticator class="com.atlassian.crowd.integration.seraph.JIRAAuthenticator"/>
JIRA's authentication and access request calls will now be performed using Seraph. Now when authentication or access request calls are performed versus the OS User framework, the JIRA stack will call the Crowd providers and property set implementations.
Crowd Installation16
Download Crowd. Please check your unzip program before extracting the downloaded archive – see the note on the Crowd installation front page Unzip the download archive into a directory of your choice. Note: Do not specify directory names that contain spaces. We'll refer to this installation directory as {CROWD_INSTALL}. Specify your Crowd Home directory by editing the configuration file at: {CROWD_INSTALL}\crowd-webapp\WEB-INF\classes\crowd-init.properties. The Crowd Home directory is where Crowd will store its configuration information. If you are using the embedded HSQL database, supplied for evaluation purposes, Crowd will also store its database in this directory. To specify the directory:Open the crowd-init.properties file.Choose the appropriate line in the file, depending upon your operatingRemove the # at the beginning of the line.Enter name of the directory you want Crowd to use as its Home directory. On Windows: 1.crowd.home=c:/data/crowd-home
Crowd Installation17
Run the start-up script, found in your {CROWD_INSTALL} directory: start_crowd.bat for Windows.start_crowd.sh for Mac and Unix-based systems.
Point a web browser at http://localhost:8095/crowd where you will see the Crowd Setup Wizard. Follow the instructions in the Wizard. You can also read more information about the Setup Wizard.
Go to the following URL in your web browser: http://localhost:8095/crowd or http://localhost:8095/crowd/console.If there are no errors, you should see the 'License' screen described below.If there is an error in your configuration, you will see the 'Crowd Checklist' screen. Read more about troubleshooting your installation.
Crowd Installation18
Licensing
Installation Type
Crowd Installation19
JDBC Connection
Crowd Installation20
Mail Server
Notification Email Address — The email address which will receive notifications about server events. From Email Address — Crowd will add this email address as the 'sender' on the emails generated by Crowd and sent to users. Subject Prefix — The prefix which will appear at the start of the email subject, for all emails generated by Crowd. This can be useful for email client programs that offer filtering rules. Mail Server Type — Select the 'SMTP Server' radio button. SMTP Host — The hostname of the SMTP mail server, e.g. 'localhost' or 'smtp.acme.com'. SMTP Port — The port on which the SMTP mail server listens. The default is '25'. Username — The username that your Crowd server will use when it logs in to your mail server. Password — The password that your Crowd server will use when it logs in to your mail server.
Crowd Installation21
Administrator Setting
Thank you!
Contact Us
For more information :
Attune Infocom Pvt Ltd
www.attuneinfocom.com
Phone : +91-79-40047259Cell : +91-9737339652
22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21