[TYPO3-core] TYPO3 CMS Deployment with code and database

Simon Schaufelberger (Schaufi) simonschaufi at guugelmail.de
Wed Mar 18 23:22:13 CET 2015


Hi Loek,
your scripts look quite complicated to understand and I have to dig a 
bit deeper to understand what exactly is going on.

So far I understood that you update the DB based on TCA, is that right? 
How do you handle content changes? I didn't find a place where you 
handle that.

I thought about a hook that will be executed on every db change (insert, 
update, delete) in the TYPO3 backend which will eventually write the sql 
changes to a file which then can be deployed. That would be the cleanest 
way imho.

> I'd be happy to be involved in further
> discussions/developments on this sort of thing.

yes, let's keep the ball rolling together! ;)

Am 18.03.15 um 14:47 schrieb Loek Hilgersom:
> Hi Simon,
>
> You can find my deployment scripts here, maybe you get a few ideas from
> that:
> https://github.com/netcoop/typo3-installer
>
> I have presented this at T3dd12 and the scripts have been updated and
> improved since, although I'd do it slightly different if I would do it
> again.
>
> Average deployment takes me between 15 and 30 seconds, of which there is
> hardly any real downtime. I don't remove tables to import them again,
> just using deltas (mostly update queries).
>
> Hope it helps you somehow, I'd be happy to be involved in further
> discussions/developments on this sort of thing.
>
> Loek
>
>
> On 18-03-15 11:28, Simon Schaufelberger (Schaufi) wrote:
>> Hello,
>> I have done a lot of research about deploying a TYPO3 cms website for
>> many
>> months already but when it comes to deploying TYPO3 cms, I wish there
>> would be
>> more "Inspiring people to share" ;) I hope I can inspire people to
>> share a bit
>> now! :D
>>
>> I want to have a continuous deployment with files and database but
>> without
>> deploying "everything" for every release since that's quite a lot of
>> data that
>> needs to be copied.
>>
>> For the files to sync I use git but the database is really difficult
>> since the
>> database is changed (only) on the dev machine and then exported (with
>> mysqldump)
>> and imported on live again. The big problem here is the few seconds of
>> downtime
>> during deployment when the tables are deleted and imported again. I
>> would like
>> to have a system without any "broken state".
>>
>> What I'm looking for is a proper way to:
>> - copy database (export, rename, import)
>> - import new data into new database with mysql import
>> - switch database somehow (maybe through symlink change in
>> LocalConfiguration.php ?). Another idea: Is there a way to use and change
>> environment variables somehow so that I can tell TYPO3 which database
>> to use?
>>
>> PS: I have written a deployment extension that runs with the scheduler
>> and
>> performs shell scripts so in the end I want a shell script ;)

-- 
Regards, Schaufi


More information about the TYPO3-team-core mailing list