Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
DBIx::Class::DeploymenUserdContributed PDBIx::Class::DeploymentHandler::Dad(3)

NAME
       DBIx::Class::DeploymentHandler::Dad - Parent class for
       DeploymentHandlers

METHODS	THAT ARE REQUIRED IN SUBCLASSES
   deploy
       See "deploy" in DBIx::Class::DeploymentHandler::HandlesDeploy.

   version_storage_is_installed
       See "version_storage_is_installed" in
       DBIx::Class::DeploymentHandler::HandlesVersionStorage.

   add_database_version
       See "add_database_version" in
       DBIx::Class::DeploymentHandler::HandlesVersionStorage.

   delete_database_version
       See "delete_database_version" in
       DBIx::Class::DeploymentHandler::HandlesVersionStorage.

   next_version_set
       See "next_version_set" in
       DBIx::Class::DeploymentHandler::HandlesVersioning.

   previous_version_set
       See "previous_version_set" in
       DBIx::Class::DeploymentHandler::HandlesVersioning.

   upgrade_single_step
       See "upgrade_single_step" in
       DBIx::Class::DeploymentHandler::HandlesDeploy.

   downgrade_single_step
       See "downgrade_single_step" in
       DBIx::Class::DeploymentHandler::HandlesDeploy.

   txn_do
       See "txn_do" in DBIx::Class::DeploymentHandler::HandlesDeploy.

ORTHODOX METHODS
       These methods are not actually required as things will probably still
       work if you don't implement them, but if	you want your subclass to get
       along with other	subclasses (or more likely, tools made to use another
       subclass), you should probably implement	these too, even	if they	are
       no-ops.

   database_version
       see "database_version" in
       DBIx::Class::DeploymentHandler::HandlesVersionStorage

   prepare_deploy
       see "prepare_deploy" in DBIx::Class::DeploymentHandler::HandlesDeploy

   prepare_resultsource_install
       see "prepare_resultsource_install" in
       DBIx::Class::DeploymentHandler::HandlesDeploy

   install_resultsource
       see "install_resultsource" in
       DBIx::Class::DeploymentHandler::HandlesDeploy

   prepare_upgrade
       see "prepare_upgrade" in	DBIx::Class::DeploymentHandler::HandlesDeploy

   prepare_downgrade
       see "prepare_downgrade" in
       DBIx::Class::DeploymentHandler::HandlesDeploy

   SUBCLASSING
       All of the methods mentioned in "METHODS	THAT ARE REQUIRED IN
       SUBCLASSES" and "ORTHODOX METHODS" can be implemented in	any fashion
       you choose.  In the spirit of code reuse	I have used roles to implement
       them in my two subclasses, DBIx::Class::DeploymentHandler and
       DBIx::Class::DeploymentHandler::Deprecated, but you are free to
       implement them entirely in a subclass if	you so choose to.

       For in-depth documentation on how methods are supposed to work, see the
       roles DBIx::Class::DeploymentHandler::HandlesDeploy,
       DBIx::Class::DeploymentHandler::HandlesVersioning, and
       DBIx::Class::DeploymentHandler::HandlesVersionStorage.

ATTRIBUTES
   schema
       The DBIx::Class::Schema (required) that is used to talk to the database
       and generate the	DDL.

   schema_version
       The version that	the schema is currently	at.  Defaults to
       "$self->schema->schema_version".

   backup_directory
       The directory where backups are stored

   to_version
       The version (defaults to	schema's version) to migrate the database to

METHODS
   install
	$dh->install

       or

	$dh->install({ version => 1 })

       Deploys the requested version into the database	Version	defaults to
       "schema_version".  Populates "version_storage" with "version" and
       "ddl".

       Note: you typically need	to call	"$dh->prepare_deploy" before you call
       this method.

       Note: you cannot	install	on top of an already installed database

   upgrade
	$dh->upgrade

       Upgrades	the database one step at a time	till "next_version_set"
       returns "undef".	 Each upgrade step will	add a "version", "ddl",	and
       "upgrade_sql" to	the version storage (if	"ddl" and/or "upgrade_sql" are
       returned	from "upgrade_single_step".

   downgrade
	$dh->downgrade

       Downgrades the database one step	at a time till "previous_version_set"
       returns "undef".	 Each downgrade	step will delete a "version" from the
       version storage.

   backup
	$dh->backup

       Simply calls backup on the "$schema->storage", passing in
       "$self->backup_directory" as an argument.  Please test yourself before
       assuming	it will	work.

AUTHOR
       Arthur Axel "fREW" Schmidt <frioux+cpan@gmail.com>

COPYRIGHT AND LICENSE
       This software is	copyright (c) 2015 by Arthur Axel "fREW" Schmidt.

       This is free software; you can redistribute it and/or modify it under
       the same	terms as the Perl 5 programming	language system	itself.

perl v5.24.1			  2015-1DBIx::Class::DeploymentHandler::Dad(3)

NAME | METHODS THAT ARE REQUIRED IN SUBCLASSES | ORTHODOX METHODS | ATTRIBUTES | METHODS | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=DBIx::Class::DeploymentHandler::Dad&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help