Download the PHP package turanct/bdsm without Composer
On this page you can find all versions of the php package turanct/bdsm. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package bdsm
Short Description BDSM Does Simple Migrations
License MIT
Homepage http://github.com/turanct/bdsm
Informations about the package bdsm
BDSM Does Simple Migrations
A really simple migrations library. It is currently not meant to be used in production but nobody's going to stop you if you really want to. Use at your own risk.
Usage
Installing
Installing it is easy, just require turanct/bdsm
as a development dependency in your composer.json
file, and configure a bin-dir
. The bdsm executable will be available in your bin directory when you've run composer install
.
Bootstrapping
The bdsm
executable expects a .bdsm.php
file in the working directory of your project. In this file you can do all necessary bootstrapping. It just needs to return an array with these elements:
- The directory where we can find migrations
- The file in which we can log which migrations we ran
- A database adapter, implementing the really simple
Bdsm\Database
interface
In this case, we provided a directory migrations
in which the migrations will live, and a log file .bdsm.log.json
to which the system can log. The database adapter in this example will not actually connect to a database, but it will print out every query issued.
First migration
We're ready to create our first migration right now! Run the bdsm
command with the create
parameter.
You can also pass a custom migration name as a parameter. A new migration will be created in our migrations directory with these contents:
We can now simply script the up and down actions for our migration, and then check it's status. It should be red.
Running it is as simple as bdsm up Migration1441375998
. Note that you can run all migrations at once using bdsm up
without arguments.
Another look at the migration status shows us that we succeeded!
Migrating down is exactly the same procedure, but with down
instead of up
commands.
Tests
BDSM has unit tests, located in the tests
directory. These tests are written using phpunit. To run them, make sure you did a composer install
and run phpunit.
Contributing
Feel free to fork and send pull requests!
License
This library is MIT licensed. See also LICENSE.md