Skip to content

sgolemon/php-release

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHP Release Builder

This is an attempt to standardize and automate most of the build process for PHP releases. It is based heavily on dshafik/php-build.

This container is currently based on ubuntu:xenial.

It will do the following:

  • Clone PHP from the github
  • Create the release branch from the correct branch
  • Update the version number/date/credits in various files
  • Build PHP for nts, debug-nts, zts, and debug-zts and run tests in each version
  • Compare the build -v version against the intended version
  • Create the packages
  • Provide instructions for finalizing the release

Features

  • Repeatable, system independent builds
  • Configuration file for unattended builds
  • Ability to rebuild using release branch

Running the Container

You need to create a workspace directory to mount into the container. This is where the build script will place artifacts. This directory must contain a config file (see config.default for settings). The build process will create/overwrite the following folders and files within /workspace:

  1. php-src/: The checkout from php-src. This checkout is performed fresh with every invocation of php-release.
  2. log/{config,make,test}.{debug-,}{nts,zts}: Results of ./configure, make, and make test across debug/non-debug zts/nts

For example, assuming you created your workspace in your home directory, you could run the following:

docker run --rm -v/home/$USER/workspace:/workspace sgolemon/php-release

or

podman run --rm -v/home/$USER/workspace:/workspace sgolemon/php-release

This will pull the image from hub.docker.com and run it, mounting your local ~/workspace directory as /workspace within the container.

Debian Jessie

For the earlier, debian:jessie version of this image, use:

docker run --rm -v/home/$USER/workspace:/workspace sgolemon/php-release:jessie

or

podman run --rm -v/home/$USER/workspace:/workspace sgolemon/php-release:jessie

About

Docker container for preparing PHP Releases

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published