---
sidebar_position: 1
title: "Overview & Goal"
---

# Overview & Goal

---

This guide details the setup and workflow for using **Flyway** to manage automatic database updates during deployments.

By adding each database modification as a new SQL migration file, Flyway can safely execute only the missing migrations in the correct sequence during the CI/CD pipeline. 

This approach eliminates the need for giant SQL files, prevents duplicate executions, removes the need for manual tracking of database changes, and ensures consistency across production environments.

---

## Environment Context

This guide is specifically tailored for the following stack:

- **Database:** PostgreSQL 17
- **Runtime:** Java 17
- **Build Tool:** Maven Wrapper (`mvnw.cmd`)
- **Server:** Tomcat
- **Database State:** Existing production databases
- **CI/CD Environment:** Windows runners
