Putting all pieces together and shipping with Codeship (part III)


Continuous deployment environment with Docker, AWS EB and Codeship

In the last two episodes we have configured the Docker environment and automated deployment with Elastic Beanstalk, but still the process requires some manual actions and I personally would like to avoid any unnecessary interference in the process. So, today I will walk you through combining all the pieces together and automating the process fully. A continuous integration system will be placed between developer’s environment and final servers. I’ll present how to achieve all of that with Codeship. What make me choose this particular mechanism? The simplicity of setting up, number of additional tools ready to use without installation and finally the fact that it isn’t time consuming.
Continue reading

Automated deployment with AWS Elastic Beanstalk (EB) – Part II


Continuous deployment environment with Docker, AWS EB and Codeship

In the previous part we set up a dedicated Symfony application on Docker virtual containers and prepared environments that may be transferred between developers during project cycle. The next step is to prepare the application for pushing into the cloud. There are many options available on the market – Heroku, DigitalOcean and, my favorite, AWS Elastic Beanstalk.
Continue reading

Continuous Deployment environment with Docker, AWS EB and Codeship

dark happy cartoon whale 1920 wallpaper

Part I – Setting up environment with Docker

I have spent a lot of time watching presentations about automated deployment with Ansible, Capifony, Capistrano or making consistent environments with Vagrant or VirtualBox, but all of those presentations did not tought me how to build environment from scratch, to achieve complete continuous delivery system. And that’s why I decided to create a series of tutorials in which we will configure a virtual machine, join the configuration to the project, automatically deploy and connect everything together with a continuous delivery tool.
Continue reading

From 0 to Continuous deployment in 90 minutes


Two days ago I have published a post at X-Team blog about achieving continuous deployment process. To do so, I choose the Docker for visualization, AWS Elastic Beanstalk as a delivery environment and Codeship as continuous integration system.

The tutorial is created as a video screencasting starting from a basic Symfony application and and carried us to the fully automated environment. We start from configuring Docker on local machine, preparing the integration with Amazon Webservices and automating the deployment with Codeship.
Continue reading

ClassManager – You shall not pass


Hi! First of all I’d like to ask you a question – what’s your name? My name is Piotr and that is derived from the Greek Πετρος (Petros) meaning “stone”.  Next to me is sitting my friend – Michael. Michael is from the Hebrew name מִיכָאֵל (Mikha’el) meaning “who is like God?” (after this article he has new @mention on hipchat).  What do you think? Is it important how the parents call a baby? Does it determine his life? Some people assigns a deep meaning and character traits to the first name. But parents have own criteria to choose the baby’s name – is it beautiful enough? And I’d like to talk about those two criteriums – beautiful and meaningful. But not for baby, unless you think about your code like a baby.
Continue reading

It’s Monday, you could use some motivation


Three days ago I decided to give you some motivation to start doing a code kata (see the Friday Dopamine Dump). Well, if you forgotten, haven’t got any time, had to do something more important and didn’t even try to try, then stop. No excuses! If you really want to do this – just start. Schedule one hour this week, cancel all meeting that time and say your wife that you need man’s time (she will understand, mine did).
Continue reading

Friday Dopamine Dump


When we were in Madrid last year, a book was accompanied me – the new edition of Clean Code authored by Uncle Bob. He describes how the professional programmer acts, works, talks and develops himself. Robert C. Martin claims an example from his own life – a quick, 15 minutes, code kata done twice a day. I think this requires a lot of discipline which might be hard to achieve at the beginning, so I propose you to schedule one hour a week to learn something new. To help you I’d love to start the same. I hope to share my ideas, kata scenarios, links, tools, and the process with you and I hope you would do the same.
Continue reading

SPL Iterators against the performance


This topic’s stayed in my mind for a while. Inspired by Joshua Thijssen’s presentation from PHP UK about (re)discovering the SPL in PHP, I decided to investigate this more carefully. I have to admit that took me some time to understand how the things work and how to not misunderstood the purposes of each iterator and because of lack of documentation it wasn’t that easy. I did a couple of mistakes and probably I will do more, but as Joshua said in his presentation:

The documentation of SPL is completely useless. What can we do? Blog about it!

So, brave yourself. Here my blogpost comes!

Continue reading