Commit graph

40 commits

Author SHA1 Message Date
Adrian Macneil
b020782b0e
v1.12.0 (#210) 2021-04-07 13:51:50 -07:00
Ilia Ablamonov
7b92033d1b
Support non-UTC timezones (#208)
Fix #207
2021-04-02 21:34:22 +00:00
Adrian Macneil
0c758a8d9f
Go v1.16 (#196) 2021-02-22 11:26:35 -08:00
Adrian Macneil
c2b14bb7e0
v1.11.0 (#174) 2020-11-10 12:38:51 +13:00
Adrian Macneil
e44e09eb67
Migrate CI to GitHub Actions (#171) 2020-11-02 20:22:59 +13:00
Adrian Macneil
af41fbfb4e
Make golint happy (#165) 2020-10-30 19:04:02 +13:00
Adrian Macneil
2b3f59fbe3
Go v1.15 (#161) 2020-09-27 14:50:30 -07:00
Adrian Macneil
4387633e1f
Add sql clients to docker image (#157)
Instead of a nice super-minimal production docker image, create one based on alpine with sql clients installed (`mariadb-client`, `postgresql-client`, and `sqlite`).

* Increases docker image size from 10 MB to 56 MB 👎 
* Allows people to run `dbmate dump` command with our docker image (fixes #114) 👍 
* I'm not sure what compatibility is like between `mysqldump` from `mariadb-client` versus `mysql-client`, but starting here since mariadb is included with alpine, and the version I built using mysql and ubuntu weighed in at 165 MB. 🤔
2020-08-11 15:36:07 -07:00
Adrian Macneil
4581acafad
Build statically linked binaries (#156)
Prior to this commit, we released two linux binaries:

* `dbmate-linux-amd64` (built with cgo, dynamically linked)
* `dbmate-linux-musl-amd64` (built without cgo, statically linked, no sqlite support)

The statically linked binary is desirable for alpine linux users (or anyone else using musl libc or minimal docker images). The original reason for having two separate binaries was that the easiest method to create a static binary for go is to set `CGO_ENABLED=0`, but unfortunately this also prevented us from building sqlite (which requires cgo).

With this commit, all linux and windows binaries are explicitly statically linked while leaving cgo enabled. Hat tip to https://www.arp242.net/static-go.html which explained the necessary flags to enable this.

As an added bonus, the `dbmate` docker image now now uses a `scratch` base rather than `gcr.io/distroless/base`, reducing the image size from 26.7 MB to 9.8 MB.
2020-08-11 13:05:55 -07:00
Adrian Macneil
df461ff6c7
Add linux/arm64 build (#155) 2020-08-08 16:25:13 -07:00
Adrian Macneil
d1b3334ff7
Update dependencies (#149) 2020-08-07 18:45:32 -07:00
Adrian Macneil
1ca94e836f
Go v1.14 (#133) 2020-05-24 15:35:51 -07:00
Adrian Macneil
98066fadaa
Stricter linting (#113) 2020-01-01 19:11:02 -10:00
Adrian Macneil
aa72a39a29
Cross-compile macOS and Windows builds (#89)
Adds support for cross-compiling macOS and Windows builds with cgo (using https://github.com/techknowlogick/xgo).

Closes #41
2019-09-18 22:30:59 +12:00
Adrian Macneil
23d48e48aa
Fix docker build for latest golang images (#88) 2019-09-02 23:00:26 -04:00
Adrian Macneil
e4d490aa7e
Go v1.12 (#69) 2019-05-19 18:52:45 -07:00
Adrian Macneil
da3d9525cf
Go v1.11 (#60)
* Go v1.11
* [Go Modules](https://github.com/golang/go/wiki/Modules)
* [GolangCI-Lint](https://github.com/golangci/golangci-lint)
* [Distroless](https://github.com/GoogleContainerTools/distroless) docker image
2018-12-01 22:28:47 -08:00
Adrian Macneil
5ddcba7518
Go 1.10 (#38) 2018-04-15 20:48:22 -07:00
Adrian Macneil
ee3162c34c
Add gometalinter (#36) 2018-04-15 19:59:56 -07:00
Adrian Macneil
df119a76f3
Migrate to dep for dependency management (#26)
* Replace `Godeps` with `dep`
* Upgrade all dependencies
* Remove vendor source from git repository
2018-01-23 17:11:34 -08:00
Adrian Macneil
c2fc8b5441
Simplify Makefile and docker usage (#24) 2018-01-22 21:49:12 -08:00
Adrian Macneil
d855ee1ada
Add dump command (#23)
Adds `dbmate dump` command to write the database schema to a file.

The intent is for this file to be checked in to the codebase, similar to Rails' `schema.rb` (or `structure.sql`) file. This allows developers to share a single file documenting the database schema, and makes it considerably easier to review PRs which add (or change) migrations.

The existing `up`, `migrate`, and `rollback` commands will automatically trigger a schema dump, unless `--no-dump-schema` is passed.

Closes https://github.com/amacneil/dbmate/issues/5
2018-01-22 20:38:40 -08:00
Adrian Macneil
4e01c75eca
Add docker runtime image (#21)
Closes #17
2018-01-07 19:08:43 -08:00
Adrian Macneil
f150d6aeff
Remove i386 cross-compile binary (#20) 2018-01-07 13:15:57 -08:00
Adrian Macneil
6d5a22fce8
Upgrade to Go 1.9 (#19) 2018-01-07 12:52:10 -08:00
Adrian Macneil
e393f387b3 Separate cmd package for easier importing (#11) 2017-05-04 20:58:23 -07:00
Adrian Macneil
988471bba4 Go 1.8.0 (#7) 2017-02-28 20:36:38 -08:00
Adrian Macneil
7da72a308a Go v1.7.0 2016-08-20 10:02:42 -07:00
Adrian Macneil
31ad587414 Vendor dependencies (#3) 2016-08-07 23:19:39 -07:00
Adrian Macneil
252cd4bdf1 Go 1.6.3 2016-08-07 22:39:19 -07:00
Adrian Macneil
5b84f2b821 Go 1.6.2 2016-05-21 19:20:42 -07:00
Adrian Macneil
db140b60d7 Remove manual installation of go vet 2016-05-21 19:03:21 -07:00
Adrian Macneil
42a7f0ef8f Go 1.6.0 2016-02-17 17:53:23 -08:00
Adrian Macneil
b74629e5be Remove osx cross compilation in favor of homebrew 2015-12-03 01:13:39 -08:00
Adrian Macneil
ff85c92b98 Update username 2015-12-03 00:17:37 -08:00
Adrian Macneil
d318e68423 Add cross compilation scripts 2015-12-01 18:03:44 -08:00
Adrian Macneil
d5f862c00b Add SQLite support 2015-12-01 11:38:31 -08:00
Adrian Macneil
456bee585c Use Go 1.5, disable cgo 2015-11-30 18:42:50 -08:00
Adrian Macneil
c6aba53e51 Add errcheck and fix unchecked errors 2015-11-27 14:27:44 -08:00
Adrian Macneil
9cfc758ca1 Initial commit 2015-11-25 10:57:58 -08:00