Merge pull request #13162 from chrisroberts/vagrant-go-arm64
Update Makefile output location and update targets
This commit is contained in:
commit
5a5eb331cc
25
.ci/build
25
.ci/build
@ -40,31 +40,18 @@ info "Installing submodules for vagrant-go build..."
|
||||
wrap git submodule update --init --recursive \
|
||||
"Failed to install git submodules"
|
||||
|
||||
info "Building vagrant-go linux binaries..."
|
||||
# Build vagrant-go binaries
|
||||
info "Building vagrant-go linux amd64..."
|
||||
wrap make bin/linux \
|
||||
"Failed to build the Vagrant go linux amd64 binary"
|
||||
"Failed to build the Vagrant go linux binaries"
|
||||
|
||||
# Rename our binary
|
||||
wrap mv vagrant "${dest}/vagrant-go_linux_amd64" \
|
||||
"Failed to rename vagrant linux amd64 binary"
|
||||
|
||||
info "Building vagrant-go linux 386..."
|
||||
# Build linux 386 binary
|
||||
wrap make bin/linux-386 \
|
||||
"Failed to build the Vagrant go linux 386 binary"
|
||||
|
||||
# Rename our binary
|
||||
wrap mv vagrant "${dest}/vagrant-go_linux_386" \
|
||||
"Failed to rename vagrant linux 386 binary"
|
||||
|
||||
info "Building vagrant-go darwin amd64..."
|
||||
info "Building vagrant-go darwin binaries..."
|
||||
# Build darwin binary
|
||||
wrap make bin/darwin \
|
||||
"Failed to build the Vagrant go darwin amd64 binary"
|
||||
|
||||
# Rename our binary
|
||||
wrap mv vagrant "${dest}/vagrant-go_darwin_amd64" \
|
||||
"Failed to rename vagrant darwin amd64 binary"
|
||||
info "Relocating vagrant-go binaries..."
|
||||
wrap mv bin/vagrant-go* "${dest}" \
|
||||
"Failed to relocate vagrant binaries to destination directory"
|
||||
|
||||
printf "build-artifacts-path=%s\n" "${dest}"
|
||||
|
||||
11
.github/workflows/go-testing.yml
vendored
11
.github/workflows/go-testing.yml
vendored
@ -40,14 +40,7 @@ jobs:
|
||||
with:
|
||||
ruby-version: ${{matrix.ruby}}
|
||||
bundler-cache: true
|
||||
- name: Get dependencies
|
||||
run: |
|
||||
git config --global url."https://${HASHIBOT_USERNAME}:${HASHIBOT_TOKEN}@github.com".insteadOf "https://github.com"
|
||||
go get -v -t -d ./...
|
||||
env:
|
||||
HASHIBOT_USERNAME: ${{ secrets.HASHIBOT_USERNAME }}
|
||||
HASHIBOT_TOKEN: ${{ secrets.HASHIBOT_TOKEN }}
|
||||
- name: Vet
|
||||
run: go vet ./...
|
||||
run: go vet -mod=mod ./...
|
||||
- name: Test
|
||||
run: go test ./...
|
||||
run: go test -mod=mod ./...
|
||||
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@ -70,3 +70,6 @@ __debug_bin
|
||||
# solargraph (ruby lsp) & rubocop
|
||||
.solargraph.yml
|
||||
.rubocop.yml
|
||||
|
||||
# Ignore generated binaries
|
||||
bin/vagrant-go*
|
||||
|
||||
62
Makefile
62
Makefile
@ -10,31 +10,75 @@ CGO_ENABLED?=0
|
||||
.PHONY: bin
|
||||
bin: # bin creates the binaries for Vagrant for the current platform
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }
|
||||
CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -gcflags="$(GCFLAGS)" -tags assetsembedded -o ./vagrant ./cmd/vagrant
|
||||
CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -gcflags="$(GCFLAGS)" -tags assetsembedded -o ./bin/vagrant-go ./cmd/vagrant
|
||||
|
||||
.PHONY: debug
|
||||
debug: # debug creates an executable with optimizations off, suitable for debugger attachment
|
||||
GCFLAGS="all=-N -l" $(MAKE) bin
|
||||
|
||||
.PHONY: all
|
||||
all:
|
||||
$(MAKE) bin/windows
|
||||
$(MAKE) bin/linux
|
||||
$(MAKE) bin/darwin
|
||||
|
||||
.PHONY: bin/windows
|
||||
bin/windows: # create windows binaries
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }#
|
||||
GOOS=windows GOARCH=amd64 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -tags assetsembedded -o ./vagrant.exe ./cmd/vagrant
|
||||
bin/windows:
|
||||
$(MAKE) bin/windows-amd64
|
||||
$(MAKE) bin/windows-386
|
||||
|
||||
.PHONY: bin/windows-amd64
|
||||
bin/windows-amd64: # create windows binaries
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }
|
||||
GOOS=windows GOARCH=amd64 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -tags assetsembedded -o ./bin/vagrant-go_windows_amd64.exe ./cmd/vagrant
|
||||
|
||||
.PHONY: bin/windows-386
|
||||
bin/windows-386: # create windows binaries
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }
|
||||
GOOS=windows GOARCH=386 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -tags assetsembedded -o ./bin/vagrant-go_windows_386.exe ./cmd/vagrant
|
||||
|
||||
.PHONY: bin/linux
|
||||
bin/linux: # create Linux binaries
|
||||
bin/linux:
|
||||
$(MAKE) bin/linux-amd64
|
||||
$(MAKE) bin/linux-386
|
||||
|
||||
.PHONY: bin/linux-amd64
|
||||
bin/linux-amd64: # create Linux binaries
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }
|
||||
GOOS=linux GOARCH=amd64 $(MAKE) bin
|
||||
GOOS=linux GOARCH=amd64 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -gcflags="$(GCFLAGS)" -tags assetsembedded -o ./bin/vagrant-go_linux_amd64 ./cmd/vagrant
|
||||
|
||||
.PHONY: bin/linux-386
|
||||
bin/linux-386: # create Linux binaries
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }
|
||||
GOOS=linux GOARCH=386 $(MAKE) bin
|
||||
GOOS=linux GOARCH=386 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -gcflags="$(GCFLAGS)" -tags assetsembedded -o ./bin/vagrant-go_linux_386 ./cmd/vagrant
|
||||
|
||||
.PHONY: bin/darwin
|
||||
bin/darwin: # create Darwin binaries
|
||||
bin/darwin:
|
||||
$(MAKE) bin/darwin-amd64
|
||||
$(MAKE) bin/darwin-arm64
|
||||
$(MAKE) bin/darwin-universal
|
||||
|
||||
.PHONY: bin/darwin-amd64
|
||||
bin/darwin-amd64: # create Darwin binaries
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }
|
||||
GOOS=darwin GOARCH=amd64 $(MAKE) bin
|
||||
GOOS=darwin GOARCH=amd64 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -gcflags="$(GCFLAGS)" -tags assetsembedded -o ./bin/vagrant-go_darwin_amd64 ./cmd/vagrant
|
||||
|
||||
.PHONY: bin/darwin-arm64
|
||||
bin/darwin-arm64: # create Darwin binaries
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }
|
||||
GOOS=darwin GOARCH=arm64 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -gcflags="$(GCFLAGS)" -tags assetsembedded -o ./bin/vagrant-go_darwin_arm64 ./cmd/vagrant
|
||||
|
||||
.PHONY: bin/darwin-universal
|
||||
bin/darwin-universal:
|
||||
@test -s "thirdparty/proto/api-common-protos/.git" || { echo "git submodules not initialized, run 'git submodule update --init --recursive' and try again"; exit 1; }
|
||||
GOOS=darwin GOARCH=arm64 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -gcflags="$(GCFLAGS)" -tags assetsembedded -o ./bin/.vagrant-go_darwin_arm64 ./cmd/vagrant
|
||||
GOOS=darwin GOARCH=amd64 CGO_ENABLED=$(CGO_ENABLED) go build -ldflags $(GOLDFLAGS) -gcflags="$(GCFLAGS)" -tags assetsembedded -o ./bin/.vagrant-go_darwin_amd64 ./cmd/vagrant
|
||||
go run github.com/randall77/makefat ./bin/vagrant-go_darwin_universal ./bin/.vagrant-go_darwin_arm64 ./bin/.vagrant-go_darwin_amd64
|
||||
rm -f ./bin/.vagrant-go_darwin*
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -f ./bin/vagrant-go* ./bin/.vagrant-go_darwin*
|
||||
|
||||
.PHONY: test
|
||||
test: # run tests
|
||||
|
||||
2
go.mod
2
go.mod
@ -43,6 +43,7 @@ require (
|
||||
github.com/oklog/ulid/v2 v2.0.2
|
||||
github.com/pkg/errors v0.9.1
|
||||
github.com/posener/complete v1.2.3
|
||||
github.com/randall77/makefat v0.0.0-20210315173500-7ddd0e42c844
|
||||
github.com/skratchdot/open-golang v0.0.0-20200116055534-eef842397966
|
||||
github.com/stretchr/testify v1.7.5
|
||||
github.com/zclconf/go-cty v1.10.0
|
||||
@ -94,7 +95,6 @@ require (
|
||||
github.com/go-git/gcfg v1.5.0 // indirect
|
||||
github.com/go-git/go-billy/v5 v5.0.0 // indirect
|
||||
github.com/go-test/deep v1.0.7 // indirect
|
||||
github.com/gogo/googleapis v1.4.1 // indirect
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
|
||||
github.com/golang/protobuf v1.5.2 // indirect
|
||||
|
||||
12
go.sum
12
go.sum
@ -209,8 +209,6 @@ github.com/go-test/deep v1.0.7 h1:/VSMRlnY/JSyqxQUzQLKVMAskpY/NZKFA5j2P+0pP2M=
|
||||
github.com/go-test/deep v1.0.7/go.mod h1:QV8Hv/iy04NyLBxAdO9njL0iVPN1S4d/A3NVv1V36o8=
|
||||
github.com/gofrs/flock v0.8.0 h1:MSdYClljsF3PbENUUEx85nkWfJSGfzYI9yEBZOJz6CY=
|
||||
github.com/gofrs/flock v0.8.0/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU=
|
||||
github.com/gogo/googleapis v1.4.1 h1:1Yx4Myt7BxzvUr5ldGSbwYiZG6t9wGBZ+8/fX3Wvtq0=
|
||||
github.com/gogo/googleapis v1.4.1/go.mod h1:2lpHqI5OcWCtVElxXnPt+s8oJvMpySlOyM6xDCrzib4=
|
||||
github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
|
||||
@ -361,14 +359,6 @@ github.com/hashicorp/hcl/v2 v2.11.1 h1:yTyWcXcm9XB0TEkyU/JCRU6rYy4K+mgLtzn2wlrJb
|
||||
github.com/hashicorp/hcl/v2 v2.11.1/go.mod h1:FwWsfWEjyV/CMj8s/gqAuiviY72rJ1/oayI9WftqcKg=
|
||||
github.com/hashicorp/nomad/api v0.0.0-20200814140818-42de70466a9d h1:afuZ/KNbxwUgjEzq2NXO2bRKZgsIJQgFxgIRGETF0/A=
|
||||
github.com/hashicorp/nomad/api v0.0.0-20200814140818-42de70466a9d/go.mod h1:DCi2k47yuUDzf2qWAK8E1RVmWgz/lc0jZQeEnICTxmY=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220913204040-793a2626f6f9 h1:wfdFsM/smge6K+RDgGLxWF4TcmAXZJis/IVUyT+G3JQ=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220913204040-793a2626f6f9/go.mod h1:zA5vDskG3gH306C+obL+yURiUiLMAlx52yqO8MC2r9w=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220919180525-50c632cd450d h1:TqCLroDhxzGMXE7LrgqDayOku2oRJ4vjROX7ghpzqsI=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220919180525-50c632cd450d/go.mod h1:zA5vDskG3gH306C+obL+yURiUiLMAlx52yqO8MC2r9w=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220919180735-d47bfe003e94 h1:CGq9dOg/kK0ihxx81H59xEHGfTvRs0ls8qCL3Bujdgo=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220919180735-d47bfe003e94/go.mod h1:zA5vDskG3gH306C+obL+yURiUiLMAlx52yqO8MC2r9w=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220928204300-c0e4b14e08c5 h1:xxwRPE6ISOz4CFFJlk3DmDD+4ZBt7iO9YiGwk4W/CYY=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220928204300-c0e4b14e08c5/go.mod h1:zA5vDskG3gH306C+obL+yURiUiLMAlx52yqO8MC2r9w=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220928204555-798e860a8593 h1:A75xYKrvyA/fNB6nSLBosbcrEmGTZSyMvuFHH7agscY=
|
||||
github.com/hashicorp/vagrant-plugin-sdk v0.0.0-20220928204555-798e860a8593/go.mod h1:zA5vDskG3gH306C+obL+yURiUiLMAlx52yqO8MC2r9w=
|
||||
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM=
|
||||
@ -517,6 +507,8 @@ github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndr
|
||||
github.com/posener/complete v1.2.3 h1:NP0eAhjcjImqslEwo/1hq7gpajME0fTLTezBKDqfXqo=
|
||||
github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSgv7Sy7s/s=
|
||||
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
|
||||
github.com/randall77/makefat v0.0.0-20210315173500-7ddd0e42c844 h1:GranzK4hv1/pqTIhMTXt2X8MmMOuH3hMeUR0o9SP5yc=
|
||||
github.com/randall77/makefat v0.0.0-20210315173500-7ddd0e42c844/go.mod h1:T1TLSfyWVBRXVGzWd0o9BI4kfoO9InEgfQe4NV3mLz8=
|
||||
github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=
|
||||
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
|
||||
github.com/rs/cors v1.7.0 h1:+88SsELBHx5r+hZ8TCkggzSstaWNbDvThkVK8H6f9ik=
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user