mirror of
https://github.com/openobserve/goflow2.git
synced 2025-10-23 07:11:57 +00:00
Merge pull request #17 from netsampler/feature/arm
feature: add arm builds
This commit is contained in:
5
.github/workflows/build.yml
vendored
5
.github/workflows/build.yml
vendored
@@ -33,6 +33,7 @@ jobs:
|
||||
GOOS=linux make build
|
||||
GOOS=darwin make build
|
||||
GOOS=windows EXTENSION=.exe make build
|
||||
ARCH=arm64 GOARCH=arm64 GOOS=linux make build
|
||||
|
||||
- name: Install fpm
|
||||
run: |
|
||||
@@ -41,7 +42,9 @@ jobs:
|
||||
sudo gem install fpm
|
||||
|
||||
- name: Package
|
||||
run: make package-deb package-rpm
|
||||
run: |
|
||||
make package-deb package-rpm
|
||||
ARCH=arm64 make package-deb package-rpm
|
||||
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v2
|
||||
|
5
.github/workflows/docker-release.yaml
vendored
5
.github/workflows/docker-release.yaml
vendored
@@ -36,5 +36,6 @@ jobs:
|
||||
- name: Build
|
||||
run: |
|
||||
export VERSION=$(git describe --tags --abbrev=0 HEAD)
|
||||
make docker
|
||||
make push-docker-release
|
||||
DOCKER_SUFFIX=-amd64 make docker push-docker
|
||||
DOCKER_SUFFIX=-arm64 DOCKER_CMD='buildx build --push --platform linux/arm64/v8' make docker
|
||||
make docker-manifest-release
|
||||
|
5
.github/workflows/docker.yaml
vendored
5
.github/workflows/docker.yaml
vendored
@@ -34,5 +34,6 @@ jobs:
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
make docker
|
||||
make push-docker
|
||||
DOCKER_SUFFIX=-amd64 make docker push-docker
|
||||
DOCKER_SUFFIX=-arm64 DOCKER_CMD='buildx build --push --platform linux/arm64/v8' make docker
|
||||
make docker-manifest
|
||||
|
4
.github/workflows/release.yml
vendored
4
.github/workflows/release.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
||||
- name: Set up Go 1.x
|
||||
uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: ^1.14
|
||||
go-version: ^1.16
|
||||
|
||||
- name: Check out code into the Go module directory
|
||||
uses: actions/checkout@v1
|
||||
@@ -34,6 +34,8 @@ jobs:
|
||||
GOOS=darwin make build
|
||||
GOOS=windows EXTENSION=.exe make build
|
||||
make package-deb package-rpm
|
||||
ARCH=arm64 GOARCH=arm64 GOOS=linux make build
|
||||
ARCH=arm64 make package-deb package-rpm
|
||||
|
||||
- name: Create Release
|
||||
id: create_release
|
||||
|
41
Makefile
41
Makefile
@@ -1,7 +1,7 @@
|
||||
EXTENSION ?=
|
||||
DIST_DIR ?= dist/
|
||||
GOOS ?= linux
|
||||
ARCH ?= $(shell uname -m)
|
||||
EXTENSION ?=
|
||||
DIST_DIR ?= dist/
|
||||
GOOS ?= linux
|
||||
ARCH ?= $(shell uname -m)
|
||||
BUILDINFOSDET ?=
|
||||
|
||||
DOCKER_REPO := netsampler/
|
||||
@@ -11,7 +11,6 @@ ABBREV ?= $(shell git rev-parse --short HEAD)
|
||||
COMMIT ?= $(shell git rev-parse HEAD)
|
||||
TAG ?= $(shell git describe --tags --abbrev=0 HEAD)
|
||||
VERSION_PKG ?= $(shell echo $(VERSION) | sed 's/^v//g')
|
||||
ARCH := x86_64
|
||||
LICENSE := BSD-3-Clause
|
||||
URL := https://github.com/netsampler/goflow2
|
||||
DESCRIPTION := GoFlow2: Open-Source and Scalable Network Sample Collector
|
||||
@@ -19,6 +18,8 @@ DATE := $(shell date +%FT%T%z)
|
||||
BUILDINFOS ?= ($(DATE)$(BUILDINFOSDET))
|
||||
LDFLAGS ?= '-X main.version=$(VERSION) -X main.buildinfos=$(BUILDINFOS)'
|
||||
MAINTAINER := lspgn@users.noreply.github.com
|
||||
DOCKER_CMD ?= build
|
||||
DOCKER_SUFFIX ?=
|
||||
|
||||
OUTPUT := $(DIST_DIR)goflow2-$(VERSION_PKG)-$(GOOS)-$(ARCH)$(EXTENSION)
|
||||
|
||||
@@ -50,7 +51,7 @@ build: prepare
|
||||
|
||||
.PHONY: docker
|
||||
docker:
|
||||
docker build \
|
||||
docker $(DOCKER_CMD) \
|
||||
--build-arg LDFLAGS=$(LDFLAGS) \
|
||||
--build-arg CREATED="$(DATE)" \
|
||||
--build-arg MAINTAINER="$(MAINTAINER)" \
|
||||
@@ -60,18 +61,30 @@ docker:
|
||||
--build-arg LICENSE="$(LICENSE)" \
|
||||
--build-arg VERSION="$(VERSION)" \
|
||||
--build-arg REV="$(COMMIT)" \
|
||||
-t $(DOCKER_REPO)$(NAME):$(ABBREV) .
|
||||
-t $(DOCKER_REPO)$(NAME):$(ABBREV)$(DOCKER_SUFFIX) .
|
||||
|
||||
.PHONY: push-docker
|
||||
push-docker:
|
||||
docker push $(DOCKER_REPO)$(NAME):$(ABBREV)
|
||||
docker tag $(DOCKER_REPO)$(NAME):$(ABBREV) $(DOCKER_REPO)$(NAME):latest
|
||||
docker push $(DOCKER_REPO)$(NAME):latest
|
||||
docker push $(DOCKER_REPO)$(NAME):$(ABBREV)$(DOCKER_SUFFIX)
|
||||
|
||||
.PHONY: push-docker-release
|
||||
push-docker-release:
|
||||
docker tag $(DOCKER_REPO)$(NAME):$(ABBREV) $(DOCKER_REPO)$(NAME):$(VERSION)
|
||||
docker push $(DOCKER_REPO)$(NAME):$(VERSION)
|
||||
.PHONY: docker-manifest
|
||||
docker-manifest:
|
||||
docker manifest create $(DOCKER_REPO)$(NAME):$(ABBREV) \
|
||||
--amend $(DOCKER_REPO)$(NAME):$(ABBREV)-amd64 \
|
||||
--amend $(DOCKER_REPO)$(NAME):$(ABBREV)-arm64
|
||||
docker manifest push $(DOCKER_REPO)$(NAME):$(ABBREV)
|
||||
|
||||
docker manifest create $(DOCKER_REPO)$(NAME):latest \
|
||||
--amend $(DOCKER_REPO)$(NAME):$(ABBREV)-amd64 \
|
||||
--amend $(DOCKER_REPO)$(NAME):$(ABBREV)-arm64
|
||||
docker manifest push $(DOCKER_REPO)$(NAME):latest
|
||||
|
||||
.PHONY: docker-manifest-release
|
||||
docker-manifest-release:
|
||||
docker manifest create $(DOCKER_REPO)$(NAME):$(VERSION) \
|
||||
--amend $(DOCKER_REPO)$(NAME):$(ABBREV)-amd64 \
|
||||
--amend $(DOCKER_REPO)$(NAME):$(ABBREV)-arm64
|
||||
docker manifest push $(DOCKER_REPO)$(NAME):$(VERSION)
|
||||
|
||||
.PHONY: package-deb
|
||||
package-deb: prepare
|
||||
|
Reference in New Issue
Block a user