How to set up Apache deployments¶
Directory structure¶
Usually, each project is deployed into the home directory of the user.
This location should be echoed by the get_deployment_location() function.
Each build is stored in the project's home directory.
For an example project with the title foo, a deployment location of $HOME/ and a build ID of 5, the directory structure is as follows:
~/foo/1~/foo/2~/foo/3~/foo/4~/foo/5~/public_html->~/foo/5/
If target_subdirectory echoes a subdirectory name, that will be appended to the symlink for public_html.
For example, if target_subdirectory prints bar:
~/foo/1~/foo/2~/foo/3~/foo/4~/foo/5~/public_html->~/foo/5/bar
Clearing down deployments¶
As you may notice, ~/foo/ will get full of deployments over time.
This can be rectified by clearing down old versions after deployment.
To do this, make a function call to clear_old_apache_deployments.
Arguments must be passed in the format: {number of deployments to keep} {location of deployment}.
Location of deployment should be ~/foo/ in the example above.
After executing: clear_old_apache_deployments 3 ~/foo:
~/foo/3~/foo/4~/foo/5~/public_html->~/foo/5/bar