From bd2a82c050fc69b5658116e8c93a6d5c27ecccf6 Mon Sep 17 00:00:00 2001 From: Rob De Feo Date: Tue, 18 Feb 2020 22:49:38 +0000 Subject: [PATCH 1/3] feat: cmd/indexer docker container --- .goreleaser.yml | 79 +++++++++++++++++++++++++++--------------- cmd/indexer/Dockerfile | 4 +++ 2 files changed, 56 insertions(+), 27 deletions(-) create mode 100644 cmd/indexer/Dockerfile diff --git a/.goreleaser.yml b/.goreleaser.yml index b39609003..5b8e777b0 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -1,12 +1,8 @@ -# This is an example goreleaser.yaml file with some sane defaults. -# Make sure to check the documentation at http://goreleaser.com env: - GO111MODULE=on before: hooks: - go mod download - # - go install github.com/golang/mock/mockgen - # - go generate ./... builds: - id: mailchain-darwin-amd64 ldflags: -s -w -X github.com/mailchain/mailchain.Version={{.Version}} -X github.com/mailchain/mailchain.BuildDate={{.Date}} -X github.com/mailchain/mailchain.CommitHash={{ .ShortCommit }} @@ -30,6 +26,16 @@ builds: - linux goarch: - amd64 +- id: indexer-linux-amd64 + ldflags: -s -w -X github.com/mailchain/mailchain.Version={{.Version}} -X github.com/mailchain/mailchain.BuildDate={{.Date}} -X github.com/mailchain/mailchain.CommitHash={{ .ShortCommit }} + binary: indexer + env: + - CGO_ENABLED=0 + main: ./cmd/indexer/main.go + goos: + - linux + goarch: + - amd64 - id: mailchain-windows-amd64 ldflags: -s -w -X github.com/mailchain/mailchain.Version={{.Version}} -X github.com/mailchain/mailchain.BuildDate={{.Date}} -X github.com/mailchain/mailchain.CommitHash={{ .ShortCommit }} binary: mailchain @@ -41,29 +47,28 @@ builds: goos: - windows goarch: - - amd64 - + - amd64 archives: -- format: tar.gz - format_overrides: - - goos: windows - format: zip - name_template: "{{.ProjectName}}-v{{.Version}}-{{.Os}}-{{.Arch}}" - replacements: - amd64: 64bit - 386: 32bit - arm: ARM - arm64: ARM64 - darwin: macOS - linux: Linux - windows: Windows - openbsd: OpenBSD - netbsd: NetBSD - freebsd: FreeBSD - dragonfly: DragonFlyBSD - files: - - Readme.MD - - LICENSE + - format: tar.gz + format_overrides: + - goos: windows + format: zip + name_template: "{{.ProjectName}}-v{{.Version}}-{{.Os}}-{{.Arch}}" + replacements: + amd64: 64bit + 386: 32bit + arm: ARM + arm64: ARM64 + darwin: macOS + linux: Linux + windows: Windows + openbsd: OpenBSD + netbsd: NetBSD + freebsd: FreeBSD + dragonfly: DragonFlyBSD + files: + - Readme.MD + - LICENSE checksum: name_template: 'checksums.txt' snapshot: @@ -93,4 +98,24 @@ scoop: name: scoop-bucket homepage: https://mailchain.xyz description: Secure, email-like messaging for blockchain addresses and accounts - license: MIT + license: MIT +dockers: + - + binaries: # Name templates of the built binaries that should be used. + - indexer + goos: linux # GOOS of the built binary that should be used. + goarch: amd64 # GOARCH of the built binary that should be used. + dockerfile: ./cmd/indexer/Dockerfile + + image_templates: + - "mailchain/indexer:latest" + - "mailchain/indexer:{{.Version}}" + + build_flag_templates: + - "--pull" + - "--label=org.opencontainers.image.created={{.Date}}" + - "--label=org.opencontainers.image.name={{.ProjectName}}/indexer" + - "--label=org.opencontainers.image.revision={{.FullCommit}}" + - "--label=org.opencontainers.image.version={{.Version}}" + - "--label=repository=https://github.com/mailchain/mailchain" + - "--label=homepage=https://mailchain.xyz" diff --git a/cmd/indexer/Dockerfile b/cmd/indexer/Dockerfile new file mode 100644 index 000000000..8cea00dca --- /dev/null +++ b/cmd/indexer/Dockerfile @@ -0,0 +1,4 @@ +FROM centurylink/ca-certs +ENTRYPOINT ["/indexer"] + +add indexer /indexer \ No newline at end of file From 6dee091603043c829b01eb47c17b113b00182e36 Mon Sep 17 00:00:00 2001 From: Rob De Feo Date: Tue, 18 Feb 2020 23:14:57 +0000 Subject: [PATCH 2/3] fix: missing docker service --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.travis.yml b/.travis.yml index 9edca4a24..c2da1ece6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,7 @@ language: go +sudo: required +services: + - docker go_import_path: github.com/mailchain/mailchain matrix: include: From 0c4941961ac4ba97a3c39a3ffddec5d5821bc16e Mon Sep 17 00:00:00 2001 From: Rob De Feo Date: Wed, 19 Feb 2020 22:40:15 +0000 Subject: [PATCH 3/3] chore: login to docker when doing a deploy --- .goreleaser.yml | 2 +- .travis.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 5b8e777b0..9129fe283 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -53,7 +53,7 @@ archives: format_overrides: - goos: windows format: zip - name_template: "{{.ProjectName}}-v{{.Version}}-{{.Os}}-{{.Arch}}" + name_template: "{{.ProjectName}}-{{.Version}}-{{.Os}}-{{.Arch}}" replacements: amd64: 64bit 386: 32bit diff --git a/.travis.yml b/.travis.yml index c2da1ece6..2fa2d987d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,7 +25,7 @@ script: - git diff --exit-code deploy: - provider: script - script: docker run -e GITHUB_TOKEN=$GITHUB_TOKEN --rm --privileged -v $TRAVIS_BUILD_DIR:/go/src/github.com/mailchain/mailchain -v /var/run/docker.sock:/var/run/docker.sock -w /go/src/github.com/mailchain/mailchain mailchain/goreleaser-xcgo goreleaser --rm-dist + script: docker run -e DOCKER_USERNAME=$DOCKER_USERNAME -e DOCKER_PASSWORD=$DOCKER_PASSWORD -e GITHUB_TOKEN=$GITHUB_TOKEN --rm --privileged -v $TRAVIS_BUILD_DIR:/go/src/github.com/mailchain/mailchain -v /var/run/docker.sock:/var/run/docker.sock -w /go/src/github.com/mailchain/mailchain mailchain/goreleaser-xcgo goreleaser --rm-dist skip_cleanup: true on: tags: true