all: follow-up for d99ba3481b

This commit is contained in:
Aliaksandr Valialkin 2022-07-13 16:44:39 +03:00
parent 5f7b6bedce
commit ed93330e66
No known key found for this signature in database
GPG key ID: A72BEC6CD3D0DED1
23 changed files with 568 additions and 498 deletions

View file

@ -38,30 +38,8 @@ jobs:
make test-full make test-full
make test-pure make test-pure
make test-full-386 make test-full-386
make victoria-metrics make victoria-metrics-crossbuild
make victoria-metrics-pure make vmuitils-crossbuild
make victoria-metrics-arm
make victoria-metrics-arm64
make vmutils
GOOS=freebsd go build -mod=vendor ./app/victoria-metrics
GOOS=freebsd go build -mod=vendor ./app/vmagent
GOOS=freebsd go build -mod=vendor ./app/vmalert
GOOS=freebsd go build -mod=vendor ./app/vmbackup
GOOS=freebsd go build -mod=vendor ./app/vmrestore
GOOS=freebsd go build -mod=vendor ./app/vmctl
GOOS=openbsd go build -mod=vendor ./app/victoria-metrics
GOOS=openbsd go build -mod=vendor ./app/vmagent
GOOS=openbsd go build -mod=vendor ./app/vmalert
GOOS=openbsd go build -mod=vendor ./app/vmbackup
GOOS=openbsd go build -mod=vendor ./app/vmrestore
GOOS=openbsd go build -mod=vendor ./app/vmctl
GOOS=darwin go build -mod=vendor ./app/victoria-metrics
GOOS=darwin go build -mod=vendor ./app/vmagent
GOOS=darwin go build -mod=vendor ./app/vmalert
GOOS=darwin go build -mod=vendor ./app/vmbackup
GOOS=darwin go build -mod=vendor ./app/vmrestore
GOOS=darwin go build -mod=vendor ./app/vmctl
CGO_ENABLED=0 GOOS=windows go build -mod=vendor ./app/vmagent
- name: Publish coverage - name: Publish coverage
uses: codecov/codecov-action@v3 uses: codecov/codecov-action@v3
with: with:

335
Makefile
View file

@ -13,6 +13,10 @@ GO_BUILDINFO = -X '$(PKG_PREFIX)/lib/buildinfo.Version=$(APP_NAME)-$(DATEINFO_TA
.PHONY: $(MAKECMDGOALS) .PHONY: $(MAKECMDGOALS)
include app/*/Makefile
include deployment/*/Makefile
include snap/local/Makefile
all: \ all: \
victoria-metrics-prod \ victoria-metrics-prod \
vmagent-prod \ vmagent-prod \
@ -22,11 +26,6 @@ all: \
vmrestore-prod \ vmrestore-prod \
vmctl-prod vmctl-prod
include app/*/Makefile
include deployment/*/Makefile
include snap/local/Makefile
clean: clean:
rm -rf bin/* rm -rf bin/*
@ -64,21 +63,77 @@ vmutils-pure: \
vmrestore-pure \ vmrestore-pure \
vmctl-pure vmctl-pure
vmutils-arm64: \ vmutils-linux-amd64: \
vmagent-arm64 \ vmagent-linux-amd64 \
vmalert-arm64 \ vmalert-linux-amd64 \
vmauth-arm64 \ vmauth-linux-amd64 \
vmbackup-arm64 \ vmbackup-linux-amd64 \
vmrestore-arm64 \ vmrestore-linux-amd64 \
vmctl-arm64 vmctl-linux-amd64
vmutils-arm: \ vmutils-linux-arm64: \
vmagent-arm \ vmagent-linux-arm64 \
vmalert-arm \ vmalert-linux-arm64 \
vmauth-arm \ vmauth-linux-arm64 \
vmbackup-arm \ vmbackup-linux-arm64 \
vmrestore-arm \ vmrestore-linux-arm64 \
vmctl-arm vmctl-linux-arm64
vmutils-linux-arm: \
vmagent-linux-arm \
vmalert-linux-arm \
vmauth-linux-arm \
vmbackup-linux-arm \
vmrestore-linux-arm \
vmctl-linux-arm
vmutils-linux-386: \
vmagent-linux-386 \
vmalert-linux-386 \
vmauth-linux-386 \
vmbackup-linux-386 \
vmrestore-linux-386 \
vmctl-linux-386
vmutils-linux-ppc64le: \
vmagent-linux-ppc64le \
vmalert-linux-ppc64le \
vmauth-linux-ppc64le \
vmbackup-linux-ppc64le \
vmrestore-linux-ppc64le \
vmctl-linux-ppc64le
vmutils-darwin-amd64: \
vmagent-darwin-amd64 \
vmalert-darwin-amd64 \
vmauth-darwin-amd64 \
vmbackup-darwin-amd64 \
vmrestore-darwin-amd64 \
vmctl-darwin-amd64
vmutils-darwin-arm64: \
vmagent-darwin-arm64 \
vmalert-darwin-arm64 \
vmauth-darwin-arm64 \
vmbackup-darwin-arm64 \
vmrestore-darwin-arm64 \
vmctl-darwin-arm64
vmutils-freebsd-amd64: \
vmagent-freebsd-amd64 \
vmalert-freebsd-amd64 \
vmauth-freebsd-amd64 \
vmbackup-freebsd-amd64 \
vmrestore-freebsd-amd64 \
vmctl-freebsd-amd64
vmutils-openbsd-amd64: \
vmagent-openbsd-amd64 \
vmalert-openbsd-amd64 \
vmauth-openbsd-amd64 \
vmbackup-openbsd-amd64 \
vmrestore-openbsd-amd64 \
vmctl-openbsd-amd64
vmutils-windows-amd64: \ vmutils-windows-amd64: \
vmagent-windows-amd64 \ vmagent-windows-amd64 \
@ -86,12 +141,34 @@ vmutils-windows-amd64: \
vmauth-windows-amd64 \ vmauth-windows-amd64 \
vmctl-windows-amd64 vmctl-windows-amd64
victoria-metrics-crossbuild: \
victoria-metrics-linux-amd64 \
victoria-metrics-linux-arm64 \
victoria-metrics-linux-arm \
victoria-metrics-linux-386 \
victoria-metrics-linux-ppc64le \
victoria-metrics-darwin-amd64 \
victoria-metrics-darwin-arm64 \
victoria-metrics-freebsd-amd64 \
victoria-metrics-openbsd-amd64
vmutils-crossbuild: \
vmutils-linux-amd64 \
vmutils-linux-arm64 \
vmutils-linux-arm \
vmutils-linux-386 \
vmutils-linux-ppc64le \
vmutils-darwin-amd64 \
vmutils-darwin-arm64 \
vmutils-freebsd-amd64 \
vmutils-openbsd-amd64 \
vmutils-windows-amd64
publish-release: publish-release:
git checkout $(TAG) && $(MAKE) release copy-linux publish && \ git checkout $(TAG) && $(MAKE) release publish && \
git checkout $(TAG)-cluster && $(MAKE) release copy-linux-cluster publish && \ git checkout $(TAG)-cluster && $(MAKE) release publish && \
git checkout $(TAG)-enterprise && $(MAKE) release copy-linux-enterprise publish && \ git checkout $(TAG)-enterprise && $(MAKE) release publish && \
git checkout $(TAG)-enterprise-cluster && $(MAKE) release copy-linux-enterprise-cluster publish git checkout $(TAG)-enterprise-cluster && $(MAKE) release publish
release: \ release: \
release-victoria-metrics \ release-victoria-metrics \
@ -102,82 +179,106 @@ release-victoria-metrics: \
release-victoria-metrics-linux-arm \ release-victoria-metrics-linux-arm \
release-victoria-metrics-linux-arm64 \ release-victoria-metrics-linux-arm64 \
release-victoria-metrics-darwin-amd64 \ release-victoria-metrics-darwin-amd64 \
release-victoria-metrics-darwin-arm64 release-victoria-metrics-darwin-arm64 \
release-victoria-metrics-freebsd-amd64 \
release-victoria-metrics-openbsd-amd64
release-victoria-metrics-linux-amd64: release-victoria-metrics-linux-amd64:
OSARCH=linux-amd64 $(MAKE) release-victoria-metrics-generic GOOS=linux GOARCH=amd64 $(MAKE) release-victoria-metrics-goos-goarch
release-victoria-metrics-darwin-amd64:
OSARCH=darwin-amd64 $(MAKE) release-victoria-metrics-generic
release-victoria-metrics-linux-arm: release-victoria-metrics-linux-arm:
OSARCH=linux-arm $(MAKE) release-victoria-metrics-generic GOOS=linux GOARCH=arm $(MAKE) release-victoria-metrics-goos-goarch
release-victoria-metrics-linux-arm64: release-victoria-metrics-linux-arm64:
OSARCH=linux-arm64 $(MAKE) release-victoria-metrics-generic GOOS=linux GOARCH=arm64 $(MAKE) release-victoria-metrics-goos-goarch
release-victoria-metrics-darwin-amd64:
GOOS=darwin GOARCH=amd64 $(MAKE) release-victoria-metrics-goos-goarch
release-victoria-metrics-darwin-arm64: release-victoria-metrics-darwin-arm64:
OSARCH=darwin-arm64 $(MAKE) release-victoria-metrics-generic GOOS=darwin GOARCH=arm64 $(MAKE) release-victoria-metrics-goos-goarch
release-victoria-metrics-generic: victoria-metrics-$(OSARCH)-prod release-victoria-metrics-freebsd-amd64:
GOOS=freebsd GOARCH=amd64 $(MAKE) release-victoria-metrics-goos-goarch
release-victoria-metrics-openbsd-amd64:
GOOS=openbsd GOARCH=amd64 $(MAKE) release-victoria-metrics-goos-goarch
release-victoria-metrics-goos-goarch: victoria-metrics-$(GOOS)-$(GOARCH)-prod
cd bin && \ cd bin && \
tar --transform="flags=r;s|-$(OSARCH)||" -czf victoria-metrics-$(OSARCH)-$(PKG_TAG).tar.gz \ tar --transform="flags=r;s|-$(GOOS)-$(GOARCH)||" -czf victoria-metrics-$(GOOS)-$(GOARCH)-$(PKG_TAG).tar.gz \
victoria-metrics-$(OSARCH)-prod \ victoria-metrics-$(GOOS)-$(GOARCH)-prod \
&& sha256sum victoria-metrics-$(OSARCH)-$(PKG_TAG).tar.gz \ && sha256sum victoria-metrics-$(GOOS)-$(GOARCH)-$(PKG_TAG).tar.gz \
victoria-metrics-$(OSARCH)-prod \ victoria-metrics-$(GOOS)-$(GOARCH)-prod \
| sed s/-$(OSARCH)-prod/-prod/ > victoria-metrics-$(OSARCH)-$(PKG_TAG)_checksums.txt | sed s/-$(GOOS)-$(GOARCH)-prod/-prod/ > victoria-metrics-$(GOOS)-$(GOARCH)-$(PKG_TAG)_checksums.txt
cd bin && rm -rf victoria-metrics-$(GOOS)-$(GOARCH)-prod
release-vmutils: \ release-vmutils: \
release-vmutils-linux-amd64 \ release-vmutils-linux-amd64 \
release-vmutils-linux-arm \
release-vmutils-linux-arm64 \ release-vmutils-linux-arm64 \
release-vmutils-linux-arm \
release-vmutils-darwin-amd64 \ release-vmutils-darwin-amd64 \
release-vmutils-darwin-arm64 \ release-vmutils-darwin-arm64 \
release-vmutils-freebsd-amd64 \
release-vmutils-openbsd-amd64 \
release-vmutils-windows-amd64 release-vmutils-windows-amd64
release-vmutils-linux-amd64: release-vmutils-linux-amd64:
OSARCH=linux-amd64 $(MAKE) release-vmutils-generic GOOS=linux GOARCH=amd64 $(MAKE) release-vmutils-goos-goarch
release-vmutils-darwin-amd64:
OSARCH=darwin-amd64 $(MAKE) release-vmutils-generic
release-vmutils-windows-amd64:
GOARCH=amd64 $(MAKE) release-vmutils-windows-generic
release-vmutils-linux-arm:
OSARCH=linux-arm $(MAKE) release-vmutils-generic
release-vmutils-linux-arm64: release-vmutils-linux-arm64:
OSARCH=linux-arm64 $(MAKE) release-vmutils-generic GOOS=linux GOARCH=arm64 $(MAKE) release-vmutils-goos-goarch
release-vmutils-linux-arm:
GOOS=linux GOARCH=arm $(MAKE) release-vmutils-goos-goarch
release-vmutils-darwin-amd64:
GOOS=darwin GOARCH=amd64 $(MAKE) release-vmutils-goos-goarch
release-vmutils-darwin-arm64: release-vmutils-darwin-arm64:
OSARCH=darwin-arm64 $(MAKE) release-vmutils-generic GOOS=darwin GOARCH=arm64 $(MAKE) release-vmutils-goos-goarch
release-vmutils-generic: \ release-vmutils-freebsd-amd64:
vmagent-$(OSARCH)-prod \ GOOS=freebsd GOARCH=amd64 $(MAKE) release-vmutils-goos-goarch
vmalert-$(OSARCH)-prod \
vmauth-$(OSARCH)-prod \ release-vmutils-openbsd-amd64:
vmbackup-$(OSARCH)-prod \ GOOS=openbsd GOARCH=amd64 $(MAKE) release-vmutils-goos-goarch
vmrestore-$(OSARCH)-prod \
vmctl-$(OSARCH)-prod release-vmutils-windows-amd64:
GOARCH=amd64 $(MAKE) release-vmutils-windows-goarch
release-vmutils-goos-goarch: \
vmagent-$(GOOS)-$(GOARCH)-prod \
vmalert-$(GOOS)-$(GOARCH)-prod \
vmauth-$(GOOS)-$(GOARCH)-prod \
vmbackup-$(GOOS)-$(GOARCH)-prod \
vmrestore-$(GOOS)-$(GOARCH)-prod \
vmctl-$(GOOS)-$(GOARCH)-prod
cd bin && \ cd bin && \
tar --transform="flags=r;s|-$(OSARCH)||" -czf vmutils-$(OSARCH)-$(PKG_TAG).tar.gz \ tar --transform="flags=r;s|-$(GOOS)-$(GOARCH)||" -czf vmutils-$(GOOS)-$(GOARCH)-$(PKG_TAG).tar.gz \
vmagent-$(OSARCH)-prod \ vmagent-$(GOOS)-$(GOARCH)-prod \
vmalert-$(OSARCH)-prod \ vmalert-$(GOOS)-$(GOARCH)-prod \
vmauth-$(OSARCH)-prod \ vmauth-$(GOOS)-$(GOARCH)-prod \
vmbackup-$(OSARCH)-prod \ vmbackup-$(GOOS)-$(GOARCH)-prod \
vmrestore-$(OSARCH)-prod \ vmrestore-$(GOOS)-$(GOARCH)-prod \
vmctl-$(OSARCH)-prod \ vmctl-$(GOOS)-$(GOARCH)-prod \
&& sha256sum vmutils-$(OSARCH)-$(PKG_TAG).tar.gz \ && sha256sum vmutils-$(GOOS)-$(GOARCH)-$(PKG_TAG).tar.gz \
vmagent-$(OSARCH)-prod \ vmagent-$(GOOS)-$(GOARCH)-prod \
vmalert-$(OSARCH)-prod \ vmalert-$(GOOS)-$(GOARCH)-prod \
vmauth-$(OSARCH)-prod \ vmauth-$(GOOS)-$(GOARCH)-prod \
vmbackup-$(OSARCH)-prod \ vmbackup-$(GOOS)-$(GOARCH)-prod \
vmrestore-$(OSARCH)-prod \ vmrestore-$(GOOS)-$(GOARCH)-prod \
vmctl-$(OSARCH)-prod \ vmctl-$(GOOS)-$(GOARCH)-prod \
| sed s/-$(OSARCH)-prod/-prod/ > vmutils-$(OSARCH)-$(PKG_TAG)_checksums.txt | sed s/-$(GOOS)-$(GOARCH)-prod/-prod/ > vmutils-$(GOOS)-$(GOARCH)-$(PKG_TAG)_checksums.txt
cd bin && rm -rf \
vmagent-$(GOOS)-$(GOARCH)-prod \
vmalert-$(GOOS)-$(GOARCH)-prod \
vmauth-$(GOOS)-$(GOARCH)-prod \
vmbackup-$(GOOS)-$(GOARCH)-prod \
vmrestore-$(GOOS)-$(GOARCH)-prod \
vmctl-$(GOOS)-$(GOARCH)-prod
release-vmutils-windows-generic: \ release-vmutils-windows-goarch: \
vmagent-windows-$(GOARCH)-prod \ vmagent-windows-$(GOARCH)-prod \
vmalert-windows-$(GOARCH)-prod \ vmalert-windows-$(GOARCH)-prod \
vmauth-windows-$(GOARCH)-prod \ vmauth-windows-$(GOARCH)-prod \
@ -194,18 +295,23 @@ release-vmutils-windows-generic: \
vmauth-windows-$(GOARCH)-prod.exe \ vmauth-windows-$(GOARCH)-prod.exe \
vmctl-windows-$(GOARCH)-prod.exe \ vmctl-windows-$(GOARCH)-prod.exe \
> vmutils-windows-$(GOARCH)-$(PKG_TAG)_checksums.txt > vmutils-windows-$(GOARCH)-$(PKG_TAG)_checksums.txt
cd bin && rm -rf \
vmagent-windows-$(GOARCH)-prod.exe \
vmalert-windows-$(GOARCH)-prod.exe \
vmauth-windows-$(GOARCH)-prod.exe \
vmctl-windows-$(GOARCH)-prod.exe
pprof-cpu: pprof-cpu:
go tool pprof -trim_path=github.com/VictoriaMetrics/VictoriaMetrics@ $(PPROF_FILE) go tool pprof -trim_path=github.com/VictoriaMetrics/VictoriaMetrics@ $(PPROF_FILE)
fmt: fmt:
GO111MODULE=on gofmt -l -w -s ./lib gofmt -l -w -s ./lib
GO111MODULE=on gofmt -l -w -s ./app gofmt -l -w -s ./app
vet: vet:
GO111MODULE=on go vet -mod=vendor ./lib/... go vet -mod=vendor ./lib/...
GO111MODULE=on go vet -mod=vendor ./app/... go vet -mod=vendor ./app/...
lint: install-golint lint: install-golint
golint lib/... golint lib/...
@ -232,45 +338,45 @@ install-errcheck:
check-all: fmt vet lint errcheck golangci-lint check-all: fmt vet lint errcheck golangci-lint
test: test:
GO111MODULE=on go test -mod=vendor ./lib/... ./app/... go test -mod=vendor ./lib/... ./app/...
test-race: test-race:
GO111MODULE=on go test -mod=vendor -race ./lib/... ./app/... go test -mod=vendor -race ./lib/... ./app/...
test-pure: test-pure:
GO111MODULE=on CGO_ENABLED=0 go test -mod=vendor ./lib/... ./app/... CGO_ENABLED=0 go test -mod=vendor ./lib/... ./app/...
test-full: test-full:
GO111MODULE=on go test -mod=vendor -coverprofile=coverage.txt -covermode=atomic ./lib/... ./app/... go test -mod=vendor -coverprofile=coverage.txt -covermode=atomic ./lib/... ./app/...
test-full-386: test-full-386:
GO111MODULE=on GOARCH=386 go test -mod=vendor -coverprofile=coverage.txt -covermode=atomic ./lib/... ./app/... GOARCH=386 go test -mod=vendor -coverprofile=coverage.txt -covermode=atomic ./lib/... ./app/...
benchmark: benchmark:
GO111MODULE=on go test -mod=vendor -bench=. ./lib/... go test -mod=vendor -bench=. ./lib/...
GO111MODULE=on go test -mod=vendor -bench=. ./app/... go test -mod=vendor -bench=. ./app/...
benchmark-pure: benchmark-pure:
GO111MODULE=on CGO_ENABLED=0 go test -mod=vendor -bench=. ./lib/... CGO_ENABLED=0 go test -mod=vendor -bench=. ./lib/...
GO111MODULE=on CGO_ENABLED=0 go test -mod=vendor -bench=. ./app/... CGO_ENABLED=0 go test -mod=vendor -bench=. ./app/...
vendor-update: vendor-update:
GO111MODULE=on go get -u -d ./lib/... go get -u -d ./lib/...
GO111MODULE=on go get -u -d ./app/... go get -u -d ./app/...
GO111MODULE=on go mod tidy -compat=1.17 go mod tidy -compat=1.17
GO111MODULE=on go mod vendor go mod vendor
app-local: app-local:
CGO_ENABLED=1 GO111MODULE=on go build $(RACE) -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/$(APP_NAME)$(RACE) $(PKG_PREFIX)/app/$(APP_NAME) CGO_ENABLED=1 go build $(RACE) -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/$(APP_NAME)$(RACE) $(PKG_PREFIX)/app/$(APP_NAME)
app-local-pure: app-local-pure:
CGO_ENABLED=0 GO111MODULE=on go build $(RACE) -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/$(APP_NAME)-pure$(RACE) $(PKG_PREFIX)/app/$(APP_NAME) CGO_ENABLED=0 go build $(RACE) -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/$(APP_NAME)-pure$(RACE) $(PKG_PREFIX)/app/$(APP_NAME)
app-local-with-goarch: app-local-goos-goarch:
GO111MODULE=on go build $(RACE) -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/$(APP_NAME)-$(GOARCH)$(RACE) $(PKG_PREFIX)/app/$(APP_NAME) CGO_ENABLED=$(CGO_ENABLED) GOOS=$(GOOS) GOARCH=$(GOARCH) go build $(RACE) -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/$(APP_NAME)-$(GOOS)-$(GOARCH)$(RACE) $(PKG_PREFIX)/app/$(APP_NAME)
app-local-windows-with-goarch: app-local-windows-goarch:
CGO_ENABLED=0 GO111MODULE=on go build $(RACE) -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/$(APP_NAME)-windows-$(GOARCH)$(RACE).exe $(PKG_PREFIX)/app/$(APP_NAME) CGO_ENABLED=0 GOOS=windows GOARCH=$(GOARCH) go build $(RACE) -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/$(APP_NAME)-windows-$(GOARCH)$(RACE).exe $(PKG_PREFIX)/app/$(APP_NAME)
quicktemplate-gen: install-qtc quicktemplate-gen: install-qtc
qtc qtc
@ -309,40 +415,3 @@ docs-sync:
SRC=app/vmctl/README.md DST=docs/vmctl.md ORDER=8 $(MAKE) copy-docs SRC=app/vmctl/README.md DST=docs/vmctl.md ORDER=8 $(MAKE) copy-docs
SRC=app/vmgateway/README.md DST=docs/vmgateway.md ORDER=9 $(MAKE) copy-docs SRC=app/vmgateway/README.md DST=docs/vmgateway.md ORDER=9 $(MAKE) copy-docs
SRC=app/vmbackupmanager/README.md DST=docs/vmbackupmanager.md ORDER=10 $(MAKE) copy-docs SRC=app/vmbackupmanager/README.md DST=docs/vmbackupmanager.md ORDER=10 $(MAKE) copy-docs
# temporary operation to maintain compatibility
copy-linux:
cd bin && \
cp victoria-metrics-linux-amd64-$(PKG_TAG).tar.gz victoria-metrics-amd64-$(PKG_TAG).tar.gz && \
cp victoria-metrics-linux-arm-$(PKG_TAG).tar.gz victoria-metrics-arm-$(PKG_TAG).tar.gz && \
cp victoria-metrics-linux-arm64-$(PKG_TAG).tar.gz victoria-metrics-arm64-$(PKG_TAG).tar.gz && \
cp vmutils-linux-amd64-$(PKG_TAG).tar.gz vmutils-amd64-$(PKG_TAG).tar.gz && \
cp vmutils-linux-arm-$(PKG_TAG).tar.gz vmutils-arm-$(PKG_TAG).tar.gz && \
cp vmutils-linux-arm64-$(PKG_TAG).tar.gz vmutils-arm64-$(PKG_TAG).tar.gz
copy-linux-cluster:
cd bin && \
cp victoria-metrics-linux-amd64-$(PKG_TAG)-cluster.tar.gz victoria-metrics-amd64-$(PKG_TAG)-cluster.tar.gz && \
cp victoria-metrics-linux-arm-$(PKG_TAG)-cluster.tar.gz victoria-metrics-arm-$(PKG_TAG)-cluster.tar.gz && \
cp victoria-metrics-linux-arm64-$(PKG_TAG)-cluster.tar.gz victoria-metrics-arm64-$(PKG_TAG)-cluster.tar.gz
cp vmutils-linux-amd64-$(PKG_TAG)-cluster.tar.gz vmutils-amd64-$(PKG_TAG)-cluster.tar.gz && \
cp vmutils-linux-arm-$(PKG_TAG)-cluster.tar.gz vmutils-arm-$(PKG_TAG)-cluster.tar.gz && \
cp vmutils-linux-arm64-$(PKG_TAG)-cluster.tar.gz vmutils-arm64-$(PKG_TAG)-cluster.tar.gz
copy-linux-enterprise:
cd bin && \
cp victoria-metrics-linux-amd64-$(PKG_TAG)-enterprise.tar.gz victoria-metrics-amd64-$(PKG_TAG)-enterprise.tar.gz && \
cp victoria-metrics-linux-arm-$(PKG_TAG)-enterprise.tar.gz victoria-metrics-arm-$(PKG_TAG)-enterprise.tar.gz && \
cp victoria-metrics-linux-arm64-$(PKG_TAG)-enterprise.tar.gz victoria-metrics-arm64-$(PKG_TAG)-enterprise.tar.gz && \
cp vmutils-linux-amd64-$(PKG_TAG)-enterprise.tar.gz vmutils-amd64-$(PKG_TAG)-enterprise.tar.gz && \
cp vmutils-linux-arm-$(PKG_TAG)-enterprise.tar.gz vmutils-arm-$(PKG_TAG)-enterprise.tar.gz && \
cp vmutils-linux-arm64-$(PKG_TAG)-enterprise.tar.gz vmutils-arm64-$(PKG_TAG)-enterprise.tar.gz
copy-linux-enterprise-cluster:
cd bin && \
cp victoria-metrics-linux-amd64-$(PKG_TAG)-enterprise-cluster.tar.gz victoria-metrics-amd64-$(PKG_TAG)-enterprise-cluster.tar.gz && \
cp victoria-metrics-linux-arm-$(PKG_TAG)-enterprise-cluster.tar.gz victoria-metrics-arm-$(PKG_TAG)-enterprise-cluster.tar.gz && \
cp victoria-metrics-linux-arm64-$(PKG_TAG)-enterprise-cluster.tar.gz victoria-metrics-arm64-$(PKG_TAG)-enterprise-cluster.tar.gz && \
cp vmutils-linux-amd64-$(PKG_TAG)-enterprise-cluster.tar.gz vmutils-amd64-$(PKG_TAG)-enterprise-cluster.tar.gz && \
cp vmutils-linux-arm-$(PKG_TAG)-enterprise-cluster.tar.gz vmutils-arm-$(PKG_TAG)-enterprise-cluster.tar.gz && \
cp vmutils-linux-arm64-$(PKG_TAG)-enterprise-cluster.tar.gz vmutils-arm64-$(PKG_TAG)-enterprise-cluster.tar.gz

View file

@ -745,14 +745,14 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
### Development ARM build ### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make victoria-metrics-arm` or `make victoria-metrics-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make victoria-metrics-linux-arm` or `make victoria-metrics-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `victoria-metrics-arm` or `victoria-metrics-arm64` binary respectively and puts it into the `bin` folder. It builds `victoria-metrics-linux-arm` or `victoria-metrics-linux-arm64` binary respectively and puts it into the `bin` folder.
### Production ARM build ### Production ARM build
1. [Install docker](https://docs.docker.com/install/). 1. [Install docker](https://docs.docker.com/install/).
2. Run `make victoria-metrics-arm-prod` or `make victoria-metrics-arm64-prod` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make victoria-metrics-linux-arm-prod` or `make victoria-metrics-linux-arm64-prod` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `victoria-metrics-arm-prod` or `victoria-metrics-arm64-prod` binary respectively and puts it into the `bin` folder. It builds `victoria-metrics-linux-arm-prod` or `victoria-metrics-linux-arm64-prod` binary respectively and puts it into the `bin` folder.
### Pure Go build (CGO_ENABLED=0) ### Pure Go build (CGO_ENABLED=0)

View file

@ -1,6 +1,5 @@
# All these commands must run from repository root. # All these commands must run from repository root.
# Application build
victoria-metrics: victoria-metrics:
APP_NAME=victoria-metrics $(MAKE) app-local APP_NAME=victoria-metrics $(MAKE) app-local
@ -13,42 +12,33 @@ victoria-metrics-prod:
victoria-metrics-pure-prod: victoria-metrics-pure-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-pure APP_NAME=victoria-metrics $(MAKE) app-via-docker-pure
# GOARCH=amd64
victoria-metrics-amd64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-amd64
victoria-metrics-linux-amd64-prod: victoria-metrics-linux-amd64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-linux-amd64 APP_NAME=victoria-metrics $(MAKE) app-via-docker-linux-amd64
victoria-metrics-darwin-amd64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-darwin-amd64
# GOARCH=arm64
victoria-metrics-arm64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-arm64
victoria-metrics-linux-arm64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-linux-arm64
victoria-metrics-darwin-arm64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-darwin-arm64
# GOARCH=arm
victoria-metrics-arm-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-arm
victoria-metrics-linux-arm-prod: victoria-metrics-linux-arm-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-linux-arm APP_NAME=victoria-metrics $(MAKE) app-via-docker-linux-arm
# GOARCH=ppc64le victoria-metrics-linux-arm64-prod:
victoria-metrics-ppc64le-prod: APP_NAME=victoria-metrics $(MAKE) app-via-docker-linux-arm64
APP_NAME=victoria-metrics $(MAKE) app-via-docker-ppc64le
# GOARCH=386 victoria-metrics-linux-ppc64le-prod:
victoria-metrics-386-prod: APP_NAME=victoria-metrics $(MAKE) app-via-docker-linux-ppc64le
APP_NAME=victoria-metrics $(MAKE) app-via-docker-386
victoria-metrics-linux-386-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-linux-386
victoria-metrics-darwin-amd64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-darwin-amd64
victoria-metrics-darwin-arm64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-darwin-arm64
victoria-metrics-freebsd-amd64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-freebsd-amd64
victoria-metrics-openbsd-amd64-prod:
APP_NAME=victoria-metrics $(MAKE) app-via-docker-openbsd-amd64
# Package build
package-victoria-metrics: package-victoria-metrics:
APP_NAME=victoria-metrics $(MAKE) package-via-docker APP_NAME=victoria-metrics $(MAKE) package-via-docker
@ -80,60 +70,68 @@ run-victoria-metrics:
ARGS='-graphiteListenAddr=:2003 -opentsdbListenAddr=:4242 -retentionPeriod=12 -search.maxUniqueTimeseries=1000000 -search.maxQueryDuration=10m' \ ARGS='-graphiteListenAddr=:2003 -opentsdbListenAddr=:4242 -retentionPeriod=12 -search.maxUniqueTimeseries=1000000 -search.maxQueryDuration=10m' \
$(MAKE) run-via-docker $(MAKE) run-via-docker
victoria-metrics-amd64: victoria-metrics-linux-amd64:
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 GO111MODULE=on go build -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/victoria-metrics-amd64 ./app/victoria-metrics APP_NAME=victoria-metrics CGO_ENABLED=1 GOOS=linux GOARCH=amd64 $(MAKE) app-local-goos-goarch
victoria-metrics-arm: victoria-metrics-linux-arm:
CGO_ENABLED=0 GOOS=linux GOARCH=arm GO111MODULE=on go build -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/victoria-metrics-arm ./app/victoria-metrics APP_NAME=victoria-metrics CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-local-goos-goarch
victoria-metrics-arm64: victoria-metrics-linux-arm64:
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 GO111MODULE=on go build -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/victoria-metrics-arm64 ./app/victoria-metrics APP_NAME=victoria-metrics CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-local-goos-goarch
victoria-metrics-ppc64le: victoria-metrics-linux-ppc64le:
CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le GO111MODULE=on go build -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/victoria-metrics-ppc64le ./app/victoria-metrics APP_NAME=victoria-metrics CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le $(MAKE) app-local-goos-goarch
victoria-metrics-386: victoria-metrics-linux-386:
CGO_ENABLED=0 GOOS=linux GOARCH=386 GO111MODULE=on go build -mod=vendor -ldflags "$(GO_BUILDINFO)" -o bin/victoria-metrics-386 ./app/victoria-metrics APP_NAME=victoria-metrics CGO_ENABLED=0 GOOS=linux GOARCH=386 $(MAKE) app-local-goos-goarch
victoria-metrics-darwin-amd64:
APP_NAME=victoria-metrics CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-local-goos-goarch
victoria-metrics-darwin-arm64:
APP_NAME=victoria-metrics CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-local-goos-goarch
victoria-metrics-freebsd-amd64:
APP_NAME=victoria-metrics CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
victoria-metrics-openbsd-amd64:
APP_NAME=victoria-metrics CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
victoria-metrics-pure: victoria-metrics-pure:
APP_NAME=victoria-metrics $(MAKE) app-local-pure APP_NAME=victoria-metrics $(MAKE) app-local-pure
### Packaging as DEB - amd64 ### Packaging as DEB - amd64
victoria-metrics-package-deb: victoria-metrics-prod victoria-metrics-package-deb-amd64: victoria-metrics-linux-amd64-prod
./package/package_deb.sh amd64 ./package/package_deb.sh amd64
### Packaging as DEB - arm64 ### Packaging as DEB - arm64
victoria-metrics-package-deb-arm64: victoria-metrics-arm64-prod victoria-metrics-package-deb-arm: victoria-metrics-linux-arm-prod
./package/package_deb.sh arm
### Packaging as DEB - arm64
victoria-metrics-package-deb-arm64: victoria-metrics-linux-arm64-prod
./package/package_deb.sh arm64 ./package/package_deb.sh arm64
### Packaging as DEB - all ### Packaging as DEB - all
victoria-metrics-package-deb-all: \ victoria-metrics-package-deb: \
victoria-metrics-package-deb \ victoria-metrics-package-deb-amd64 \
victoria-metrics-package-deb-arm \
victoria-metrics-package-deb-arm64 victoria-metrics-package-deb-arm64
### Packaging as RPM - amd64 ### Packaging as RPM - amd64
victoria-metrics-package-rpm: victoria-metrics-prod victoria-metrics-package-rpm-amd64: victoria-metrics-linux-amd64-prod
./package/package_rpm.sh amd64 ./package/package_rpm.sh amd64
### Packaging as RPM - arm64 ### Packaging as RPM - arm64
victoria-metrics-package-rpm-arm64: victoria-metrics-arm64-prod victoria-metrics-package-rpm-arm64: victoria-metrics-linux-arm64-prod
./package/package_rpm.sh arm64 ./package/package_rpm.sh arm64
### Packaging as RPM - all ### Packaging as RPM - all
victoria-metrics-package-rpm-all: \ victoria-metrics-package-rpm: \
victoria-metrics-package-rpm \ victoria-metrics-package-rpm-amd64 \
victoria-metrics-package-rpm-arm64 victoria-metrics-package-rpm-arm64
### Packaging as both DEB and RPM - all ### Packaging as both DEB and RPM - all
victoria-metrics-package-deb-rpm-all: \ victoria-metrics-package-deb-rpm: \
victoria-metrics-package-deb \ victoria-metrics-package-deb \
victoria-metrics-package-deb-arm64 \ victoria-metrics-package-rpm
victoria-metrics-package-rpm \
victoria-metrics-package-rpm-arm64
### Packaging as snap
victoria-metrics-package-snap:
which snapcraft || snap install snapcraft
which multipass || snap install multipass
snapcraft

View file

@ -1,6 +1,5 @@
# All these commands must run from repository root. # All these commands must run from repository root.
# Application build
vmagent: vmagent:
APP_NAME=vmagent $(MAKE) app-local APP_NAME=vmagent $(MAKE) app-local
@ -13,36 +12,36 @@ vmagent-prod:
vmagent-pure-prod: vmagent-pure-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-pure APP_NAME=vmagent $(MAKE) app-via-docker-pure
# GOOS=linux
vmagent-linux-amd64-prod: vmagent-linux-amd64-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-linux-amd64 APP_NAME=vmagent $(MAKE) app-via-docker-linux-amd64
vmagent-linux-arm64-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-linux-arm64
vmagent-linux-arm-prod: vmagent-linux-arm-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-linux-arm APP_NAME=vmagent $(MAKE) app-via-docker-linux-arm
#GOOS=darwin vmagent-linux-arm64-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-linux-arm64
vmagent-linux-ppc64le-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-linux-ppc64le
vmagent-linux-386-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-linux-386
vmagent-darwin-amd64-prod: vmagent-darwin-amd64-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-darwin-amd64 APP_NAME=vmagent $(MAKE) app-via-docker-darwin-amd64
vmagent-darwin-arm64-prod: vmagent-darwin-arm64-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-darwin-arm64 APP_NAME=vmagent $(MAKE) app-via-docker-darwin-arm64
#GOOS=windows vmagent-freebsd-amd64-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-freebsd-amd64
vmagent-openbsd-amd64-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-openbsd-amd64
vmagent-windows-amd64-prod: vmagent-windows-amd64-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-windows-amd64 APP_NAME=vmagent $(MAKE) app-via-docker-windows-amd64
# GOARCH=ppc64le
vmagent-ppc64le-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-ppc64le
# GOARCH=386
vmagent-386-prod:
APP_NAME=vmagent $(MAKE) app-via-docker-386
# Package build
package-vmagent: package-vmagent:
APP_NAME=vmagent $(MAKE) package-via-docker APP_NAME=vmagent $(MAKE) package-via-docker
@ -74,26 +73,35 @@ run-vmagent:
APP_NAME=vmagent \ APP_NAME=vmagent \
$(MAKE) run-via-docker $(MAKE) run-via-docker
vmagent-amd64: vmagent-linux-amd64:
CGO_ENABLED=1 GOARCH=amd64 $(MAKE) vmagent-local-with-goarch APP_NAME=vmagent CGO_ENABLED=1 GOOS=linux GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmagent-arm: vmagent-linux-arm:
CGO_ENABLED=0 GOARCH=arm $(MAKE) vmagent-local-with-goarch APP_NAME=vmagent CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-local-goos-goarch
vmagent-arm64: vmagent-linux-arm64:
CGO_ENABLED=0 GOARCH=arm64 $(MAKE) vmagent-local-with-goarch APP_NAME=vmagent CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmagent-ppc64le: vmagent-linux-ppc64le:
CGO_ENABLED=0 GOARCH=ppc64le $(MAKE) vmagent-local-with-goarch APP_NAME=vmagent CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le $(MAKE) app-local-goos-goarch
vmagent-386: vmagent-linux-386:
CGO_ENABLED=0 GOARCH=386 $(MAKE) vmagent-local-with-goarch APP_NAME=vmagent CGO_ENABLED=0 GOOS=linux GOARCH=386 $(MAKE) app-local-goos-goarch
vmagent-local-with-goarch: vmagent-darwin-amd64:
APP_NAME=vmagent $(MAKE) app-local-with-goarch APP_NAME=vmagent CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmagent-darwin-arm64:
APP_NAME=vmagent CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmagent-freebsd-amd64:
APP_NAME=vmagent CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmagent-openbsd-amd64:
APP_NAME=vmagent CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmagent-windows-amd64:
GOARCH=amd64 APP_NAME=vmagent $(MAKE) app-local-windows-goarch
vmagent-pure: vmagent-pure:
APP_NAME=vmagent $(MAKE) app-local-pure APP_NAME=vmagent $(MAKE) app-local-pure
vmagent-windows-amd64:
GOARCH=amd64 APP_NAME=vmagent $(MAKE) app-local-windows-with-goarch

View file

@ -817,8 +817,8 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
### Development ARM build ### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make vmagent-arm` or `make vmagent-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics) 2. Run `make vmagent-linux-arm` or `make vmagent-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics)
It builds `vmagent-arm` or `vmagent-arm64` binary respectively and puts it into the `bin` folder. It builds `vmagent-linux-arm` or `vmagent-linux-arm64` binary respectively and puts it into the `bin` folder.
### Production ARM build ### Production ARM build

View file

@ -1,6 +1,5 @@
# All these commands must run from repository root. # All these commands must run from repository root.
# Application build
vmalert: vmalert:
APP_NAME=vmalert $(MAKE) app-local APP_NAME=vmalert $(MAKE) app-local
@ -13,36 +12,36 @@ vmalert-prod:
vmalert-pure-prod: vmalert-pure-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-pure APP_NAME=vmalert $(MAKE) app-via-docker-pure
# GOOS=linux
vmalert-linux-amd64-prod: vmalert-linux-amd64-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-linux-amd64 APP_NAME=vmalert $(MAKE) app-via-docker-linux-amd64
vmalert-linux-arm64-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-linux-arm64
vmalert-linux-arm-prod: vmalert-linux-arm-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-linux-arm APP_NAME=vmalert $(MAKE) app-via-docker-linux-arm
# GOOS=darwin vmalert-linux-arm64-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-linux-arm64
vmalert-linux-ppc64le-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-linux-ppc64le
vmalert-linux-386-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-linux-386
vmalert-darwin-amd64-prod: vmalert-darwin-amd64-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-darwin-amd64 APP_NAME=vmalert $(MAKE) app-via-docker-darwin-amd64
vmalert-darwin-arm64-prod: vmalert-darwin-arm64-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-darwin-arm64 APP_NAME=vmalert $(MAKE) app-via-docker-darwin-arm64
# GOOS=windows vmalert-freebsd-amd64-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-freebsd-amd64
vmalert-openbsd-amd64-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-openbsd-amd64
vmalert-windows-amd64-prod: vmalert-windows-amd64-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-windows-amd64 APP_NAME=vmalert $(MAKE) app-via-docker-windows-amd64
# GOARCH=ppc64le
vmalert-ppc64le-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-ppc64le
# GOARCH=386
vmalert-386-prod:
APP_NAME=vmalert $(MAKE) app-via-docker-386
# Package build
package-vmalert: package-vmalert:
APP_NAME=vmalert $(MAKE) package-via-docker APP_NAME=vmalert $(MAKE) package-via-docker
@ -103,26 +102,35 @@ replay-vmalert: vmalert
-replay.timeFrom=2021-05-11T07:21:43Z \ -replay.timeFrom=2021-05-11T07:21:43Z \
-replay.timeTo=2021-05-29T18:40:43Z -replay.timeTo=2021-05-29T18:40:43Z
vmalert-amd64: vmalert-linux-amd64:
CGO_ENABLED=1 GOARCH=amd64 $(MAKE) vmalert-local-with-goarch APP_NAME=vmalert CGO_ENABLED=1 GOOS=linux GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmalert-arm: vmalert-linux-arm:
CGO_ENABLED=0 GOARCH=arm $(MAKE) vmalert-local-with-goarch APP_NAME=vmalert CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-local-goos-goarch
vmalert-arm64: vmalert-linux-arm64:
CGO_ENABLED=0 GOARCH=arm64 $(MAKE) vmalert-local-with-goarch APP_NAME=vmalert CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmalert-ppc64le: vmalert-linux-ppc64le:
CGO_ENABLED=0 GOARCH=ppc64le $(MAKE) vmalert-local-with-goarch APP_NAME=vmalert CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le $(MAKE) app-local-goos-goarch
vmalert-386: vmalert-linux-386:
CGO_ENABLED=0 GOARCH=386 $(MAKE) vmalert-local-with-goarch APP_NAME=vmalert CGO_ENABLED=0 GOOS=linux GOARCH=386 $(MAKE) app-local-goos-goarch
vmalert-local-with-goarch: vmalert-darwin-amd64:
APP_NAME=vmalert $(MAKE) app-local-with-goarch APP_NAME=vmalert CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmalert-darwin-arm64:
APP_NAME=vmalert CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmalert-freebsd-amd64:
APP_NAME=vmalert CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmalert-openbsd-amd64:
APP_NAME=vmalert CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmalert-windows-amd64:
GOARCH=amd64 APP_NAME=vmalert $(MAKE) app-local-windows-goarch
vmalert-pure: vmalert-pure:
APP_NAME=vmalert $(MAKE) app-local-pure APP_NAME=vmalert $(MAKE) app-local-pure
vmalert-windows-amd64:
GOARCH=amd64 APP_NAME=vmalert $(MAKE) app-local-windows-with-goarch

View file

@ -1108,8 +1108,8 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
### Development ARM build ### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make vmalert-arm` or `make vmalert-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make vmalert-linux-arm` or `make vmalert-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `vmalert-arm` or `vmalert-arm64` binary respectively and puts it into the `bin` folder. It builds `vmalert-linux-arm` or `vmalert-linux-arm64` binary respectively and puts it into the `bin` folder.
### Production ARM build ### Production ARM build

View file

@ -1,6 +1,5 @@
# All these commands must run from repository root. # All these commands must run from repository root.
# Application build
vmauth: vmauth:
APP_NAME=vmauth $(MAKE) app-local APP_NAME=vmauth $(MAKE) app-local
@ -13,36 +12,36 @@ vmauth-prod:
vmauth-pure-prod: vmauth-pure-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-pure APP_NAME=vmauth $(MAKE) app-via-docker-pure
# GOOS=linux
vmauth-linux-amd64-prod: vmauth-linux-amd64-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-linux-amd64 APP_NAME=vmauth $(MAKE) app-via-docker-linux-amd64
vmauth-linux-arm64-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-linux-arm64
vmauth-linux-arm-prod: vmauth-linux-arm-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-linux-arm APP_NAME=vmauth $(MAKE) app-via-docker-linux-arm
# GOOS=darwin vmauth-linux-arm64-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-linux-arm64
vmauth-linux-ppc64le-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-linux-ppc64le
vmauth-linux-386-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-linux-386
vmauth-darwin-amd64-prod: vmauth-darwin-amd64-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-darwin-amd64 APP_NAME=vmauth $(MAKE) app-via-docker-darwin-amd64
vmauth-darwin-arm64-prod: vmauth-darwin-arm64-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-darwin-arm64 APP_NAME=vmauth $(MAKE) app-via-docker-darwin-arm64
# GOOS=windows vmauth-freebsd-amd64-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-freebsd-amd64
vmauth-openbsd-amd64-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-openbsd-amd64
vmauth-windows-amd64-prod: vmauth-windows-amd64-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-windows-amd64 APP_NAME=vmauth $(MAKE) app-via-docker-windows-amd64
# GOARCH=ppc64le
vmauth-ppc64le-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-ppc64le
# GOARCH=386
vmauth-386-prod:
APP_NAME=vmauth $(MAKE) app-via-docker-386
# Package build
package-vmauth: package-vmauth:
APP_NAME=vmauth $(MAKE) package-via-docker APP_NAME=vmauth $(MAKE) package-via-docker
@ -73,26 +72,35 @@ run-vmauth:
ARGS='-auth.config=app/vmauth/example_config.yml' \ ARGS='-auth.config=app/vmauth/example_config.yml' \
$(MAKE) run-via-docker $(MAKE) run-via-docker
vmauth-amd64: vmauth-linux-amd64:
CGO_ENABLED=1 GOARCH=amd64 $(MAKE) vmauth-local-with-goarch APP_NAME=vmauth CGO_ENABLED=1 GOOS=linux GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmauth-arm: vmauth-linux-arm:
CGO_ENABLED=0 GOARCH=arm $(MAKE) vmauth-local-with-goarch APP_NAME=vmauth CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-local-goos-goarch
vmauth-arm64: vmauth-linux-arm64:
CGO_ENABLED=0 GOARCH=arm64 $(MAKE) vmauth-local-with-goarch APP_NAME=vmauth CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmauth-ppc64le: vmauth-linux-ppc64le:
CGO_ENABLED=0 GOARCH=ppc64le $(MAKE) vmauth-local-with-goarch APP_NAME=vmauth CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le $(MAKE) app-local-goos-goarch
vmauth-386: vmauth-linux-386:
CGO_ENABLED=0 GOARCH=386 $(MAKE) vmauth-local-with-goarch APP_NAME=vmauth CGO_ENABLED=0 GOOS=linux GOARCH=386 $(MAKE) app-local-goos-goarch
vmauth-local-with-goarch: vmauth-darwin-amd64:
APP_NAME=vmauth $(MAKE) app-local-with-goarch APP_NAME=vmauth CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmauth-darwin-arm64:
APP_NAME=vmauth CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmauth-freebsd-amd64:
APP_NAME=vmauth CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmauth-openbsd-amd64:
APP_NAME=vmauth CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmauth-windows-amd64:
GOARCH=amd64 APP_NAME=vmauth $(MAKE) app-local-windows-goarch
vmauth-pure: vmauth-pure:
APP_NAME=vmauth $(MAKE) app-local-pure APP_NAME=vmauth $(MAKE) app-local-pure
vmauth-windows-amd64:
GOARCH=amd64 APP_NAME=vmauth $(MAKE) app-local-windows-with-goarch

View file

@ -1,6 +1,5 @@
# All these commands must run from repository root. # All these commands must run from repository root.
# Application build
vmbackup: vmbackup:
APP_NAME=vmbackup $(MAKE) app-local APP_NAME=vmbackup $(MAKE) app-local
@ -13,32 +12,33 @@ vmbackup-prod:
vmbackup-pure-prod: vmbackup-pure-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-pure APP_NAME=vmbackup $(MAKE) app-via-docker-pure
# GOOS=linux
vmbackup-linux-amd64-prod: vmbackup-linux-amd64-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-linux-amd64 APP_NAME=vmbackup $(MAKE) app-via-docker-linux-amd64
vmbackup-linux-arm64-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-linux-arm64
vmbackup-linux-arm-prod: vmbackup-linux-arm-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-linux-arm APP_NAME=vmbackup $(MAKE) app-via-docker-linux-arm
# GOOS=darwin vmbackup-linux-arm64-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-linux-arm64
vmbackup-linux-ppc64le-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-linux-ppc64le
vmbackup-linux-386-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-linux-386
vmbackup-darwin-amd64-prod: vmbackup-darwin-amd64-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-darwin-amd64 APP_NAME=vmbackup $(MAKE) app-via-docker-darwin-amd64
vmbackup-darwin-arm64-prod: vmbackup-darwin-arm64-prod:
APP_NAME=vmbackup $(MAKE) app-via-docker-darwin-arm64 APP_NAME=vmbackup $(MAKE) app-via-docker-darwin-arm64
# GOARCH=ppc64le vmbackup-freebsd-amd64-prod:
vmbackup-ppc64le-prod: APP_NAME=vmbackup $(MAKE) app-via-docker-freebsd-amd64
APP_NAME=vmbackup $(MAKE) app-via-docker-ppc64le
# GOARCH=386 vmbackup-openbsd-amd64-prod:
vmbackup-386-prod: APP_NAME=vmbackup $(MAKE) app-via-docker-openbsd-amd64
APP_NAME=vmbackup $(MAKE) app-via-docker-386
# Package build
package-vmbackup: package-vmbackup:
APP_NAME=vmbackup $(MAKE) package-via-docker APP_NAME=vmbackup $(MAKE) package-via-docker
@ -63,23 +63,32 @@ package-vmbackup-386:
publish-vmbackup: publish-vmbackup:
APP_NAME=vmbackup $(MAKE) publish-via-docker APP_NAME=vmbackup $(MAKE) publish-via-docker
vmbackup-amd64: vmbackup-linux-amd64:
CGO_ENABLED=1 GOARCH=amd64 $(MAKE) vmbackup-local-with-goarch APP_NAME=vmbackup CGO_ENABLED=1 GOOS=linux GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmbackup-arm: vmbackup-linux-arm:
CGO_ENABLED=0 GOARCH=arm $(MAKE) vmbackup-local-with-goarch APP_NAME=vmbackup CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-local-goos-goarch
vmbackup-arm64: vmbackup-linux-arm64:
CGO_ENABLED=0 GOARCH=arm64 $(MAKE) vmbackup-local-with-goarch APP_NAME=vmbackup CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmbackup-ppc64le: vmbackup-linux-ppc64le:
CGO_ENABLED=0 GOARCH=ppc64le $(MAKE) vmbackup-local-with-goarch APP_NAME=vmbackup CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le $(MAKE) app-local-goos-goarch
vmbackup-386: vmbackup-linux-386:
CGO_ENABLED=0 GOARCH=386 $(MAKE) vmbackup-local-with-goarch APP_NAME=vmbackup CGO_ENABLED=0 GOOS=linux GOARCH=386 $(MAKE) app-local-goos-goarch
vmbackup-local-with-goarch: vmbackup-darwin-amd64:
APP_NAME=vmbackup $(MAKE) app-local-with-goarch APP_NAME=vmbackup CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmbackup-darwin-arm64:
APP_NAME=vmbackup CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmbackup-freebsd-amd64:
APP_NAME=vmbackup CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmbackup-openbsd-amd64:
APP_NAME=vmbackup CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmbackup-pure: vmbackup-pure:
APP_NAME=vmbackup $(MAKE) app-local-pure APP_NAME=vmbackup $(MAKE) app-local-pure

View file

@ -1,6 +1,5 @@
# All these commands must run from repository root. # All these commands must run from repository root.
# Application build
vmctl: vmctl:
APP_NAME=vmctl $(MAKE) app-local APP_NAME=vmctl $(MAKE) app-local
@ -13,36 +12,36 @@ vmctl-prod:
vmctl-pure-prod: vmctl-pure-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-pure APP_NAME=vmctl $(MAKE) app-via-docker-pure
# GOOS=linux
vmctl-linux-amd64-prod: vmctl-linux-amd64-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-linux-amd64 APP_NAME=vmctl $(MAKE) app-via-docker-linux-amd64
vmctl-linux-arm64-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-linux-arm64
vmctl-linux-arm-prod: vmctl-linux-arm-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-linux-arm APP_NAME=vmctl $(MAKE) app-via-docker-linux-arm
# GOOS=darwin vmctl-linux-arm64-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-linux-arm64
vmctl-linux-ppc64le-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-linux-ppc64le
vmctl-linux-386-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-linux-386
vmctl-darwin-amd64-prod: vmctl-darwin-amd64-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-darwin-amd64 APP_NAME=vmctl $(MAKE) app-via-docker-darwin-amd64
vmctl-darwin-arm64-prod: vmctl-darwin-arm64-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-darwin-arm64 APP_NAME=vmctl $(MAKE) app-via-docker-darwin-arm64
# GOOS=window vmctl-freebsd-amd64-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-freebsd-amd64
vmctl-openbsd-amd64-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-openbsd-amd64
vmctl-windows-amd64-prod: vmctl-windows-amd64-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-windows-amd64 APP_NAME=vmctl $(MAKE) app-via-docker-windows-amd64
# GOARCH=ppc64le
vmctl-ppc64le-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-ppc64le
# GOARCH=386
vmctl-386-prod:
APP_NAME=vmctl $(MAKE) app-via-docker-386
# Package build
package-vmctl: package-vmctl:
APP_NAME=vmctl $(MAKE) package-via-docker APP_NAME=vmctl $(MAKE) package-via-docker
@ -67,27 +66,35 @@ package-vmctl-386:
publish-vmctl: publish-vmctl:
APP_NAME=vmctl $(MAKE) publish-via-docker APP_NAME=vmctl $(MAKE) publish-via-docker
vmctl-amd64: vmctl-linux-amd64:
CGO_ENABLED=1 GOARCH=amd64 $(MAKE) vmctl-local-with-goarch APP_NAME=vmctl CGO_ENABLED=1 GOOS=linux GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmctl-arm: vmctl-linux-arm:
CGO_ENABLED=0 GOARCH=arm $(MAKE) vmctl-local-with-goarch APP_NAME=vmctl CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-local-goos-goarch
vmctl-arm64: vmctl-linux-arm64:
CGO_ENABLED=0 GOARCH=arm64 $(MAKE) vmctl-local-with-goarch APP_NAME=vmctl CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmctl-ppc64le: vmctl-linux-ppc64le:
CGO_ENABLED=0 GOARCH=ppc64le $(MAKE) vmctl-local-with-goarch APP_NAME=vmctl CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le $(MAKE) app-local-goos-goarch
vmctl-386: vmctl-linux-386:
CGO_ENABLED=0 GOARCH=386 $(MAKE) vmctl-local-with-goarch APP_NAME=vmctl CGO_ENABLED=0 GOOS=linux GOARCH=386 $(MAKE) app-local-goos-goarch
vmctl-local-with-goarch: vmctl-darwin-amd64:
APP_NAME=vmctl $(MAKE) app-local-with-goarch APP_NAME=vmctl CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmctl-darwin-arm64:
APP_NAME=vmctl CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmctl-freebsd-amd64:
APP_NAME=vmctl CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmctl-openbsd-amd64:
APP_NAME=vmctl CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmctl-windows-amd64:
GOARCH=amd64 APP_NAME=vmctl $(MAKE) app-local-windows-goarch
vmctl-pure: vmctl-pure:
APP_NAME=vmctl $(MAKE) app-local-pure APP_NAME=vmctl $(MAKE) app-local-pure
vmctl-windows-amd64:
GOARCH=amd64 APP_NAME=vmctl $(MAKE) app-local-windows-with-goarch

View file

@ -661,8 +661,8 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
#### Development ARM build #### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make vmctl-arm` or `make vmctl-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make vmctl-linux-arm` or `make vmctl-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `vmctl-arm` or `vmctl-arm64` binary respectively and puts it into the `bin` folder. It builds `vmctl-linux-arm` or `vmctl-linux-arm64` binary respectively and puts it into the `bin` folder.
#### Production ARM build #### Production ARM build

View file

@ -1,6 +1,5 @@
# All these commands must run from repository root. # All these commands must run from repository root.
# Application build
vmrestore: vmrestore:
APP_NAME=vmrestore $(MAKE) app-local APP_NAME=vmrestore $(MAKE) app-local
@ -13,32 +12,33 @@ vmrestore-prod:
vmrestore-pure-prod: vmrestore-pure-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-pure APP_NAME=vmrestore $(MAKE) app-via-docker-pure
# GOOS=linux
vmrestore-linux-amd64-prod: vmrestore-linux-amd64-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-linux-amd64 APP_NAME=vmrestore $(MAKE) app-via-docker-linux-amd64
vmrestore-linux-arm64-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-linux-arm64
vmrestore-linux-arm-prod: vmrestore-linux-arm-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-linux-arm APP_NAME=vmrestore $(MAKE) app-via-docker-linux-arm
# GOOS=darwin vmrestore-linux-arm64-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-linux-arm64
vmrestore-linux-ppc64le-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-linux-ppc64le
vmrestore-linux-386-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-linux-386
vmrestore-darwin-amd64-prod: vmrestore-darwin-amd64-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-darwin-amd64 APP_NAME=vmrestore $(MAKE) app-via-docker-darwin-amd64
vmrestore-darwin-arm64-prod: vmrestore-darwin-arm64-prod:
APP_NAME=vmrestore $(MAKE) app-via-docker-darwin-arm64 APP_NAME=vmrestore $(MAKE) app-via-docker-darwin-arm64
# GOARCH=ppc64le vmrestore-freebsd-amd64-prod:
vmrestore-ppc64le-prod: APP_NAME=vmrestore $(MAKE) app-via-docker-freebsd-amd64
APP_NAME=vmrestore $(MAKE) app-via-docker-ppc64le
# GOARCH=386 vmrestore-openbsd-amd64-prod:
vmrestore-386-prod: APP_NAME=vmrestore $(MAKE) app-via-docker-openbsd-amd64
APP_NAME=vmrestore $(MAKE) app-via-docker-386
# Package build
package-vmrestore: package-vmrestore:
APP_NAME=vmrestore $(MAKE) package-via-docker APP_NAME=vmrestore $(MAKE) package-via-docker
@ -63,23 +63,32 @@ package-vmrestore-386:
publish-vmrestore: publish-vmrestore:
APP_NAME=vmrestore $(MAKE) publish-via-docker APP_NAME=vmrestore $(MAKE) publish-via-docker
vmrestore-amd64: vmrestore-linux-amd64:
CGO_ENABLED=1 GOARCH=amd64 $(MAKE) vmrestore-local-with-goarch APP_NAME=vmrestore CGO_ENABLED=1 GOOS=linux GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmrestore-arm: vmrestore-linux-arm:
CGO_ENABLED=0 GOARCH=arm $(MAKE) vmrestore-local-with-goarch APP_NAME=vmrestore CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-local-goos-goarch
vmrestore-arm64: vmrestore-linux-arm64:
CGO_ENABLED=0 GOARCH=arm64 $(MAKE) vmrestore-local-with-goarch APP_NAME=vmrestore CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmrestore-ppc64le: vmrestore-linux-ppc64le:
CGO_ENABLED=0 GOARCH=ppc64le $(MAKE) vmrestore-local-with-goarch APP_NAME=vmrestore CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le $(MAKE) app-local-goos-goarch
vmrestore-386: vmrestore-linux-386:
CGO_ENABLED=0 GOARCH=386 $(MAKE) vmrestore-local-with-goarch APP_NAME=vmrestore CGO_ENABLED=0 GOOS=linux GOARCH=386 $(MAKE) app-local-goos-goarch
vmrestore-local-with-goarch: vmrestore-darwin-amd64:
APP_NAME=vmrestore $(MAKE) app-local-with-goarch APP_NAME=vmrestore CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmrestore-darwin-arm64:
APP_NAME=vmrestore CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-local-goos-goarch
vmrestore-freebsd-amd64:
APP_NAME=vmrestore CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmrestore-openbsd-amd64:
APP_NAME=vmrestore CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 $(MAKE) app-local-goos-goarch
vmrestore-pure: vmrestore-pure:
APP_NAME=vmrestore $(MAKE) app-local-pure APP_NAME=vmrestore $(MAKE) app-local-pure

View file

@ -3,8 +3,8 @@ COPY build /build
WORKDIR /build WORKDIR /build
COPY web/ /build/ COPY web/ /build/
RUN GOOS=linux GOARCH=amd64 GO111MODULE=on CGO_ENABLED=0 go build -o web-amd64 github.com/VictoriMetrics/vmui/ && \ RUN GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o web-amd64 github.com/VictoriMetrics/vmui/ && \
GOOS=windows GOARCH=amd64 GO111MODULE=on CGO_ENABLED=0 go build -o web-windows github.com/VictoriMetrics/vmui/ GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -o web-windows github.com/VictoriMetrics/vmui/
FROM alpine:3.16.0 FROM alpine:3.16.0
USER root USER root

View file

@ -31,7 +31,6 @@ app-via-docker: package-builder
-w /VictoriaMetrics \ -w /VictoriaMetrics \
--mount type=bind,src="$(shell pwd)/gocache-for-docker",dst=/gocache \ --mount type=bind,src="$(shell pwd)/gocache-for-docker",dst=/gocache \
--env GOCACHE=/gocache \ --env GOCACHE=/gocache \
--env GO111MODULE=on \
$(DOCKER_OPTS) \ $(DOCKER_OPTS) \
$(BUILDER_IMAGE) \ $(BUILDER_IMAGE) \
go build $(RACE) -mod=vendor -trimpath -buildvcs=false \ go build $(RACE) -mod=vendor -trimpath -buildvcs=false \
@ -47,7 +46,6 @@ app-via-docker-windows: package-builder
-w /VictoriaMetrics \ -w /VictoriaMetrics \
--mount type=bind,src="$(shell pwd)/gocache-for-docker",dst=/gocache \ --mount type=bind,src="$(shell pwd)/gocache-for-docker",dst=/gocache \
--env GOCACHE=/gocache \ --env GOCACHE=/gocache \
--env GO111MODULE=on \
$(DOCKER_OPTS) \ $(DOCKER_OPTS) \
$(BUILDER_IMAGE) \ $(BUILDER_IMAGE) \
go build $(RACE) -mod=vendor -trimpath -buildvcs=false \ go build $(RACE) -mod=vendor -trimpath -buildvcs=false \
@ -65,16 +63,11 @@ package-via-docker: package-base
-f app/$(APP_NAME)/deployment/Dockerfile bin) -f app/$(APP_NAME)/deployment/Dockerfile bin)
publish-via-docker: \ publish-via-docker: \
app-via-docker-amd64 \
app-via-docker-linux-amd64 \ app-via-docker-linux-amd64 \
app-via-docker-darwin-amd64 \
app-via-docker-arm \
app-via-docker-linux-arm \ app-via-docker-linux-arm \
app-via-docker-arm64 \
app-via-docker-linux-arm64 \ app-via-docker-linux-arm64 \
app-via-docker-darwin-arm64 \ app-via-docker-linux-ppc64le \
app-via-docker-ppc64le \ app-via-docker-linux-386
app-via-docker-386
docker buildx build \ docker buildx build \
--platform=linux/amd64,linux/arm,linux/arm64,linux/ppc64le,linux/386 \ --platform=linux/amd64,linux/arm,linux/arm64,linux/ppc64le,linux/386 \
--build-arg certs_image=$(CERTS_IMAGE) \ --build-arg certs_image=$(CERTS_IMAGE) \
@ -94,71 +87,51 @@ run-via-docker: package-via-docker
$(DOCKER_OPTS) \ $(DOCKER_OPTS) \
$(DOCKER_NAMESPACE)/$(APP_NAME):$(PKG_TAG)$(APP_SUFFIX)$(RACE) $(ARGS) $(DOCKER_NAMESPACE)/$(APP_NAME):$(PKG_TAG)$(APP_SUFFIX)$(RACE) $(ARGS)
app-via-docker-goarch: app-via-docker-goos-goarch:
APP_SUFFIX='-$(GOARCH)' \ APP_SUFFIX='-$(GOOS)-$(GOARCH)' \
DOCKER_OPTS='--env CGO_ENABLED=$(CGO_ENABLED) --env GOOS=linux --env GOARCH=$(GOARCH)' \ DOCKER_OPTS='--env CGO_ENABLED=$(CGO_ENABLED) --env GOOS=$(GOOS) --env GOARCH=$(GOARCH)' \
$(MAKE) app-via-docker $(MAKE) app-via-docker
app-via-docker-pure:
APP_SUFFIX='-pure' DOCKER_OPTS='--env CGO_ENABLED=0' $(MAKE) app-via-docker
app-via-docker-linux-amd64:
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 $(MAKE) app-via-docker-goos-goarch
app-via-docker-linux-arm:
CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-via-docker-goos-goarch
app-via-docker-linux-arm64:
ifeq ($(APP_NAME),vmagent)
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-via-docker-goos-goarch
else
APP_SUFFIX='-linux-arm64' \
DOCKER_OPTS='--env CGO_ENABLED=1 --env GOOS=linux --env GOARCH=arm64 --env CC=/opt/cross-builder/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc' \
$(MAKE) app-via-docker
endif
app-via-docker-linux-ppc64le:
CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le $(MAKE) app-via-docker-goos-goarch
app-via-docker-linux-386:
CGO_ENABLED=0 GOOS=linux GOARCH=386 $(MAKE) app-via-docker-goos-goarch
app-via-docker-darwin-amd64: app-via-docker-darwin-amd64:
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-via-docker-goos-goarch CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 $(MAKE) app-via-docker-goos-goarch
app-via-docker-darwin-arm64: app-via-docker-darwin-arm64:
CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-via-docker-goos-goarch CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 $(MAKE) app-via-docker-goos-goarch
app-via-docker-linux-amd64: app-via-docker-freebsd-amd64:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 $(MAKE) app-via-docker-goos-goarch CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 $(MAKE) app-via-docker-goos-goarch
app-via-docker-linux-arm64: app-via-docker-openbsd-amd64:
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(MAKE) app-via-docker-goos-goarch CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 $(MAKE) app-via-docker-goos-goarch
app-via-docker-linux-arm:
CGO_ENABLED=0 GOOS=linux GOARCH=arm $(MAKE) app-via-docker-goos-goarch
app-via-docker-goos-goarch:
APP_SUFFIX='-$(GOOS)-$(GOARCH)' \
DOCKER_OPTS='--env CGO_ENABLED=$(CGO_ENABLED) --env GOOS=$(GOOS) --env GOARCH=$(GOARCH)' \
$(MAKE) app-via-docker
app-via-docker-goarch-arm64:
APP_SUFFIX='-arm64' \
DOCKER_OPTS='--env CGO_ENABLED=1 --env GOOS=linux --env GOARCH=arm64 --env CC=/opt/cross-builder/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc' \
$(MAKE) app-via-docker
app-via-docker-windows-goarch:
APP_SUFFIX='-$(GOARCH)' \
DOCKER_OPTS='--env CGO_ENABLED=0 --env GOOS=windows --env GOARCH=$(GOARCH)' \
$(MAKE) app-via-docker-windows
app-via-docker-goarch-cgo:
CGO_ENABLED=1 $(MAKE) app-via-docker-goarch
app-via-docker-goarch-nocgo:
CGO_ENABLED=0 $(MAKE) app-via-docker-goarch
app-via-docker-pure:
APP_SUFFIX='-pure' DOCKER_OPTS='--env CGO_ENABLED=0' $(MAKE) app-via-docker
app-via-docker-amd64:
GOARCH=amd64 $(MAKE) app-via-docker-goarch-cgo
app-via-docker-arm:
GOARCH=arm $(MAKE) app-via-docker-goarch-nocgo
app-via-docker-arm64:
ifeq ($(APP_NAME),vmagent)
GOARCH=arm64 $(MAKE) app-via-docker-goarch-nocgo
else
$(MAKE) app-via-docker-goarch-arm64
endif
app-via-docker-ppc64le:
GOARCH=ppc64le $(MAKE) app-via-docker-goarch-nocgo
app-via-docker-386:
GOARCH=386 $(MAKE) app-via-docker-goarch-nocgo
app-via-docker-windows-amd64: app-via-docker-windows-amd64:
GOARCH=amd64 $(MAKE) app-via-docker-windows-goarch APP_SUFFIX='-$(GOARCH)' \
DOCKER_OPTS='--env CGO_ENABLED=0 --env GOOS=windows --env GOARCH=amd64' \
$(MAKE) app-via-docker-windows
package-via-docker-goarch: package-via-docker-goarch:
APP_SUFFIX='-$(GOARCH)' \ APP_SUFFIX='-$(GOARCH)' \

View file

@ -51,6 +51,9 @@ scrape_configs:
* `vm_rows_read_per_series` - the number of raw samples read per queried series. * `vm_rows_read_per_series` - the number of raw samples read per queried series.
* `vm_series_read_per_query` - the number of series read per query. * `vm_series_read_per_query` - the number of series read per query.
* FEATURE: publish binaries for FreeBSD and OpenBSD at [releases page](https://github.com/VictoriaMetrics/VictoriaMetrics/releases).
* BUGFIX: consistently name binaries at [releases page](https://github.com/VictoriaMetrics/VictoriaMetrics/releases) in the form `$(APP_NAME)-$(GOOS)-$(GOARCH)-$(VERSION).tar.gz`. For example, `victoria-metrics-linux-amd64-v1.79.0.tar.gz`. Previously the `$(GOOS)` part was missing in binaries for Linux.
* BUGFIX: [vmalert](https://docs.victoriametrics.com/vmalert.html): allow using `__name__` label (aka [metric name](https://prometheus.io/docs/prometheus/latest/querying/basics/#time-series-selectors)) in alerting annotations. For example: * BUGFIX: [vmalert](https://docs.victoriametrics.com/vmalert.html): allow using `__name__` label (aka [metric name](https://prometheus.io/docs/prometheus/latest/querying/basics/#time-series-selectors)) in alerting annotations. For example:
{% raw %} {% raw %}

View file

@ -745,14 +745,14 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
### Development ARM build ### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make victoria-metrics-arm` or `make victoria-metrics-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make victoria-metrics-linux-arm` or `make victoria-metrics-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `victoria-metrics-arm` or `victoria-metrics-arm64` binary respectively and puts it into the `bin` folder. It builds `victoria-metrics-linux-arm` or `victoria-metrics-linux-arm64` binary respectively and puts it into the `bin` folder.
### Production ARM build ### Production ARM build
1. [Install docker](https://docs.docker.com/install/). 1. [Install docker](https://docs.docker.com/install/).
2. Run `make victoria-metrics-arm-prod` or `make victoria-metrics-arm64-prod` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make victoria-metrics-linux-arm-prod` or `make victoria-metrics-linux-arm64-prod` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `victoria-metrics-arm-prod` or `victoria-metrics-arm64-prod` binary respectively and puts it into the `bin` folder. It builds `victoria-metrics-linux-arm-prod` or `victoria-metrics-linux-arm64-prod` binary respectively and puts it into the `bin` folder.
### Pure Go build (CGO_ENABLED=0) ### Pure Go build (CGO_ENABLED=0)

View file

@ -749,14 +749,14 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
### Development ARM build ### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make victoria-metrics-arm` or `make victoria-metrics-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make victoria-metrics-linux-arm` or `make victoria-metrics-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `victoria-metrics-arm` or `victoria-metrics-arm64` binary respectively and puts it into the `bin` folder. It builds `victoria-metrics-linux-arm` or `victoria-metrics-linux-arm64` binary respectively and puts it into the `bin` folder.
### Production ARM build ### Production ARM build
1. [Install docker](https://docs.docker.com/install/). 1. [Install docker](https://docs.docker.com/install/).
2. Run `make victoria-metrics-arm-prod` or `make victoria-metrics-arm64-prod` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make victoria-metrics-linux-arm-prod` or `make victoria-metrics-linux-arm64-prod` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `victoria-metrics-arm-prod` or `victoria-metrics-arm64-prod` binary respectively and puts it into the `bin` folder. It builds `victoria-metrics-linux-arm-prod` or `victoria-metrics-linux-arm64-prod` binary respectively and puts it into the `bin` folder.
### Pure Go build (CGO_ENABLED=0) ### Pure Go build (CGO_ENABLED=0)

View file

@ -821,8 +821,8 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
### Development ARM build ### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make vmagent-arm` or `make vmagent-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics) 2. Run `make vmagent-linux-arm` or `make vmagent-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics)
It builds `vmagent-arm` or `vmagent-arm64` binary respectively and puts it into the `bin` folder. It builds `vmagent-linux-arm` or `vmagent-linux-arm64` binary respectively and puts it into the `bin` folder.
### Production ARM build ### Production ARM build

View file

@ -1112,11 +1112,11 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
### Development ARM build ### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make vmalert-arm` or `make vmalert-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make vmalert-linux-arm` or `make vmalert-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `vmalert-arm` or `vmalert-arm64` binary respectively and puts it into the `bin` folder. It builds `vmalert-linux-arm` or `vmalert-linux-arm64` binary respectively and puts it into the `bin` folder.
### Production ARM build ### Production ARM build
1. [Install docker](https://docs.docker.com/install/). 1. [Install docker](https://docs.docker.com/install/).
2. Run `make vmalert-linux-arm-prod` or `make vmalert-arm64-prod` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make vmalert-linux-arm-prod` or `make vmalert-linux-arm64-prod` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `vmalert-linux-arm-prod` or `vmalert-arm64-prod` binary respectively and puts it into the `bin` folder. It builds `vmalert-linux-arm-prod` or `vmalert-linux-arm64-prod` binary respectively and puts it into the `bin` folder.

View file

@ -665,8 +665,8 @@ ARM build may run on Raspberry Pi or on [energy-efficient ARM servers](https://b
#### Development ARM build #### Development ARM build
1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17. 1. [Install Go](https://golang.org/doc/install). The minimum supported version is Go 1.17.
2. Run `make vmctl-arm` or `make vmctl-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics). 2. Run `make vmctl-linux-arm` or `make vmctl-linux-arm64` from the root folder of [the repository](https://github.com/VictoriaMetrics/VictoriaMetrics).
It builds `vmctl-arm` or `vmctl-arm64` binary respectively and puts it into the `bin` folder. It builds `vmctl-linux-arm` or `vmctl-linux-arm64` binary respectively and puts it into the `bin` folder.
#### Production ARM build #### Production ARM build

View file

@ -9,13 +9,13 @@ fi
# Map to Debian architecture # Map to Debian architecture
if [[ "$ARCH" == "amd64" ]]; then if [[ "$ARCH" == "amd64" ]]; then
DEB_ARCH=amd64 DEB_ARCH=amd64
EXENAME_SRC="victoria-metrics-prod" EXENAME_SRC="victoria-metrics-linux-amd64-prod"
elif [[ "$ARCH" == "arm64" ]]; then elif [[ "$ARCH" == "arm64" ]]; then
DEB_ARCH=arm64 DEB_ARCH=arm64
EXENAME_SRC="victoria-metrics-arm64-prod" EXENAME_SRC="victoria-metrics-linux-arm64-prod"
elif [[ "$ARCH" == "arm" ]]; then elif [[ "$ARCH" == "arm" ]]; then
DEB_ARCH=armhf DEB_ARCH=armhf
EXENAME_SRC="victoria-metrics-arm-prod" EXENAME_SRC="victoria-metrics-linux-arm-prod"
else else
echo "*** Unknown arch $ARCH" echo "*** Unknown arch $ARCH"
exit 1 exit 1

View file

@ -15,10 +15,10 @@ fi
# Map to Debian architecture # Map to Debian architecture
if [[ "$ARCH" == "amd64" ]]; then if [[ "$ARCH" == "amd64" ]]; then
RPM_ARCH=x86_64 RPM_ARCH=x86_64
EXENAME_SRC="victoria-metrics-prod" EXENAME_SRC="victoria-metrics-linux-amd64-prod"
elif [[ "$ARCH" == "arm64" ]]; then elif [[ "$ARCH" == "arm64" ]]; then
RPM_ARCH=aarch64 RPM_ARCH=aarch64
EXENAME_SRC="victoria-metrics-arm64-prod" EXENAME_SRC="victoria-metrics-linux-arm64-prod"
else else
echo "*** Unknown arch $ARCH" echo "*** Unknown arch $ARCH"
exit 1 exit 1