In this post, we look at how to use CakePHP's Queue Plugin to efficiently manage and execute background tasks. We'll explore the structure, implementation, and benefits of this approach, with a focus on the `src/Job` directory and related components of Willow CMS.
Migrations in CakePHP
Migrations are a tool in CakePHP for managing database schema changes. They provide a version-controlled way to modify your database structure, making it easier to track, share, and deploy changes across different environments or installations of your application. CakePHP has tools to generate snapshots of your database structure and migrations between them. Given that migrations can also execute query language statements on your database, they can also be used to modify data. Willow CMS has evolved through several releases since going live for this site, with some of those releases requiring changes to the database schema and data. In this post I'll talk you through some practical examples of how I handled this.
Setting Up a Complete Development Environment with Docker for Willow CMS
This article provides a comprehensive breakdown of Docker Compose configuration for Willow CMS's development environment. The setup includes multiple containerized services: the main WillowCMS application server, MySQL database, phpMyAdmin, Jenkins for CI/CD, Mailpit for email testing, and Redis Commander for cache management. Each service is carefully configured with specific ports, volumes, and environment variables to ensure smooth integration and development workflow. The environment can be easily started using a custom setup script that handles initialization, database setup, and provides options for managing the development environment. The article concludes with a detailed explanation of the WillowCMS Dockerfile, covering everything from base image selection to service configuration and process management.
About
Welcome to willowcms.app. This site uses Willow - a content management system I'm building in the open. Here you'll find development updates, feature highlights, and guides on using Willow for your own sites.