Skip to content

Feature 003

Feature ID FEA003
Subsystem the feature is part of Epic 03: Prestashop as Service
Responsible person Hyvärinen Sami
Status proposal

Description

Dockerized Service Production.

US094
US095
US210
US211
US212

Preliminary user stories

US094: As a Developer, I would like to use Containers during development.

This user story focuses on enabling containerized development, allowing developers to work in a predefined and reproducible environment. The key outcome of this feature is to reduce configuration inconsistencies, enhance portability across different systems, and facilitate easy integration with CI/CD pipelines. By using containers, developers can also quickly test changes in isolated environments, leading to faster and more efficient development workflows.

US095: As a Service Operator, I would like to be able to run service in Containers.

This user story focuses on enabling containerized service operations, allowing operators to deploy, manage, and scale services efficiently. The key outcome of this feature is to ensure services run consistently across different environments, reduce infrastructure dependency issues, and simplify service orchestration using container management tools like Kubernetes or Docker Compose. By using containers, service operators can benefit from automation, faster rollouts, and improved resource utilization.

US210: As a PrestaShop developer, I want to easily integrate my preferred database MariaDB, with my local PrestaShop development environment using Docker Compose.

This user story focuses on streamlining the database setup for PrestaShop development by enabling seamless integration of MariaDB through Docker Compose. The key outcome of this feature is to provide a ready-to-use configuration that ensures database connectivity, improves consistency across development environments, and simplifies setup for developers.

US211: As a PrestaShop developer, I want to mount my local code into the Docker container to easily make changes and see them reflected immediately.

This user story focuses on improving the development workflow by enabling real-time code updates within a Dockerized PrestaShop environment. The key outcome of this feature is to allow developers to modify code locally and have those changes instantly reflected in the running container without rebuilding or restarting it. This ensures faster debugging, improved efficiency, and a more seamless development experience.

US212: As a PrestaShop developer, I want to use presta-configured Docker image that includes all the necessary PHP extensions and libraries for PrestaShop development.

This user story focuses on streamlining the PrestaShop development environment by providing a pre-configured Docker image containing all essential dependencies. The key outcome of this feature is to simplify setup and reduce configuration overhead for developers, ensuring a consistent and efficient development experience. By utilizing a standardized Docker image, developers can focus on coding and testing without worrying about missing dependencies or environment inconsistencies.

Test case ideas and acceptance criteria

US094

Example test case Acceptance criteria
Test that the containers are up and working Containers work as expected

US095

Example test case Acceptance criteria
Test that the service deployment works Deployment runs smoothly
Test the option to have multiple containers running Containers work and can be orchestrated with docker compose

US210

Example test case Acceptance criteria
test if MariaDB is connected to docker composer Connection is successful
Test if database is updated through containers in docker composer Database updates go through from containers
Test if connection works from new containers Database connection is automaticly made for new containers

US211

Example test case Acceptance criteria
Test if containers are connected to codebase codebase changes are seen in the containers
Test if codebase changes are seen in real-time codebase changes go through without rebuilding or restarting

US212

Example test case Acceptance criteria
Test if docker image contains are necessary configurations Image contains all the necessary dependencies
Test if other developers can use the Image Image is usable by others workers