+golang-migrate — Database migrations CLI (#2998)

* wip

* test fix

---------

Co-authored-by: Jacob Heider <jacob@tea.xyz>
This commit is contained in:
Kevin Chen 2023-08-21 15:54:39 -04:00 committed by GitHub
parent f14b765862
commit 47a730de57
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -0,0 +1,65 @@
distributable:
url: https://github.com/golang-migrate/migrate/archive/refs/tags/v{{version}}.tar.gz
strip-components: 1
versions:
github: golang-migrate/migrate
provides:
- bin/migrate
build:
dependencies:
go.dev: ^1.19
tea.xyz/gx/cc: c99
tea.xyz/gx/make: '*'
script: |
go mod download
mkdir -p "{{ prefix }}"/bin
go build -v -trimpath -ldflags="$LDFLAGS" -tags "$DATABASE $SOURCE" -o $BUILDLOC ./cmd/migrate
env:
GOPROXY: https://proxy.golang.org,direct
GOSUMDB: sum.golang.org
GO111MODULE: on
CGO_ENABLED: 0
BUILDLOC: '{{prefix}}/bin/migrate'
LDFLAGS:
- -s
- -w
- -X main.Version={{version}}
# - -extldflags "static"
SOURCE:
- file
- go_bindata
- github
- github_ee
- bitbucket
- aws_s3
- google_cloud_storage
- godoc_vfs
- gitlab
DATABASE:
- postgres
- mysql
- redshift
- cassandra
- spanner
- cockroachdb
- yugabytedb
- clickhouse
- mongodb
- sqlserver
- firebird
- neo4j
- pgx
- pgx5
linux:
# or segmentation fault
# fix found here https://github.com/docker-library/golang/issues/402#issuecomment-982204575
LDFLAGS:
- -buildmode=pie
test:
script:
- test $(migrate -version 2>&1) = {{version}}