Phabalicous
Phabalicious is using configuration stored in a special file in the root of your project to run tasks in a shell. This shell can be provided by a Docker Container, a SSH connection, a Kubernetes pod or a local shell. This means, you can store all your DevOps-scripts in a single file and apply it to a list of configurations. Phabalicious tries to abstract away the inner workings of a configuration and give the user a handful useful commands to run common tasks.
Phabalicious integrates nicely with existing solutions like for continuous integration or docker-based setups or diverse hosting environments like Acquia SiteFactory, Lagoon, platform.sh, Kubernetes or other complicated custom IT infrastructures.
Updates
Fabric (the foundation of Phabalicious) took a different route. Fabric 2 is not easily backeards compatible anymore with 1 and so with Phabalicious.
As most of our users are on OS X, handling the Python dependencies got also more complicated.
And only currently a handful developers in our company could write Python. Another hurdle
is that Fabric supports SSH and local connections only, running commands in
different ways (like docker exec
) is quite cumbersome.
So the idea was born, to do another rewrite in PHP and use Symfony console as a base for it. Phabalicious 3 still supports the fabfile-format from version 2, but the command-line syntax changed a lot, and is now more compliant with POSIX.
We've started Phabalicious as a shell-script to reset a Drupal-installation. We now use Fabric as a base for all the tasks and Phabalicious grew to its first official release 1.0.