Abigail Walthall
b7fd3077d1
Fix Bug when finalizing the migration table when calling `goose up` for the first time
2013-01-16 15:38:45 -05:00
Liam Staskawicz
85fac2eb96
Merged in josharian/goose/update-heroku-docs (pull request #3 : Update heroku docs)
2013-01-15 09:43:34 -08:00
Josh Bleecher Snyder
039efed9a8
Update and simplify heroku instructions
2013-01-15 09:12:35 -08:00
Liam Staskawicz
d42a8fe983
util: simplify file creation
2013-01-10 23:24:32 -08:00
Liam Staskawicz
b1edd0e4fa
Merged in josharian/goose/flexible-dbconf-open (pull request #2 : Make dbconf's open more flexible)
2013-01-10 22:06:35 -08:00
Josh Bleecher Snyder
6f67731d6a
Autoparse postgres urls
2013-01-10 18:11:46 -08:00
Josh Bleecher Snyder
f787354860
Expand environment variables in dbconf.yml's open
...
The immediate goal here is to make using goose
with Heroku easier, where the database connection
url is provided by an environment variable. More
generally, this makes it easier to avoid committing
sensitive information like database credentials.
2013-01-10 18:11:45 -08:00
Liam Staskawicz
17747efe29
Merged in josharian/goose (pull request #1 : Autocreate db/migrations)
2013-01-09 18:09:48 -08:00
Josh Bleecher Snyder
e364c0995d
Autocreate db/migrations
2013-01-09 17:53:48 -08:00
Liam Staskawicz
f89880da03
go migrations: much simpler and more robust way to execute migrations. go migrations are all 'package main', and the version is simply appended to the function name in order to distinguish potentially several migrations in the same 'package main'
2013-01-06 22:47:45 -08:00
Liam Staskawicz
85a0c8b565
remove obsolete version comparison
2013-01-06 22:12:39 -08:00
Liam Staskawicz
edaa9e3049
migrate refactor: simplify MigrationMap struct by allowing each Migration to track its own Version
2013-01-06 22:12:17 -08:00
Liam Staskawicz
0287dcd9b2
readme: slight formatting tweak
2013-01-06 11:32:51 -08:00
Liam Staskawicz
8ccb502c95
readme: add notes about the available commands
2013-01-06 11:31:29 -08:00
Liam Staskawicz
47d455779e
create: command to generate the scaffolding for a new migration
2013-01-06 11:22:30 -08:00
Liam Staskawicz
562485a7b7
pending: remove pending command. it wasn't properly implemented and is superseded by the status command anyhow
2013-01-06 10:36:06 -08:00
Liam Staskawicz
5431538c39
refactor: move writeTemplateToFile() into new util.go
2013-01-06 09:22:06 -08:00
Liam Staskawicz
e770a07efe
reorg: prefix command sources with 'cmd' for slightly clearer organization
2013-01-06 08:46:21 -08:00
Liam Staskawicz
77a0382914
results: don't bother counting the number of sql statements. we don't have a good way of tracking it for go migrations, and it's not particularly helpful either
2013-01-04 19:39:36 -10:00
Liam Staskawicz
0b250b8511
ensure migration IDs are greater than zero
2013-01-04 19:24:40 -10:00
Liam Staskawicz
517e1701e2
breaking change: version id is now int64 to accommodate larger date-based version id schemes
2013-01-04 19:22:03 -10:00
Liam Staskawicz
9140de5045
status: ensure that the version table exists
2013-01-04 19:16:09 -10:00
Liam Staskawicz
c1320a5e81
rename only: DBVersion => MigrationRecord
2013-01-04 18:32:25 -10:00
Liam Staskawicz
949df006a9
status: add status command to show a summary of applied and pending migrations
2013-01-04 18:29:12 -10:00
Liam Staskawicz
4bec0b22ec
breaking change: add a column to the version table to record whether we migrated up or down. fixes the case in which we weren't correctly calculating the current version previously in some cases, and also allows us to maintain a more complete historic record of all migrations made.
2013-01-04 18:11:18 -10:00
Liam Staskawicz
ef4602b5e8
migrate: refactor sorting of migrations out of the collection routine
2012-12-25 12:50:30 -08:00
Liam Staskawicz
8c4171074b
readme: missed a couple mentions of configuration vs environment
2012-12-24 12:14:19 -08:00
Liam Staskawicz
5431e23861
pending: slight change to textual output
2012-12-24 12:12:52 -08:00
Liam Staskawicz
9fbce90a79
flags: improved option names
2012-12-24 12:12:31 -08:00
Liam Staskawicz
1232c87d8e
note for later
2012-12-24 10:35:35 -08:00
Liam Staskawicz
ab33fd0625
main: adjust usage to indicate that -db and -config apply to the goose command, and that any subcommand options come after the subcommand
2012-12-24 10:28:57 -08:00
Liam Staskawicz
8cd66bc122
pending: add new command that lists migrations yet to be run
2012-12-24 10:27:32 -08:00
Liam Staskawicz
dc913a5569
reorg: move getDBVersion() into migrate to clarify that it's common functionality
2012-12-24 10:22:33 -08:00
Liam Staskawicz
fe14d0a1f5
flags: consolidate dbconf details to DBConf struct, reusable by any subcommands.
2012-12-24 10:09:15 -08:00
Liam Staskawicz
b0dc55130d
main: simple usage function.
2012-12-23 18:53:04 -08:00
Liam Staskawicz
05fdb1ac5f
down: add 'down' command to roll back the version by 1
2012-12-23 18:00:09 -08:00
Liam Staskawicz
8af5b84677
migrate: fix off-by-one comparison, and print correct versions
2012-12-23 17:59:36 -08:00
Liam Staskawicz
e3112d5a4f
migrate: validate that given migrations don't have ID 0
2012-12-23 17:51:49 -08:00
Liam Staskawicz
ce29ebdf7e
use filepath.Walk when collecting migrations as well
2012-12-23 16:59:22 -08:00
Liam Staskawicz
78a2b24d13
up: make use of filepath.Walk to simplify traversing migration files
2012-12-23 14:25:38 -08:00
Liam Staskawicz
bccf6afa62
reorg: breaking out functionality into separate subcommands
2012-12-23 14:01:45 -08:00
Liam Staskawicz
9e1edc94d7
readme: fix installation instructions
2012-12-17 12:39:18 -08:00
Liam Staskawicz
c28116e175
reorg: move source files to top level of repo to simplify `go install` usage.
2012-12-17 08:12:20 -08:00
Liam Staskawicz
047beda98d
previous test caught an error
2012-12-15 15:53:21 -08:00
Liam Staskawicz
93d928851d
some basic tests
2012-12-15 15:53:08 -08:00
Liam Staskawicz
b736bb38bf
tiny include cleanup
2012-12-15 12:16:56 -08:00
Liam Staskawicz
2bc4ab80a0
keep all args handling in main.go for now
2012-12-15 12:10:00 -08:00
Liam Staskawicz
c8383e8a34
resolve refactoring fallout
2012-12-15 12:04:19 -08:00
Liam Staskawicz
ad5db711d8
migrate: cleaner and more explicit handling of target version
2012-12-15 11:29:20 -08:00
Liam Staskawicz
36f3bce74a
let DBConf definition live in main, since it will be common to several commands
2012-12-15 10:48:32 -08:00