News Feed
Sections




News Archive
feed this:

Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Alex Bilbie:
Setup Jenkins and test a PHP project
April 20, 2015 @ 10:14:32

Alex Bilbie has posted a new tutorial to his site showing you how to set up Jenkins to test a PHP project. Jenkins is a popular automated build tool that can be used to do helpful things like automatically run unit tests and execute other tasks when code changes happen (or on an automated schedule).

After a chat with some other developers on Twitter the other day I offered to write a tutorial on how to setup Jenkins from scratch and create a job to test a PHP project. For this tutorial I'm going to use a Digital Ocean droplet (get $10 free credit with this link) but you can use a server from anywhere. Once I've installed and setup Jenkins I'm going to create a job to test my Proton framework.

He walks you through the setup of the server (Ubuntu running on a Digital Ocean instance) and the commands you'll need to get the required tools installed, including Jenkins. He configures Nginx to work as a proxy for the Jenkins installation (config included) and how to secure the installation. This is done via a GitHub OAuth connection and plugin. He helps you get Composer installed, an SSH in place for committing back to GitHub and creating a first job. He also includes a listing of several helpful tools that can be used to test your scripts and applications to provide more detail and better quality to the resulting code.

0 comments voice your opinion now!
jenkins test setup project tutorial digitalocean ubuntu

Link: http://alexbilbie.com/2015/04/setting-up-jenkins/

Stephan Hochdörfer:
Running PHPUnit via Phing on HHVM
February 26, 2015 @ 09:16:58

Stephan Hochdörfer has a quick post showing how he has PHPunit up and working on an HHVM instance. His problem was that the tests were actually executing using the "php" binary, not the HHVM one.

For quite some time we run the unit tests for our libs and tools against PHP and HHVM, at least that is what I thought up to now. As it turns out I missed a minor detail. [...] What happens now is that Phing is executed via HHVM but PHPUnit will still be executed via the PHP binary because the PHPUnit shell script will look for the php binary in the PATH configuration. Since we run HHVM side-by-side with PHP on our Jenkins build nodes I was not able to point /usr/bin/php to /usr/bin/hhvm - which would be the easiest and cleanest solution. I

He shares the workaround he created, creating a symbolic link between the hhvm and php binaries and then executing the Phing task to run the tests. This is being run via Jenkins and uses it's "WORKSPACE" as a container so the main "php" binary isn't overwritten.

0 comments voice your opinion now!
hhvm phpunit test unittest execute binary path jenkins phing task

Link: https://blog.bitexpert.de/blog/running-phpunit-via-phing-on-hhvm/

SitePoint PHP Blog:
More Useful Jenkins Plugins for PHP Projects
December 08, 2014 @ 13:27:32

The SitePoint PHP blog has posted the latest article in their Jenkins + PHP tutorial series (part four) with a look at some other useful plugins for use in your projects.

In the previous articles in this series, we set up Jenkins and our project and did an analysis of the first few builds. So far, we have seen interesting results come back regarding the quality of our project. In this article, we are going to take a look at some more tools and plugins which we can use for inspecting the front end assets.

The list includes tools for evaluating a wide range of technologies involved in web development like:

  • CSSLint
  • JSHint
  • Open tasks (aka @todo)

Each tool has an example of what the output looks like and how to integrate it into the Phing build and in the Jenkins setup.

0 comments voice your opinion now!
jenkins plugin useful list project tutorial

Link: http://www.sitepoint.com/useful-jenkins-plugins-php-projects/

SitePoint PHP Blog:
Analyzing a PHP Project with Jenkins
December 05, 2014 @ 10:58:32

The SitePoint PHP blog has posted the latest part in their Jenkins+PHP series today. In this new article (the final part in the series) they use the Jenkins setup they've walked you through already and actually run the analysis on the PHP project and the resulting information.

The results of Jenkins come from different tools and will be placed in different locations within the Jenkins GUI. [...] Within this article, we will be going through each tool and have a look at what it reports back to us. In the end, we will also look at some extra details Jenkins collects for us. Since we build the same project several times, we will get straight lines within our graphs. In a real project, the graph would fluctuate.

He goes through some examples of the results from his analysis including screenshots and explanations for:

  • PHP_CodeSniffer
  • PHP MD (Mess Detector)
  • PHP CPD (Copy & Paste Detector)
  • PHP Depend
  • PHPLOC (Lines Of Code)
  • PHPUnit
  • PHPDox

He also briefly mentions the "changes" information, showing you what changed in that particular build to help narrow down any issues that might have come up.

0 comments voice your opinion now!
tutorial jenkins project analysis report output

Link: http://www.sitepoint.com/analyzing-php-project-jenkins/

SitePoint PHP Blog:
Installing and Securing Jenkins
December 01, 2014 @ 13:09:43

The SitePoint PHP blog has posted the first part of a new series of articles showing you how to use (and secure) Jenkins, the popular continuous integration tool, to bring more quality to your PHP-based applications.

Earlier this year, I wrote an article about PHP-CI, which you can use as a continuous integration tool for your PHP projects. Within this article I indicated I still liked Jenkins the most as a CI tool. Time to dive into Jenkins and see how we can set this up for our PHP project.

In this first part of the series helps you get Jenkins installed via a package and configure it on the server. He then gets into the steps to secure the installation: configuring users, turning off signups and the type of security to set up (they choose matrix-based). He wraps up the article with a look at installing some useful plugins and using a template to use as a base for setting up your projects.

0 comments voice your opinion now!
series part1 jenkins qualityassurance qa install security tutorial

Link: http://www.sitepoint.com/installing-securing-jenkins/

Ben Ramsey:
Setting Up Jenkins on Amazon Linux for PHP Testing
August 08, 2014 @ 09:36:33

Ben Ramsey has posted a complete walk-through of setting up and configuring Jenkins on an AWS instance for testing your PHP applications.

One of my first tasks at ShootProof was to set up a Jenkins server for continuous integration and get it ready to run unit tests for PHP and JavaScript code. There are plenty of tutorials around the web to help you do just that. This is yet another one, but it's primarily my cleaned-up notes -and less of a tutorial - placed here for my future self to find and provided publicly for all to benefit. These instructions are specifically tailored for setting up Jenkins on an Amazon Linux EC2 instance.

While he doesn't call it a "tutorial" it's still a great step-by-step guide to the things you'll need and the process to follow including commands, installing and starting Jenkins and configuring the environment to execute your tests. The main goal was to set it up for PHP-based applications, but he also throws in the setup of some Javascript testing via Node.js and the PhantomJS/CasperJS combo.

0 comments voice your opinion now!
jenkins tutorial amazon aws instance setup configure linux unittest

Link: http://benramsey.com/blog/2014/08/setting-up-jenkins-on-amazon-linux-for-php-testing/

SensioLabs Insight Blog:
Jenkins integration
March 13, 2014 @ 09:06:25

The latest post to the SensioLabs Insight blog today shows you how you can integrate the service with Jenkins as a part of your pre-existing continuous integration workflow.

One of the main features of SensioLabsInsight service is that it integrates smoothly into your existing workflow and technical infrastructure. We know that most companies use Jenkins as their continuous integration server and for that reason, SensioLabsInsight provides out-of-the-box Jenkins integration.

The integration uses the Insight API to perform the checks and return a report of the results. They step you through the process to get the connection set up (using the API client) and send the request for processing. The result is returned in PMD format, something Jenkins can easily parse and integrate into the pass/fail of the job. You can also get the details of the issues including error message, file location and the priority of the issue.

0 comments voice your opinion now!
jenkins continuous integration sensiolabs insight

Link: http://blog.insight.sensiolabs.com/2014/02/12/jenkins-integration.html

David Adams:
Zero to Jenkins - PHP Continuous Integration
September 27, 2013 @ 12:15:27

David Adams has posted another screencast to YouTube, this time it's about setting up Jenkins for continuous integration in a PHP-based application. (His previous one about using PHP on Digital Ocean is here).

The tutorial walks you through the entire process, including creating the Vagrant configuration:

  • Installing Jenkins via apt-get
  • Setting up the commands needed to run jobs
  • Configuring it to work with a Bitbucket project
  • Installing plugins/upgrades
  • Security configuration

He also shows some of the results of the job executions, both passing and failing. The video's about 50 minutes long, so it's not a quick installation but it is detailed.

0 comments voice your opinion now!
jenkins screencast continuous integration screencast tutorial

Link: https://www.youtube.com/watch?v=PklYO2vYIfc

Carl Vuorinen:
Installing SonarQube with Jenkins integration for a PHP project
September 04, 2013 @ 10:50:25

Carl Vuorinen has posted a tutorial about getting SonarQube to run on your codebase (with the help of Jenkins). SonarQube runs statics on your application including lines of code, number of classes, enforcement of coding standards and duplicated code.

n this second part of my Continous Integration setup I will detail the steps required to install SonarQube (previously called just Sonar, renamed to SonarQube with 3.6 release just a few days ago) and integrate it with the Jenkins server from the previous post so SonarQube will run a daily analysis of our PHP project. In the previous post I covered the installation of Jenkins on a CentOS server and integrated it with GitHub, so if you do not have Jenkins set up you might want to start there.

He talks a bit about what SonarQube can do for you and the features it includes as well as links to a screencast and live demo. From there he gets into the setup and configuration, broken down into steps:

  • Installing SonarQube (with yum)
  • Creating the MySQL database it needs
  • Installing SonarQube Runner
  • Installing PHP environment for SonarQube
  • Integrating SonarQube with Jenkins

There's a quick note at the end about some things that can be done to optimize and clean up the installation too.

0 comments voice your opinion now!
sonarqube jenkins code analysis project tutorial install configure

Link: http://cvuorinen.net/2013/07/installing-sonarqube-with-jenkins-integration-for-a-php-project/

Volker Dusch:
If it's not written in PHP it's irrelePHPant!
November 20, 2012 @ 09:11:51

Volker Dusch has a new tongue-in-cheek post to his site talking about a few pieces of useful software that are not written in PHP...and why not?

Dear PHP Community, we need to have a talk about the insufferable state of your software stacks. It was recently brought to my attention that there is software out there, software we use every day!, that is NOT written in PHP. This is completely unacceptable! We are PHPeople! We're not "Web" Developers, we are the web. And we sure as hell are not some fancy "Software Developer", you can ask anyone on the internet! Seriously: If it's not PHP how will we ever be able to extend and adapt it to our needs! We are slaves of our tools!

He mentions several tools that, yes, while not written in PHP are very useful to just about any developer out there (including git, Puppet and Apache). But, more seriously:

PHP is a language that enables absolute beginners to start creating on the web using FTP and notepad! It let's us realize and validate our ideas blazingly fast and allows us to adapt our successful ideas to beautifully scale with our requirements providing and relying on solid, battle-proof tools.
0 comments voice your opinion now!
written language useful tools git travis apache puppet jenkins opinion



Community Events

Don't see your event here?
Let us know!


example podcast library community opinion series voicesoftheelephpant version php7 laravel5 conference unittest laravel release framework extension api introduction interview language

All content copyright, 2015 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework