liferay, jira & crowd integration

44
Liferay, Jira & Crowd Integration Prepared By : Attune Infocom Pvt Ltd www.attuneinfocom.in [email protected]

Upload: mustufarahi

Post on 27-Apr-2015

1.046 views

Category:

Documents


2 download

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

Page 1: Liferay, Jira & Crowd Integration

Liferay, Jira & Crowd Integration

Prepared By :

Attune Infocom Pvt Ltdwww.attuneinfocom.in

[email protected]

Page 2: Liferay, Jira & Crowd Integration

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

Page 3: Liferay, Jira & Crowd Integration

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

Page 4: Liferay, Jira & Crowd Integration

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

Page 5: Liferay, Jira & Crowd Integration

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.

Page 6: Liferay, Jira & Crowd Integration

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:

Page 7: Liferay, Jira & Crowd Integration

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.

Page 8: Liferay, Jira & Crowd Integration

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:

Page 9: Liferay, Jira & Crowd Integration

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.

Page 10: Liferay, Jira & Crowd Integration

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.

Page 11: Liferay, Jira & Crowd Integration

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.

Page 12: Liferay, Jira & Crowd Integration

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

Page 13: Liferay, Jira & Crowd Integration

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.

Page 14: Liferay, Jira & Crowd 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:

Page 15: Liferay, Jira & Crowd Integration

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.

Page 16: Liferay, Jira & Crowd Integration

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

Page 17: Liferay, Jira & Crowd Integration

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.

Page 18: Liferay, Jira & Crowd Integration

Crowd Installation18

Licensing

Installation Type

Page 19: Liferay, Jira & Crowd Integration

Crowd Installation19

JDBC Connection

Page 20: Liferay, Jira & Crowd Integration

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.

Page 21: Liferay, Jira & Crowd Integration

Crowd Installation21

Administrator Setting

Page 22: Liferay, Jira & Crowd Integration

Thank you!

Contact Us

For more information :

Attune Infocom Pvt Ltd

www.attuneinfocom.com

[email protected]

Phone : +91-79-40047259Cell : +91-9737339652

22

Page 23: Liferay, Jira & Crowd Integration

1

Page 24: Liferay, Jira & Crowd Integration

2

Page 25: Liferay, Jira & Crowd Integration

3

Page 26: Liferay, Jira & Crowd Integration

4

Page 27: Liferay, Jira & Crowd Integration

5

Page 28: Liferay, Jira & Crowd Integration

6

Page 29: Liferay, Jira & Crowd Integration

7

Page 30: Liferay, Jira & Crowd Integration

8

Page 31: Liferay, Jira & Crowd Integration

9

Page 32: Liferay, Jira & Crowd Integration

10

Page 33: Liferay, Jira & Crowd Integration

11

Page 34: Liferay, Jira & Crowd Integration

12

Page 35: Liferay, Jira & Crowd Integration

13

Page 36: Liferay, Jira & Crowd Integration

14

Page 37: Liferay, Jira & Crowd Integration

15

Page 38: Liferay, Jira & Crowd Integration

16

Page 39: Liferay, Jira & Crowd Integration

17

Page 40: Liferay, Jira & Crowd Integration

18

Page 41: Liferay, Jira & Crowd Integration

19

Page 42: Liferay, Jira & Crowd Integration

20

Page 43: Liferay, Jira & Crowd Integration

21

Page 44: Liferay, Jira & Crowd Integration