interview questions
indepth understainding of LVS -- how the webserver knows how to communicated with loadbalancer.
difference between nginx and apache
how replication working in mysql
how to install 100 servers automatically
how to install an application on 100 of servers .
post 8080 is not able to telnet --- hint wait state
content of grub
your website is not working -- wat are the steps
wat is pingattack
load on the systems what do you check . what tools do you use
how does apache work . -- the flow
wat is rewrite rules -- why is it used
jboss , weblogic , apache-tomcat
what is DOS attack
how do you know dns is not working .
difference between nginx and apache
how replication working in mysql
how to install 100 servers automatically
how to install an application on 100 of servers .
post 8080 is not able to telnet --- hint wait state
content of grub
your website is not working -- wat are the steps
wat is pingattack
load on the systems what do you check . what tools do you use
how does apache work . -- the flow
wat is rewrite rules -- why is it used
jboss , weblogic , apache-tomcat
what is DOS attack
how do you know dns is not working .
Linux guru
* Hardcore System Administrator, with vast experience in Linux Guru.
* Security and Uptime freak.
* A master of regular expressions and nifty one liner in sed, awk. Perl etc
* Ability to understand and solve complex problems, and to make quick decisions
* Ability to manage large server farms including cloud remotely and in a automated fashion.
* Strong customer service and computer skills.
* Able to manage multiple projects & prioritize diverse tasks
* Ability to solve a problem quickly & completely.
* A solid understanding of a LINUX-based operating system; understands paging and swapping, inter-process communication, devices and what device drivers do, file system concepts. Linux internal hacking.
* A solid understanding of networking/distributed computing environment concepts; understands principles of routing, client/server programming, the design of consistent network-wide file system layouts.
* A deep understanding of networking and networking technologies Switches, Routers, IP routing, load balancers, failure modes, diagnostics,...).
* Strong DNS Concepts.
* In-depth Knowledge of Apache web server and related modules like PHP, mod_security, Tomcat, SSL etc
* - Reverse proxies/HTTP accelerators.
* Ability to setup and maintain High Availability Clusters and Load Balanced environment
* In depth knowledge about Load balancing & High Availability.
* Firewalls (Iptables, BSD packet filter, other commercial etc)
* Understanding of Root kits, IDS, Firewall concepts
* SSH, SSL, Cyphers, PGP etc
* In-depth Knowledge of MRTG, Nagios, selinux.
* Knowledge about Linux system performance monitoring & tuning using tools like sysstat, dstat, oprofile, Frysk, SystemTap.
* Knowledge of MySQL, databases & in-depth fine-tuning procedures & advanced troubleshooting.
* Good knowledge of SQL & Databases (relational and non-relational,the ability to think in sets and graphs, performance tuning).
* Knowledge about RAID & LVM.
* Deep understanding of file systems - ext{234}, ntfs, XFS and recovery techniques.
* Knowledge of replicated & network file systems like NFS, DRBD.
* Knowledge of LDAP & Active Directory.
* Good program debugging skills.
* Scalability (Partitioning, Coupling, Caching etc) & capacity planning concepts.
Key Responsibilities:
* Monitoring of the Network, IT infrastructure and various applications to check for any new and outstanding alarms or issues.
* Troubleshooting, Resolving all Technical issues related to our software/networks and the range of Products and Services
* Design, build & implement infrastructures for large scalable web2.0 applications & networked systems.
* Creating high level architectural design of products & systems.
* Set up Monitoring, Configuration management, Administration & Operation practices for such applications/systems.
* Planning large migrations & executing it.
* Developing better monitoring and systems management practices to maximize uptime.
* Develop/Adopt new & efficient strategies to minimize manual/repetitive work, operational costs, deployment times, response times etc.
* Troubleshooting complex systems/network issues.
* Good understanding of statistics.
* Capacity planning
* Training & managing teams.
* Plan team todo's/goals, product upgrades/releases.
* Documenting processes, troubleshooting information, problems and their resolutions.
* Evaluate software/hardware products (free/commercial) as per needs.
* Prepare & present proposals with respect to systems/software infrastructure.
* Research & build specifications for new products & tools
* Acting as liaisons between junior system administrators, application administrators and software developers
* Converting software package requirements into configuration input for the configuration management system.
* High level log analysis, performance reports, trend analysis.
* Quick in decision making and execution.
* Assist operations teams in daily operations when required
* Assist developers in architectural and design problems.
LVM understanding
lvm understadning - http://ostechnix.wordpress.com/2013/02/03/linux-basics-lvm-logical-volume-manager-tutorial/
we use fdisk to format the raw hard disk
fdisk /dev/sdb
/dev/sdb1 1 14 112423+ 83 Linux
/dev/sdb2 15 28 112455 83 Linux
/dev/sdb3 29 42 112455 83 Linux
/dev/sdb1 1 14 112423+ 83 Linux
/dev/sdb2 15 28 112455 83 Linux
/dev/sdb3 29 42 112455 83 Linux
partprobe
-------------------------------------------------------------------------------------------------------------
now we create a physical volume
pvcreate /dev/sdb1 /dev/sdb2 /dev/sdb3
pvdisplay
pvdisplay
-------------------------------------------------------------------------------------------------------------
We create the volume group vg1
vgcreate vg1 /dev/sdb1 /dev/sdb2
vgdisplay
------------------------------------------------
We now create the logical volume
lvcreate -L 200M vg1 -n lv1
lvdisplay
mkfs.ext4 /dev/vg1/lv1
mount /dev/vg1/lv1 /mnt/
We create the volume group vg1
vgcreate vg1 /dev/sdb1 /dev/sdb2
vgdisplay
------------------------------------------------
We now create the logical volume
lvcreate -L 200M vg1 -n lv1
lvdisplay
mkfs.ext4 /dev/vg1/lv1
mount /dev/vg1/lv1 /mnt/
-------------------------------------------------------------------------------------------------------------
to extend new hdd :
to extend new hdd :
pvcreate /dev/sdb1
vgextend vg1 /dev/sdb1
lvresize -L +100M /dev/vg1/lv1
resize2fs /dev/vg1/lv1
lvdisplay /dev/vg1/lv1
-------------------------------------------------------------------------------------------------------------
vgextend vg1 /dev/sdb1
lvresize -L +100M /dev/vg1/lv1
resize2fs /dev/vg1/lv1
lvdisplay /dev/vg1/lv1
-------------------------------------------------------------------------------------------------------------
the following procedure, in this example we shrink a partition from 10G to 9G:
First, we unmount.
# umount /dev/vg_blah/lv_blah
Check the file system.
# e2fsck -f /dev/vg_blah/lv_blah
Resize the file system.
# resize2fs -p /dev/vg_blah/lv_blah 9G
Reduce the size of the logical volume.
# lvreduce -L -1G /dev/vg_blah/lv_blah
Shrink the volume group if desired.
# vgreduce vg_blah /dev/sdxy
set up of selenium server running in x virtual framebuffer
yum install xorg-x11-server-Xvfb
yum install xorg-x11-fonts*
yum install libXfont
run in background
DISPLAY=:1 xvfb-run java -jar /usr/local/bin/selenium-server-standalone-2.31.0.jar &
yum install xorg-x11-fonts*
yum install libXfont
run in background
DISPLAY=:1 xvfb-run java -jar /usr/local/bin/selenium-server-standalone-2.31.0.jar &
# netstat -tupln |grep :::4444
tcp 0 0 :::4444 :::* LISTEN 17369/java
jenkins -- bigbucket - git - apache-tomcat -- sonar intergration doc
step 1
Installation of jenkins : ( with out apache tomcat , stand alone instance )
( this steps are done on test machine )
yum install java-1.6.0-openjdk
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
Sudo yum install jenkins
All config details :
/etc/sysconfig/jenkins
/var/lib/jenkins/
Installation of jenkins : ( with apache tomcat. Tomcat will inturn run the jeninks.war file )
( these steps are done on Actual machine )
Step 1: Install the JDK\
You can download the latest JDK here: http://www.oracle.com/technetwork/java/javase/downloads/index.html
[root@station1 Downloads]# rpm -ivh jdk-7u7-linux-x64.rpm
[root@station1 Downloads]# JAVA_HOME=/usr/java/jdk1.7.0_
07
[root@station1 Downloads]# export JAVA_HOME
[root@station1 Downloads]# PATH=$JAVA_HOME/bin:$PATH
[root@station1 Downloads]# export PATH
[root@station1 Downloads]# vim /root/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
JAVA_HOME=/usr/java/jdk1.7.0_07/
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
#PATH=$PATH:$HOME/bin
#export PATH
Restart or logout and login
[root@station1 Downloads]# echo $JAVA_HOME
/usr/java/jdk1.7.0_07/
Step 2: Download and Unpack apache-tomcat-7.0.30 (or latest)
To download latest apache-tomcat
[root@station1 Downloads]# tar -xzvf apache-tomcat-7.0.30.tar.gz
[root@station1 Downloads]# mv apache-tomcat-7.0.30 /usr/share/
[root@station1 Downloads]# vim /etc/init.d/tomcat
#!/bin/bash
# description: Tomcat Start Stop Restart
# processname: tomcat
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/jdk1.7.0_07
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/usr/share/apache-tomcat-7.0.30
case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0
[root@station1 ~]# chmod 755 /etc/init.d/tomcat
[root@station1 ~]# chkconfig --add tomcat
[root@station1 ~]# chkconfig --level 234 tomcat on
[root@station1 ~]# chkconfig --list tomcat
tomcat 0:off 1:off 2:on 3:on 4:on 5:off 6:off
[root@station1 ~]# service tomcat stop
Using CATALINA_BASE: /usr/share/apache-tomcat-7.0.30
Using CATALINA_HOME: /usr/share/apache-tomcat-7.0.30
Using CATALINA_TMPDIR: /usr/share/apache-tomcat-7.0.30/temp
Using JRE_HOME: /usr/java/jdk1.7.0_07
Using CLASSPATH: /usr/share/apache-tomcat-7.0.30/bin/bootstrap.jar:/usr/share/apache-tomcat-7.0.30/bin/tomcat-juli.jar
[root@station1 ~]# service tomcat start
Using CATALINA_BASE: /usr/share/apache-tomcat-7.0.30
Using CATALINA_HOME: /usr/share/apache-tomcat-7.0.30
Using CATALINA_TMPDIR: /usr/share/apache-tomcat-7.0.30/temp
Using JRE_HOME: /usr/java/jdk1.7.0_07
Using CLASSPATH: /usr/share/apache-tomcat-7.0.30/bin/bootstrap.jar:/usr/share/apache-tomcat-7.0.30/bin/tomcat-juli.jar
[root@station1 ~]# service tomcat restart
Using CATALINA_BASE: /usr/share/apache-tomcat-7.0.30
Using CATALINA_HOME: /usr/share/apache-tomcat-7.0.30
Using CATALINA_TMPDIR: /usr/share/apache-tomcat-7.0.30/temp
Using JRE_HOME: /usr/java/jdk1.7.0_07
Using CLASSPATH: /usr/share/apache-tomcat-7.0.30/bin/bootstrap.jar:/usr/share/apache-tomcat-7.0.30/bin/tomcat-juli.jar
Using CATALINA_BASE: /usr/share/apache-tomcat-7.0.30
Using CATALINA_HOME: /usr/share/apache-tomcat-7.0.30
Using CATALINA_TMPDIR: /usr/share/apache-tomcat-7.0.30/temp
Using JRE_HOME: /usr/java/jdk1.7.0_07
Using CLASSPATH: /usr/share/apache-tomcat-7.0.30/bin/bootstrap.jar:/usr/share/apache-tomcat-7.0.30/bin/tomcat-juli.jar
For logs
[root@station1 ~]# less /usr/share/apache-tomcat-7.0.30/logs/catalina.out
We can now access the Tomcat Manager page at
[root@station1 ~]# firefox http://station1.com:8080
copy the jenkins.war file to the tomcats
Jenkins home dir will be /root/.jenkins
We can access jenkins
step 2
-- Configure jenkins for git -- need to add plugins from --> manage plugins
-- create new jobs for each product ( eg:somedomain.com )
step 3
Create Bit Bucket accounts
-- Add accounts in bit bucket at product level eg: somedomain1, somedomain2, etc
-- Separate email ids need to be created for each product eg: project1@domain.com,porject2@domain.com
-- cretate product level repo :
-- Upto 5 users per account can be added at no cost as per bit bucket pricing terms
-- emails will be sent to each team members
-- install git in local machine , follow inrustions "start from stratch " ( this could be done a git-gui client )
-- updated .git/config file
[user]
name = agnello
email = agnello@domain.com
-- steps to be follwoed 1st time on local machine by TL
mkdir /path/to/your/project
cd /path/to/your/project
git init
git remote add origin https://<<the https URL from BB>>
-- step to be done on Developer machines
-- install git-core
-- access BB URL from the email he would recv .
-- Once he logs into BB -- systems team will auth him to grant access to repo.
-- on the linux/ubuntu Konsole he creats a clone repo
Cloning into cs442-spring12-jdoe...
Username: jdoe
Password: *********
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 6 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.
$ ls
cs442-spring12-jdoe/
Adding files and commiting to the local repository
$ cd cs442-spring12-jdoe
$ git status
# On branch master
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# MyNewProject/
nothing added to commit but untracked files present (use "git add" to track)
$ git add MyNewProject
$ git config user.name "John Doe"
$ git config user.email "jdoe@hawk.iit.edu"
$ git commit -m "Initial commit for MyNewProject"
[master 453a4f8] Initial commit for MyNewProject
7 files changed, 416 insertions(+), 0 deletions(-)
create mode 100644 MyNewProject/MyNewProject.xcodeproj/project.pbxproj
create mode 100644 MyNewProject/MyNewProject/AppDelegate.h
create mode 100644 MyNewProject/MyNewProject/AppDelegate.m
create mode 100644 MyNewProject/MyNewProject/MyNewProject-Info.plist
create mode 100644 MyNewProject/MyNewProject/MyNewProject-Prefix.pch
create mode 100644 MyNewProject/MyNewProject/en.lproj/InfoPlist.strings
create mode 100644 MyNewProject/MyNewProject/main.m
$ git log
commit 048c71c22f1d38b1a4c8cb73be55ce351fea641b
Author: John Doe <jdoe@hawk.iit.edu>
Date: Wed Feb 15 22:01:34 2012 -0600
Initial commit for MyNewProject
commit 3caa74862b8f17f356841bfa2d380a817f371ffe
Author: Michael Lee <lee@soi2.org>
Date: Thu Jan 12 16:48:59 2012 -0600
Adding initial README
commit 12cb858e8ecb869d9dc1489283741c9897a3b7f9
Author: Michael Lee <lee@soi2.org>
Date: Thu Jan 12 16:37:00 2012 -0600
Adding Xcode gitignore
step 4
-- On Jenkins server , Login as Jenkins, run ss-keygen
-- copy the .ssh/id_rsa.pub to bit bucket ( with account project1@domain.com ) this is done so that jenkins can connet to BB with our password
-- Add at the New Job level --> configuration -- > source code managt --> << ssh URl from BB >>
step 5
-- In "Manage Jenkins" --> E-mail Notification -->
smtp server -- smtp.gmail.com
Default user e-mail suffix -- username@domain.com
-- check "Use SMTP Authentication"
user name -- jenkins@domain.com
password --- !jenkins@345
use ssl --
smtp port -- 465
Reply-To Address -- noreply@domain.com
Step 6
installing ant
yum install ant
installing maven
cd /tmp
wget http://apache.techartifact.com/mirror/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz
tar zxvf apache-maven-3.0.5-bin.tar.gz
mv apache-maven-3.0.5 /usr/local/
vi /etc/profile.d/maven.sh
export PATH=/usr/local/apache-maven-
3.0.5/bin:$PATH
installing plugins: installed the following jenkins plugin
phing
checkstyle
cloverphp
dry
htmlpublisher
jdepend
plot
pmd
violations
xunit
installing all the pear modules .
pecl install xdebug
pear channel-discover pear.pdepend.org
pear install pdepend/PHP_Depend
pear channel-discover pear.phpmd.org
pear install phpmd/PHP_PMD
pear channel-discover components.ez.no
pear channel-discover pear.symfony-project.com
pear install phpunit/phploc
pear install PHPDocumentor
pear install PHP_CodeSniffer
pear install phpunit/PHP_CodeBrowser
pear install phpunit/PHPUnit
pear install phpunit/ppw
pear install Zend_Framework
pear channel-discover pear.zfcampus.org
pear install zfcampus/ZF
pear channel-discover pear.phing.info
pear install phing/phing
step 7
Update On Jenkins
Understanding of git - branches
there are two branches " master " and " development "
-------------------------------------------------------------
These step are used to check into master 1st time
git init
git remote add origin ssh://git@bitbucket.org/agnellodsouza/somedomain1.git
git add .
git commit -m "First commit"
git push -u origin master
--------------------------------------------------------------
On the developers desktop
git clone -b development ssh://git@bitbucket.org/agnellodsouza/somedomain1.git
git branch development
git checkout development
<<< developer makes some changes to the file README >>>
git push -u origin development
git add .
git commit -m "made changes to README "
git push -u origin development
<< again developer pulls from developement branch >>
git branch
git pull origin development
Once developer checks into the Developer branch jenkins will check if any commits have been made ever 5 min . If it see change in commit it will start the build
-- poll from development branch
-- invoke ant -- using the build.xml
-- run various test ( currently no php unit test for someproject.com)
-- if build successful
-- Using the Git Publisher plugin , will commit to the master branch and create a separate TAG branch.
Can access the url http://192.168.1.13:8080/jenkins
Here are few install plugins in for Jenkins :
------------------------------------------------------------------------------------------------
The content of build.xml file that ant need to invoke
<?xml version="1.0" encoding="UTF-8"?>
<project name="Sample project" default="build">
<target name="build" depends="prepare,lint,perltestcases,phploc,pdepend,phpmd-ci,phpcs-ci,phpcpd,phpcb,phpdoc"/>
<target name="build-parallel"
depends="prepare,lint,tools-parallel,phpcb"/>
<target name="tools-parallel"
description="Run tools in parallel">
<parallel threadCount="2">
<sequential>
<antcall target="pdepend"/>
<antcall target="phpmd-ci"/>
</sequential>
<antcall target="phpcpd"/>
<antcall target="phpcs-ci"/>
<antcall target="phploc"/>
</parallel>
</target>
<target name="clean" description="Cleanup build artifacts">
<delete dir="${basedir}/build/api"/>
<delete dir="${basedir}/build/code-browser"/>
<delete dir="${basedir}/build/coverage"/>
<delete dir="${basedir}/build/logs"/>
<delete dir="${basedir}/build/pdepend"/>
<delete dir="${basedir}/build/phpdox"/>
<delete dir="${basedir}/build/code-browser"/>
</target>
<target name="prepare" depends="clean"
description="Prepare for build">
<mkdir dir="${basedir}/build/api"/>
<mkdir dir="${basedir}/build/code-browser"/>
<mkdir dir="${basedir}/build/coverage"/>
<mkdir dir="${basedir}/build/logs"/>
<mkdir dir="${basedir}/build/pdepend"/>
<mkdir dir="${basedir}/build/phpdox"/>
<mkdir dir="${basedir}/build/code-browser"/>
</target>
<target name="lint">
<apply executable="php" failonerror="true">
<arg value="-l" />
<fileset dir="${basedir}/src">
<include name="**/*.php" />
<modified />
</fileset>
</apply>
</target>
<target name="perltestcases">
<property name="perl" location="/usr/bin/perl"/>
<property name="wrapper" location="${basedir}/wrapper2.pl"/>
<exec executable="${perl}" spawn="false">
<arg value="${wrapper}"/>
<arg value="${jobid}"/>
</exec>
</target>
<target name="phploc" description="phploc can be used to track project size metrics, such as Lines of Code (LOC)">
<exec executable="phploc">
<arg value="--log-csv" />
<arg value="${basedir}/build/logs/phploc.csv" />
<arg path="${basedir}/src" />
</exec>
</target>
<target name="pdepend"
description="Calculate software metrics using PHP_Depend">
<exec executable="pdepend">
<arg value="--jdepend-xml=${basedir}/build/logs/jdepend.xml" />
<arg value="--jdepend-chart=${basedir}/build/pdepend/dependencies.svg" />
<arg value="--overview-pyramid=${basedir}/build/pdepend/overview-pyramid.svg" />
<arg path="${basedir}/src" />
</exec>
</target>
<target name="phpmd"
description="Perform project mess detection using PHPMD">
<exec executable="phpmd">
<arg path="${basedir}/src" />
<mkdir dir="${basedir}/build/phpdox"/>
<mkdir dir="${basedir}/build/phpdox"/>
<arg value="text" />
<arg value="${basedir}/build/phpmd.xml" />
</exec>
</target>
<target name="phpmd-ci"
description="Perform project mess detection using PHPMD">
<exec executable="phpmd">
<arg path="${basedir}/src" />
<arg value="xml" />
<arg value="${basedir}/build/phpmd.xml" />
<arg value="--reportfile" />
<arg value="${basedir}/build/logs/pmd.xml" />
</exec>
</target>
<target name="phpcs"
description="Find coding standard violations using PHP_CodeSniffer">
<exec executable="phpcs">
<arg value="--standard=${basedir}/build/phpcs.xml" />
<arg path="${basedir}/src" />
</exec>
</target>
<target name="phpcs-ci"
description="Find coding standard violations using PHP_CodeSniffer">
<exec executable="phpcs" output="/dev/null">
<arg value="--report=checkstyle" />
<arg value="--report-file=${basedir}/build/logs/checkstyle.xml" />
<arg value="--standard=${basedir}/build/phpcs.xml" />
<arg path="${basedir}/src" />
</exec>
</target>
<target name="phpcpd" description="Find duplicate code using PHPCPD">
<exec executable="phpcpd">
<arg value="--log-pmd" />
<arg value="${basedir}/build/logs/pmd-cpd.xml" />
<arg path="${basedir}/src" />
</exec>
</target>
<target name="phpcb"
description="Aggregate tool output with PHP_CodeBrowser">
<exec executable="phpcb">
<arg value="--log" />
<arg path="${basedir}/build/logs" />
<arg value="--source" />
<arg path="${basedir}/src" />
<arg value="--output" />
<arg path="${basedir}/build/code-browser" />
</exec>
</target>
<target name="phpdoc"
description="Generate API documentation using PHPDocumentor">
<exec executable="phpdoc">
<arg value="--directory" />
<arg path="${basedir}/src" />
<arg value="--target" />
<arg path="${basedir}/build/api" />
</exec>
</target>
</project>
--------------------------------------------------------------------------------
Sonar intergration with jenkins using maven
sonar + maven + jenkins
we leave the sonar conf file as default
/usr/local/bin/sonar-3.5.1/conf/sonar.properties
setting for maven
/usr/local/bin/apache-maven-3.0.5/conf/settings.xml
<profile>
<id>sonar-profile</id>
<properties>
<sonar.language>php</sonar.language>
</properties>
</profile>
<activeProfiles>
<activeProfile>sonar-profile</activeProfile>
</activeProfiles>
setting the pom.xml for maven ( this is to be set a individual project level )
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>arsapi</groupId>
<artifactId>arsapi</artifactId>
<name>ars</name>
<version>1.0</version>
<packaging>pom</packaging>
<build>
<directory>build</directory>
<sourceDirectory>src</sourceDirectory>
<testSourceDirectory>test</testSourceDirectory>
</build>
<properties>
<sonar.language>php</sonar.language>
<sonar.dynamicAnalysis>true</sonar.dynamicAnalysis>
<sonar.phpDepend.shouldRun>true</sonar.phpDepend.shouldRun>
<sonar.phpDepend.exclude>vendor/, app/, bin/, web/, src/*/Bundle/*Bundle/Tests</sonar.phpDepend.exclude>
<sonar.phpPmd.shouldRun>true</sonar.phpPmd.shouldRun>
<sonar.phpPmd.analyzeOnly>false</sonar.phpPmd.analyzeOnly>
<sonar.phpCodesniffer.shouldRun>true</sonar.phpCodesniffer.shouldRun>
<sonar.phpcpd.shouldRun>true</sonar.phpcpd.shouldRun>
<sonar.phpUnit.coverage.skip>true</sonar.phpUnit.coverage.skip>
<sonar.phpUnit.skip>true</sonar.phpUnit.skip>
</properties>
</project>
in Jenkins go to the manage configuration and set the maven path .
admin / password
Here are few more imp links :
http://twasink.net/2011/09/20/git-feature-branches-and-jenkins-or-how-i-learned-to-stop-worrying-about-broken-builds/
Subscribe to:
Posts (Atom)