export MAIN_TRUNC=no LOCAL_BUILD=1 FINAL_VERSION=latest GET_VERSION_DEP= .PHONY: test test_coverage test_ci lint lint_ci dep fmt build build_scanfeeder build_ci apply_git_hooks postclone precommit clean build_docker_image docker_image_ci help get_version get_build_date export TEST_BINARY_NAME=vsix_runtime_check export NAME_REPO="default/vsix_runtime_check" test: check-tests-docker-image build_docker_image get_version ## Run unittests @docker run --rm -it -v ${TESTS_PATH}:/tests:ro -v ${TEST_BINARY_PATH}:/tests_binary -e DST_USER_ID=$(shell id -u) -e DST_GROUP_ID=$(shell id -g) -e TEST_BINARY_NAME=${TEST_BINARY_NAME} --name vsix_runtime_check-test plugin-tests > /dev/null @VSIX_RUNTIME_CHECK_VER=${FINAL_VERSION} ${TEST_BINARY_PATH}/${TEST_BINARY_NAME} -test.v test_coverage: ## Run unittests with calculating code coverage @echo "TODO" test_ci: ## Run unittests as CI @docker run --rm -it -v ${TESTS_PATH}:/tests:ro -v ${TEST_BINARY_PATH}:/tests_binary -e DST_USER_ID=$(shell id -u) -e DST_GROUP_ID=$(shell id -g) -e TEST_BINARY_NAME=${TEST_BINARY_NAME} --name vsix_runtime_check-test plugin-tests > /dev/null @VSIX_RUNTIME_CHECK_VER=${VSIX_RUNTIME_CHECK_VER} ${TEST_BINARY_PATH}/${TEST_BINARY_NAME} -test.v lint: ## Lint the files ifeq (yes,${MAIN_TRUNC}) @(cd tests && $(LINTER) short) else @echo "TODO" endif lint_ci: ## Lint the files as CI ifeq (yes,${MAIN_TRUNC}) @(cd tests && $(LINTER) full) else @echo "TODO" endif dep: ## Get the dependencies @echo "TODO" fmt: ## Format source code ifeq (yes,${MAIN_TRUNC}) @$(FORMATTER) else @echo "TODO" endif build: ## Build the binary file from src @echo "TODO" build_scanfeeder: ## Build the scanfeeder binary file from src and copy it to tools folder ifeq (yes,${MAIN_TRUNC}) $(MAKE) -C $(ROOT_DIR)/tools/scanfeeder build @cp $(ROOT_DIR)/tools/scanfeeder/scanfeeder ./scanfeeder else ifeq (yes,$(shell test -f scanfeeder && echo -n yes)) @echo "Using existing scanfeeder" else @echo "#!/bin/bash" > ./scanfeeder @chmod +x ./scanfeeder endif endif build_ci: ## Build the binary file from src as CI @echo "TODO" apply_git_hooks: ## copy git hooks to .git folder @echo "TODO" postclone: apply_git_hooks dep ## Post clone actions clean: ## Remove previous build @echo "TODO" build_docker_image: build_scanfeeder $(GET_VERSION_DEP) get_build_date ## Build local docker image @docker build --build-arg DST_USER_ID=$(shell id -u) --build-arg DST_GROUP_ID=$(shell id -g) \ --build-arg LOCAL_BUILD=$(LOCAL_BUILD) --build-arg RELEASE_VERSION="$(FINAL_VERSION)" \ --build-arg BUILD_DATE="$(BUILD_DATE)" -t vsix_runtime_check:$(FINAL_VERSION) . docker_image_ci: build_scanfeeder ## Build and push docker image from ci @docker build -t vsix_runtime_check . @echo "TODO push docker images" git-submodules-update: @git submodule sync --recursive @git submodule update --init --remote --recursive help: ## Display this help screen @grep -hE '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'