Skip to main content
Skip to main content
🚧 Work in Progress

PHP build process

image

The build container is automatically deleted after the build has finished or failed.

Info

The application code is available in the /var/www folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file).

Cancel running build​

To cancel an ongoing build:

  1. Go to service detail
  2. Select "Service dashboard & runtime containers"
  3. Click "Open pipeline detail"
  4. Click "Cancel build"

The build cancellation is available before the build pipeline is finished. When the build is finished, the deployment cannot be cancelled.

Customize PHP build environment​

The default PHP build environment contains:

  • Alpine 3.20
  • selected version of PHP defined in zerops.yml build.base parameter
  • Git and Composer
  • zCLI
Note

To use Ubuntu instead of the default Alpine, set the build.os attribute.

Additional packages and tools can be installed using build.prepareCommands.

PHP build hardware resources​

Build of your PHP application is run in a separate build container with following resource configuration:

HW resourceMinimumMaximum
CPU cores620
RAM8 GB8 GB
Disk1 GB100 GB

The build container is always started with the minimum hardware resources and scales vertically up to the maximum resources.

Info

Hardware resources of the build containers are not charged. The build costs are covered by the standard Zerops project fee.

Build time limit​

The time limit for the whole build pipeline is 1 hour. After 1 hour, Zerops will terminate the build pipeline and delete the build container.

Failure of a build prepare command​

If any prepare command fails, it returns an exit code other than 0 and the build is canceled. Read the build log to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all prepareCommands commands are finished, your custom build environment is ready for the build phase.

Invalidate the build cache​

Some packages or tools can take a long time to install. Therefore, Zerops caches your custom build environment after each successful build where the prepareCommands commands were used. When the second or following build is triggered, Zerops will use the build cache from the previous build if both following conditions are met:

  1. Content of the build.base and build.prepareCommands attributes didn't change from the previous build
  2. The build cache wasn't invalidated in the Zerops GUI.

To invalidate the Zerops build cache go to your service detail in Zerops GUI, choose Service dashboard & runtime containers from the left menu and click on the Open pipeline detail button. Then click on the Invalidate build cache icon.

When the build cache is used, Zerops doesn't run the prepare commands and the build of your application is faster.

Failure of a build command​

If any build command fails, it returns an exit code other than 0 and the build is canceled. Read the build log to troubleshoot the error. If the error log doesn't contain any specific error message, try to run your build with the -v verbose option.

buildCommands:
- composer install -v

If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all buildCommands are finished, the application build is completed and ready for the deploy phase.