Example PHP Pipeline

This guide covers configuring continuous integration pipelines for PHP projects. If you’re new to Drone please read our Tutorial and build configuration guides first.

Build and Test

In the below example we demonstrate a pipeline that installs the project dependnecies using composer, and then executes the project unit tests. These commands are executed inside a Docker container, downloaded at runtime from DockerHub.

kind: pipeline
type: kubernetes
name: default

steps:
- name: install
  image: composer
  commands:
  - composer install

- name: test
  image: php:7
  commands:
  - vendor/bin/phpunit --configuration config.xml

This example assumes phpunit is a dev dependency in composer.json

{
    "require-dev": {
        "phpunit/phpunit": "3.7.*"
    }
}

Please note you can use any Docker image in your pipeline from any Docker registry. You can use the official php or composer images, or your can bring your own.