Changes for version 0.035
- Allow you to control the db_sandbox_builder from a script, to make it easier to use alternative sandbox locations (make it easier to build a database sandbox in a temporary area for testing, for example).
- Added a bit of documention to the temporary sandbox builder to give you a hint of what it might be for.
- Happy New Year 2013! Don't forget to register for an CPAN account this year and release some code!
Documentation
commandline tool to create and manage your migrations
Answers to Frequently Asked Questions
Features of DBIx::Class::Migration
Summary of the commands
Which databases are we building migrations for?
trunate existing tables
create a PNG of you database structure
Downgrade your existing database
drop all tables to the connected database
the dsn for a database you are connecting to
Dump all fixture sets.
Dump specified fixture sets.
fixture sets to dump or load
overwrite an existing migration
help command details
Add a path to @INC
Install a migration version
Install a migration only if needed
Add missing meta data table
reverse engineer a DBIC Schema
the password for a database you are connecting to
Install fixtures to a database
Create migration files.
The namespace of your Schema
Schema and Database Status
Where your migration files live
Specify a particular target migration version
Upgrade your existing database
the user for a database you are connecting to
version status
How to use DBIx::Class::Migration
Add MySQL migration
Using a web framework
Final thoughts
Prepare your first Migration
Upgrade the Database
Bootstrap your project files
Test Your Database
A more advanced database change
Modules
Use your DB Sandbox to run Catalyst
Use the best tools together for sane database migrations
Autocreate a mysql sandbox
Utility to populate fixture data
Autocreate a postgresql sandbox
Control your Perl Migration Run Scripts
Dump fixtures
Populate fixtures
Give your Run Script a Schema
Your migration target directory
DB Sandbox Role
Schema Loader Factory
Tools to manage database Migrations
Build a target_dir in /share
Autocreate a Sqlite sandbox
Build a sandbox at target_dir
Build a tempory target_dir
Build a sandbox in a temporary directory
Custom Moose Types
Use your fixtures in a test case.
Examples
- examples/MusicBase/app.psgi
- examples/MusicBase/bin/my-dbic-migration
- examples/MusicBase/dist.ini
- examples/MusicBase/lib/MusicBase/Schema.pm
- examples/MusicBase/lib/MusicBase/Schema/MigrationScript.pm
- examples/MusicBase/lib/MusicBase/Schema/Result/Artist.pm
- examples/MusicBase/lib/MusicBase/Schema/Result/ArtistCd.pm
- examples/MusicBase/lib/MusicBase/Schema/Result/Cd.pm
- examples/MusicBase/lib/MusicBase/Schema/Result/Country.pm
- examples/MusicBase/lib/MusicBase/Schema/Result/Track.pm
- examples/MusicBase/lib/MusicBase/Schema/ResultSet/Artist.pm
- examples/MusicBase/lib/MusicBase/Web.pm
- examples/MusicBase/lib/MusicBase/Web/Controller/Root.pm
- examples/MusicBase/lib/MusicBase/Web/Model/Schema.pm
- examples/MusicBase/lib/MusicBase/Web/View/HTML.pm
- examples/MusicBase/share/db-diagram-v3.png
- examples/MusicBase/share/etc/musicbase_web.pl
- examples/MusicBase/share/etc/musicbase_web_test.pl
- examples/MusicBase/share/fixtures/1/all_tables/_dumper_version
- examples/MusicBase/share/fixtures/1/all_tables/artist/1.fix
- examples/MusicBase/share/fixtures/1/all_tables/artist/2.fix
- examples/MusicBase/share/fixtures/1/all_tables/cd/1.fix
- examples/MusicBase/share/fixtures/1/all_tables/cd/2.fix
- examples/MusicBase/share/fixtures/1/all_tables/cd/3.fix
- examples/MusicBase/share/fixtures/1/all_tables/track/1.fix
- examples/MusicBase/share/fixtures/1/all_tables/track/2.fix
- examples/MusicBase/share/fixtures/1/all_tables/track/3.fix
- examples/MusicBase/share/fixtures/1/all_tables/track/4.fix
- examples/MusicBase/share/fixtures/1/all_tables/track/5.fix
- examples/MusicBase/share/fixtures/1/all_tables/track/6.fix
- examples/MusicBase/share/fixtures/1/all_tables/track/7.fix
- examples/MusicBase/share/fixtures/1/conf/all_tables.json
- examples/MusicBase/share/fixtures/2/all_tables/_dumper_version
- examples/MusicBase/share/fixtures/2/all_tables/artist/1.fix
- examples/MusicBase/share/fixtures/2/all_tables/artist/2.fix
- examples/MusicBase/share/fixtures/2/all_tables/cd/1.fix
- examples/MusicBase/share/fixtures/2/all_tables/cd/2.fix
- examples/MusicBase/share/fixtures/2/all_tables/cd/3.fix
- examples/MusicBase/share/fixtures/2/all_tables/country/1.fix
- examples/MusicBase/share/fixtures/2/all_tables/country/2.fix
- examples/MusicBase/share/fixtures/2/all_tables/country/3.fix
- examples/MusicBase/share/fixtures/2/all_tables/track/1.fix
- examples/MusicBase/share/fixtures/2/all_tables/track/2.fix
- examples/MusicBase/share/fixtures/2/all_tables/track/3.fix
- examples/MusicBase/share/fixtures/2/all_tables/track/4.fix
- examples/MusicBase/share/fixtures/2/all_tables/track/5.fix
- examples/MusicBase/share/fixtures/2/all_tables/track/6.fix
- examples/MusicBase/share/fixtures/2/all_tables/track/7.fix
- examples/MusicBase/share/fixtures/2/conf/all_tables.json
- examples/MusicBase/share/fixtures/2/conf/countries.json
- examples/MusicBase/share/fixtures/2/countries/_dumper_version
- examples/MusicBase/share/fixtures/2/countries/country/1.fix
- examples/MusicBase/share/fixtures/2/countries/country/2.fix
- examples/MusicBase/share/fixtures/2/countries/country/3.fix
- examples/MusicBase/share/fixtures/3/all_tables/_dumper_version
- examples/MusicBase/share/fixtures/3/all_tables/artist/1.fix
- examples/MusicBase/share/fixtures/3/all_tables/artist/2.fix
- examples/MusicBase/share/fixtures/3/all_tables/artist/3.fix
- examples/MusicBase/share/fixtures/3/all_tables/artist_cd/1-1.fix
- examples/MusicBase/share/fixtures/3/all_tables/artist_cd/1-2.fix
- examples/MusicBase/share/fixtures/3/all_tables/artist_cd/2-3.fix
- examples/MusicBase/share/fixtures/3/all_tables/artist_cd/3-4.fix
- examples/MusicBase/share/fixtures/3/all_tables/cd/1.fix
- examples/MusicBase/share/fixtures/3/all_tables/cd/2.fix
- examples/MusicBase/share/fixtures/3/all_tables/cd/3.fix
- examples/MusicBase/share/fixtures/3/all_tables/cd/4.fix
- examples/MusicBase/share/fixtures/3/all_tables/country/1.fix
- examples/MusicBase/share/fixtures/3/all_tables/country/2.fix
- examples/MusicBase/share/fixtures/3/all_tables/country/3.fix
- examples/MusicBase/share/fixtures/3/all_tables/country/4.fix
- examples/MusicBase/share/fixtures/3/all_tables/country/5.fix
- examples/MusicBase/share/fixtures/3/all_tables/country/6.fix
- examples/MusicBase/share/fixtures/3/all_tables/track/1.fix
- examples/MusicBase/share/fixtures/3/all_tables/track/2.fix
- examples/MusicBase/share/fixtures/3/all_tables/track/3.fix
- examples/MusicBase/share/fixtures/3/all_tables/track/4.fix
- examples/MusicBase/share/fixtures/3/all_tables/track/5.fix
- examples/MusicBase/share/fixtures/3/all_tables/track/6.fix
- examples/MusicBase/share/fixtures/3/all_tables/track/7.fix
- examples/MusicBase/share/fixtures/3/conf/all_tables.json
- examples/MusicBase/share/fixtures/3/conf/countries.json
- examples/MusicBase/share/fixtures/3/countries/_dumper_version
- examples/MusicBase/share/fixtures/3/countries/country/1.fix
- examples/MusicBase/share/fixtures/3/countries/country/2.fix
- examples/MusicBase/share/fixtures/3/countries/country/3.fix
- examples/MusicBase/share/fixtures/3/countries/country/4.fix
- examples/MusicBase/share/fixtures/3/countries/country/5.fix
- examples/MusicBase/share/fixtures/3/countries/country/6.fix
- examples/MusicBase/share/html/index.tt
- examples/MusicBase/share/migrations/MySQL/deploy/3/001-auto-__VERSION.sql
- examples/MusicBase/share/migrations/MySQL/deploy/3/001-auto.sql
- examples/MusicBase/share/migrations/SQLite/deploy/1/001-auto-__VERSION.sql
- examples/MusicBase/share/migrations/SQLite/deploy/1/001-auto.sql
- examples/MusicBase/share/migrations/SQLite/deploy/2/001-auto-__VERSION.sql
- examples/MusicBase/share/migrations/SQLite/deploy/2/001-auto.sql
- examples/MusicBase/share/migrations/SQLite/deploy/3/001-auto-__VERSION.sql
- examples/MusicBase/share/migrations/SQLite/deploy/3/001-auto.sql
- examples/MusicBase/share/migrations/SQLite/downgrade/2-1/001-auto.sql
- examples/MusicBase/share/migrations/SQLite/downgrade/3-2/001-auto.sql
- examples/MusicBase/share/migrations/SQLite/upgrade/1-2/001-add_country.sql
- examples/MusicBase/share/migrations/SQLite/upgrade/1-2/003-change_artist.sql
- examples/MusicBase/share/migrations/SQLite/upgrade/2-3/001-create_artist_cd.sql
- examples/MusicBase/share/migrations/SQLite/upgrade/2-3/002-populate_artist_cd.sql
- examples/MusicBase/share/migrations/SQLite/upgrade/2-3/003-alter_cd.sql
- examples/MusicBase/share/migrations/SQLite/upgrade/2-3/004-alter_country.sql
- examples/MusicBase/share/migrations/SQLite/upgrade/2-3/005-new_countries.pl
- examples/MusicBase/share/migrations/SQLite/upgrade/2-3/006-new_artist.pl
- examples/MusicBase/share/migrations/_common/deploy/1/002-demo.pl
- examples/MusicBase/share/migrations/_common/upgrade/1-2/002-insert_countries.pl
- examples/MusicBase/share/migrations/_source/deploy/1/001-auto-__VERSION.yml
- examples/MusicBase/share/migrations/_source/deploy/1/001-auto.yml
- examples/MusicBase/share/migrations/_source/deploy/2/001-auto-__VERSION.yml
- examples/MusicBase/share/migrations/_source/deploy/2/001-auto.yml
- examples/MusicBase/share/migrations/_source/deploy/3/001-auto-__VERSION.yml
- examples/MusicBase/share/migrations/_source/deploy/3/001-auto.yml
- examples/MusicBase/t/more-than-1.t
- examples/MusicBase/t/upgrade-1to2.t
- examples/MusicBase/t/upgrade-2to3.t
- examples/MusicBase/t/use.t
- examples/MusicBase/t/web.t