NAME
DBIO::PostgreSQL::PostGIS::Deploy - Deploy orchestrator for PostGIS-enabled PostgreSQL schemas
VERSION
version 0.900000
DESCRIPTION
Subclass of DBIO::PostgreSQL::Deploy that swaps in DBIO::PostgreSQL::PostGIS::Introspect so geometry column metadata (geometry_type, srid) is correctly captured during both live-DB and temp-DB introspection.
Activated automatically when DBIO::PostgreSQL::PostGIS::Storage is the active storage class via dbio_deploy_class.
The orchestration itself (install/apply/upgrade/diff, temp-database lifecycle) is inherited unchanged from DBIO::PostgreSQL::Deploy, which in turn derives from DBIO::Deploy::Base::TempDatabase. This class only swaps the introspector via "_introspect_class".
Deploying geometry columns: diff builds its target model by deploying the schema into a freshly created temp database. That database does not inherit the PostGIS extension, so a schema with geometry/ geography columns must declare the extension so the install DDL emits CREATE EXTENSION:
__PACKAGE__->pg_extensions('postgis');
Without it the temp-database deploy fails with type "geometry" does not exist.
METHODS
_introspect_class
Override: returns DBIO::PostgreSQL::PostGIS::Introspect so geometry column metadata (geometry_type, srid) is captured during both live-DB and temp-DB introspection. The inherited _new_introspect (from DBIO::PostgreSQL::Deploy) instantiates this class with the correct schema_filter derived from $schema->pg_schemas.
AUTHOR
DBIO Authors
COPYRIGHT AND LICENSE
Copyright (C) 2026 DBIO Authors
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.