mirror of
https://github.com/latentPrion/cppbessot.git
synced 2026-04-17 18:44:23 +00:00
Change "DB version" language to "DB dir" language
This commit is contained in:
@@ -3,26 +3,26 @@ include_guard(GLOBAL)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/dbGenerationCommon.cmake")
|
||||
set(_CPPBESSOT_DB_GEN_MIGRATIONS_DIR "${CMAKE_CURRENT_LIST_DIR}")
|
||||
|
||||
function(cppbessot_add_db_gen_migrations_target from_version to_version)
|
||||
# Purpose: Register migration SQL generation between two schema versions.
|
||||
function(cppbessot_add_db_gen_migrations_target from_schema_dir to_schema_dir)
|
||||
# Purpose: Register migration SQL generation between two schema directories.
|
||||
# Inputs:
|
||||
# - from_version: Source schema version (changelog input side).
|
||||
# - to_version: Target schema version (header/changelog output side).
|
||||
# - from_schema_dir: Source schema directory basename.
|
||||
# - to_schema_dir: Target schema directory basename.
|
||||
# - CPPBESSOT_ODB_EXECUTABLE: Path to `odb` compiler.
|
||||
# Outputs:
|
||||
# - CMake target: `db_gen_migrations` (EXCLUDE_FROM_ALL).
|
||||
# - Files under `migrations/<from>-<to>/{sqlite,postgre}`.
|
||||
cppbessot_validate_schema_version("${from_version}")
|
||||
cppbessot_validate_schema_version("${to_version}")
|
||||
cppbessot_validate_schema_dir_name("${from_schema_dir}")
|
||||
cppbessot_validate_schema_dir_name("${to_schema_dir}")
|
||||
|
||||
if("${from_version}" STREQUAL "${to_version}")
|
||||
message(FATAL_ERROR "Migration `from` and `to` versions must differ.")
|
||||
if("${from_schema_dir}" STREQUAL "${to_schema_dir}")
|
||||
message(FATAL_ERROR "Migration `from` and `to` schema directories must differ.")
|
||||
endif()
|
||||
|
||||
cppbessot_get_version_dir(_from_dir "${from_version}")
|
||||
cppbessot_get_version_dir(_to_dir "${to_version}")
|
||||
cppbessot_get_schema_dir_path(_from_dir "${from_schema_dir}")
|
||||
cppbessot_get_schema_dir_path(_to_dir "${to_schema_dir}")
|
||||
cppbessot_abs_path(_workdir "${CPPBESSOT_WORKDIR}")
|
||||
set(_migration_dir "${_workdir}/migrations/${from_version}-${to_version}")
|
||||
set(_migration_dir "${_workdir}/migrations/${from_schema_dir}-${to_schema_dir}")
|
||||
|
||||
add_custom_target(db_gen_migrations
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
@@ -31,7 +31,7 @@ function(cppbessot_add_db_gen_migrations_target from_version to_version)
|
||||
-DCPPBESSOT_TO_VERSION_DIR=${_to_dir}
|
||||
-DCPPBESSOT_MIGRATION_DIR=${_migration_dir}
|
||||
-P "${_CPPBESSOT_DB_GEN_MIGRATIONS_DIR}/scripts/run_odb_migrations.cmake"
|
||||
COMMENT "Generating DB migrations: ${from_version} -> ${to_version}"
|
||||
COMMENT "Generating DB migrations: ${from_schema_dir} -> ${to_schema_dir}"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user