goreleaser: Main file distributed to separate files doesn't work

Prerequisites

  • Are you running the latest version?
  • Did you perform a search to see if this problem was already reported?

For more information, see the CONTRIBUTING guide.

Description

After I split my main.go into main.go & account.go, goreleaser stop to build it correctly.

Environment

Please paste the output of:

  • go version

go version go1.9.1 windows/amd64

  • uname -a

MINGW64_NT-6.1 dulanov-PC 2.9.0(0.318/5/3) 2017-09-13 23:16 x86_64 Msys

> goreleaser --skip-publish --skip-validate --debug
   • running goreleaser dev
   • loading config file       file=.goreleaser.yml
   • loaded config file        config={ { false false  map[]} { { }     []  []   map[]} [{[linux darwin windows] [386 amd64] [] [] cmd/nem/main.go   nem {  map[]} [CGO_ENABLED=0] map[]}] { [{windows zip map[]}] {{ .ProjectName }}-{{ .Version }}-{{ .Os }}-{{ .Arch }} false map[windows:Windows 386:i386 amd64:x86_64 darwin:Darwin linux:Linux] [] map[]} {[] [] []       map[] map[]} {     map[] map[]} { map[]} {{{ .ProjectName }}-{{ .Version }}-checksums.txt map[]} [] {{[] map[]}  map[]} {[] [] [] []     {  map[]} [] map[]} {  }  map[]}
   • parallelism: 4
   • SETTING DEFAULTS
   • defaults set              config={nem-toolchain {dulanov/nem-toolchain false false {{.Tag}} map[]} { {goreleaserbot goreleaser@carlosbecker.com}    bin.install "nem" []  []   map[]} [{[linux darwin windows] [386 amd64] [6] [] cmd/nem/main.go -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}  nem {  map[]} [CGO_ENABLED=0] map[]}] {tar.gz [{windows zip map[]}] {{ .ProjectName }}-{{ .Version }}-{{ .Os }}-{{ .Arch }} false map[darwin:Darwin linux:Linux windows:Windows 386:i386 amd64:x86_64] [licence* LICENCE* license* LICENSE* readme* README* changelog* CHANGELOG*] map[]} {[] [] []      /usr/local/bin map[] map[]} {     map[] map[]} {SNAPSHOT-{{ .Commit }} map[]} {{{ .ProjectName }}-{{ .Version }}-checksums.txt map[]} [] {{[] map[]}  map[]} {[] [] [] []     {  map[]} [] map[]} {  } dist map[]}
   • GETTING AND VALIDATING GIT STATE
   • releasing v0.3.0, commit 72c0956913fef3a6039fbbf72eae105d96cdeb6d
   • skipped                   reason=--skip-validate is set
   • GENERATING CHANGELOG
   • LOADING ENVIRONMENT VARIABLES
   • skipped                   reason=publishing is disabled
   • CHECKING ./DIST
   • ./dist doesn't exist, moving on
   • BUILDING BINARIES
   • building                  build={[linux darwin windows] [386 amd64] [6] [] cmd/nem/main.go -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}  nem {  map[]} [CGO_ENABLED=0] map[]}
   • new binary                folder=nem-toolchain-0.3.0-Linux-x86_64 name=nem path=dist\nem-toolchain-0.3.0-Linux-x86_64\nem platform=linuxamd64
   • building                  binary=dist\nem-toolchain-0.3.0-Linux-x86_64\nem
   • new binary                folder=nem-toolchain-0.3.0-Darwin-x86_64 name=nem path=dist\nem-toolchain-0.3.0-Darwin-x86_64\nem platform=darwinamd64
   • building                  binary=dist\nem-toolchain-0.3.0-Darwin-x86_64\nem
   • new binary                folder=nem-toolchain-0.3.0-Linux-i386 name=nem path=dist\nem-toolchain-0.3.0-Linux-i386\nem platform=linux386
   • building                  binary=dist\nem-toolchain-0.3.0-Linux-i386\nem
   • new binary                folder=nem-toolchain-0.3.0-Darwin-i386 name=nem path=dist\nem-toolchain-0.3.0-Darwin-i386\nem platform=darwin386
   • building                  binary=dist\nem-toolchain-0.3.0-Darwin-i386\nem
   • running                   cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:14Z -o dist\nem-toolchain-0.3.0-Linux-x86_64\nem cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GOARM=] target=linux/amd64
   • running                   cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:14Z -o dist\nem-toolchain-0.3.0-Darwin-x86_64\nem cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 GOARM=] target=darwin/amd64
   • running                   cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:14Z -o dist\nem-toolchain-0.3.0-Linux-i386\nem cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=linux GOARCH=386 GOARM=] target=linux/386
   • running                   cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:14Z -o dist\nem-toolchain-0.3.0-Darwin-i386\nem cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=darwin GOARCH=386 GOARM=] target=darwin/386
   • failed                    cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:14Z -o dist\nem-toolchain-0.3.0-Linux-x86_64\nem cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GOARM=] error=exit status 2 target=linux/amd64
   • new binary                folder=nem-toolchain-0.3.0-Windows-i386 name=nem.exe path=dist\nem-toolchain-0.3.0-Windows-i386\nem.exe platform=windows386
   • building                  binary=dist\nem-toolchain-0.3.0-Windows-i386\nem.exe
   • running                   cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:36Z -o dist\nem-toolchain-0.3.0-Windows-i386\nem.exe cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=windows GOARCH=386 GOARM=] target=windows/386
   • failed                    cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:14Z -o dist\nem-toolchain-0.3.0-Linux-i386\nem cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=linux GOARCH=386 GOARM=] error=exit status 2 target=linux/386
   • new binary                folder=nem-toolchain-0.3.0-Windows-x86_64 name=nem.exe path=dist\nem-toolchain-0.3.0-Windows-x86_64\nem.exe platform=windowsamd64
   • building                  binary=dist\nem-toolchain-0.3.0-Windows-x86_64\nem.exe
   • running                   cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:37Z -o dist\nem-toolchain-0.3.0-Windows-x86_64\nem.exe cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=windows GOARCH=amd64 GOARM=] target=windows/amd64
   • failed                    cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:14Z -o dist\nem-toolchain-0.3.0-Darwin-i386\nem cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=darwin GOARCH=386 GOARM=] error=exit status 2 target=darwin/386
   • failed                    cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:14Z -o dist\nem-toolchain-0.3.0-Darwin-x86_64\nem cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 GOARM=] error=exit status 2 target=darwin/amd64
   • failed                    cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:37Z -o dist\nem-toolchain-0.3.0-Windows-x86_64\nem.exe cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=windows GOARCH=amd64 GOARM=] error=exit status 2 target=windows/amd64
   • failed                    cmd=[go build -ldflags=-s -w -X main.version=0.3.0 -X main.commit=72c0956913fef3a6039fbbf72eae105d96cdeb6d -X main.date=2017-11-09T23:16:36Z -o dist\nem-toolchain-0.3.0-Windows-i386\nem.exe cmd/nem/main.go] env=[CGO_ENABLED=0 GOOS=windows GOARCH=386 GOARM=] error=exit status 2 target=windows/386
   ⨯ release failed            error=build failed for linux/amd64:
# command-line-arguments
cmd\nem\main.go:45:3: undefined: accountCommand

Steps to Reproduce

  1. [First Step]

Split main.go into separate files lie in same main package.

  1. [Second Step]
  2. [and so on…]

Expected behavior: [What you expected to happen]

goreleaser process all files from main package.

Actual behavior: [What actually happened]

goreleaser process only tiny main.go and ignore completely other files from the main package.

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 17 (9 by maintainers)

Most upvoted comments

@caarlos0 ah man, sorry for that, I just tried many times not ./cmd/nem/..., but cmd/nem and cmd/nem/... instead. You variant works perfect, thank you very much!

Isn’t it cmd/nem/...