TYPO3.Surf is a package for FLOW3 to do automatic deployments for FLOW3 applications. However as the concepts of TYPO3.Surf are pretty generic, why not deploying a TYPO3 v4/v6 website with Surf?
Today we’re going to learn how to setup a TYPO3.Surf installation.
You can use one TYPO3.Surf setup to deploy as many different sites or applications as you want. So you don’t need a TYPO3.Surf for each project, but one for them all. TYPO3.Surf does not need a webserver. Actually it does not provide any web interface but is completely CLI based. For the moment we will trigger/execute TYPO3.Surf manually by hand. Later we could have an Jenkins to do that for us.
It’s now much easier to install TYPO3 Surf using the „composer“.
See my comment below this article.
First, we need a blank FLOW3 installation:
git clone --recursive git://git.typo3.org/FLOW3/Distributions/Base.git SurfNTurf cd SurfNTurf ./flow3 cache:warmup
Next, we install TYPO3.Surf:
./flow3 package:import TYPO3.Surf
./flow3 package:activate TYPO3.Surf # find out which new commands are provided by the package "TYPO3.Surf" ./flow3 help
# the package itself is available here: ls -l Packages/Application/TYPO3.Surf/
Basically thats it. To actually use TYPO3.Surf you need to write a Surf configuration. They are pretty simple PHP-Files, placed in
Build/Surf/. Later you will have one configuration for each installation/website (project/customer) and node (staging, production/live) on which you are going to deploy to. Currently TYPO3.Surf provides everything you need for deploying a FLOW3 application. However we need to cover some special needs for TYPO3v4/v6. Some TYPO3.Surf changes for that are already pending in Gerrit for review and some more are in the pipeline.
How to write your own Surf configuration, what you will need to deploy a TYPO3v4/v6 installation, what a „Workflow“, „Application“ and a „Node“ is, will be covered in the next blog post.
For the time being you will find the recent TYPO3.Surf documentation here.