mirror of
https://github.com/kubeshark/kubeshark.git
synced 2026-04-21 09:57:12 +00:00
* modified Dockerfile to work for both amd64 (Intel) and arm64 (M1) * added changelog * Update `Dockerfile` to have `ARCH` build argument * Remove `docs/CHANGES.md` * Upgrade the Basenine version from `v0.3.0` to `v0.4.6` * Update `publish.yml` to have `ARCH` build argument * Switch `BasenineImageRepo` to Docker Hub * Have separate build arguments for `ARCH` and `GOARCH` * Upgrade the Basenine version from `v0.4.6` to `v0.4.10` * Oops forgot to update the 10th duplicated shell script * Fix the oopsie and reduce duplications * Fix `Dockerfile` * Fix the incompatibility issue between Go plugins and gold linker in Alpine inside `Dockerfile` * Fix `asm: xxhash_amd64.s:120: when dynamic linking, R15 is clobbered by a global variable access` error * Update `Dockerfile` to have cross-compilation on an AMD64 machine Also revert changes in the shell scripts * Delete `debug.Dockerfile` * Create a custom base (`debian:buster-slim` based) image for the shipped image * Replace `mertyildiran/debian-pcap` with `up9inc/debian-pcap` * Upgrade Basenine version to `v0.4.12` * Use `debian:stable-slim` as the base * Fix the indentation in the `Dockerfile` * Update `publish.yml` * Enable `publish.yml` for `feature/multiarch_build` branch * Tag correctly and set `ARCH` Docker argument * Remove the lines that are forgotten to be removed from the shell scripts * Add `MizuAgentImageRepo` constant and use it as default `AgentImage` value * Bring back `Set up Cloud SDK` step to `Build the CLI and publish` job * Build ARM64 CLI for Linux as well * Revert "Enable `publish.yml` for `feature/multiarch_build` branch" This reverts commitd30be4c1f0. * Revert Go 1.17 upgrade * Remove `build_extensions_debug.sh` as well * Make the `Dockerfile` to compile the agent statically * Statically link the protocol extensions * Fix `Dockerfile` * Bring back `-s -w` flags * Verify the signatures of the downloads in `dockcross/linux-arm64-musl` * Revert modifications in some shell scripts * Make the `BUILDARCH` and `TARGETARCH` separation in the `Dockerfile` * Separate cross-compilation builder image into a separate repo named `up9inc/linux-arm64-musl-go-libpcap` * Fill the shell script and specify the tag for `dockcross/linux-arm64-musl` * Remove the unnecessary dependencies from `builder-native-base` * Improve the comments in the `Dockerfile` * Upgrade Basenine version to `v0.4.13` * Fix `Dockerfile` * Revert "Revert "Enable `publish.yml` for `feature/multiarch_build` branch"" This reverts commit303e466bdc. * Revert "Revert "Revert "Enable `publish.yml` for `feature/multiarch_build` branch""" This reverts commit0fe252bbdb. * Remove `push-docker-debug` from the `Makefile` * Rename `publish.yml` to `release.yml` Co-authored-by: Alex Haiut <alex@up9.com>
48 lines
1.7 KiB
Makefile
48 lines
1.7 KiB
Makefile
SUFFIX=$(GOOS)_$(GOARCH)
|
|
COMMIT_HASH=$(shell git rev-parse HEAD)
|
|
GIT_BRANCH=$(shell git branch --show-current | tr '[:upper:]' '[:lower:]')
|
|
GIT_VERSION=$(shell git branch --show-current | tr '[:upper:]' '[:lower:]')
|
|
BUILD_TIMESTAMP=$(shell date +%s)
|
|
export SEM_VER?=0.0.0
|
|
|
|
.PHONY: help
|
|
.DEFAULT_GOAL := help
|
|
|
|
help: ## This help.
|
|
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
|
|
|
|
install:
|
|
go install mizu.go
|
|
|
|
build-debug:
|
|
export GCLFAGS='-gcflags="all=-N -l"'
|
|
${MAKE} build
|
|
|
|
build: ## Build mizu CLI binary (select platform via GOOS / GOARCH env variables).
|
|
go build ${GCLFAGS} -ldflags="-X 'github.com/up9inc/mizu/cli/mizu.GitCommitHash=$(COMMIT_HASH)' \
|
|
-X 'github.com/up9inc/mizu/cli/mizu.Branch=$(GIT_BRANCH)' \
|
|
-X 'github.com/up9inc/mizu/cli/mizu.BuildTimestamp=$(BUILD_TIMESTAMP)' \
|
|
-X 'github.com/up9inc/mizu/cli/mizu.Platform=$(SUFFIX)' \
|
|
-X 'github.com/up9inc/mizu/cli/mizu.SemVer=$(SEM_VER)'" \
|
|
-o bin/mizu_$(SUFFIX) mizu.go
|
|
(cd bin && shasum -a 256 mizu_${SUFFIX} > mizu_${SUFFIX}.sha256)
|
|
|
|
build-all: ## Build for all supported platforms.
|
|
@echo "Compiling for every OS and Platform"
|
|
@mkdir -p bin && sed s/_SEM_VER_/$(SEM_VER)/g README.md.TEMPLATE > bin/README.md
|
|
@$(MAKE) build GOOS=linux GOARCH=amd64
|
|
@$(MAKE) build GOOS=linux GOARCH=arm64
|
|
@$(MAKE) build GOOS=darwin GOARCH=amd64
|
|
@$(MAKE) build GOOS=darwin GOARCH=arm64
|
|
@$(MAKE) build GOOS=windows GOARCH=amd64
|
|
@mv ./bin/mizu_windows_amd64 ./bin/mizu.exe
|
|
@echo "---------"
|
|
@find ./bin -ls
|
|
|
|
clean: ## Clean all build artifacts.
|
|
go clean
|
|
rm -rf ./bin/*
|
|
|
|
test: ## Run cli tests.
|
|
@go test ./... -coverpkg=./... -race -coverprofile=coverage.out -covermode=atomic
|