From f247bf67727e4277764463a0fa3d7654eca7da4b Mon Sep 17 00:00:00 2001 From: Andreas Geissler Date: Mon, 1 Aug 2022 17:05:42 +0200 Subject: [COMMON] Update Makefiles to enable parallelization All Makefiles are updated to support SKIP_LINT option, have a defined order of compilation (common -> components) to support the parallel compilation of charts using: make all -j8 (for 8 Jobs). Additionally use cm-push instead of push to use the new K8S/Helm version Issue-ID: OOM-3011 Signed-off-by: Andreas Geissler Change-Id: If9903c9d5bc646b5ce54075acc616e98c4b6706e --- kubernetes/common/Makefile | 39 +++++++++++++++------- kubernetes/common/elasticsearch/Makefile | 11 ++++-- .../common/elasticsearch/components/Makefile | 15 ++++++--- kubernetes/common/music/Makefile | 11 ++++-- kubernetes/common/music/components/Makefile | 11 ++++-- 5 files changed, 65 insertions(+), 22 deletions(-) (limited to 'kubernetes/common') diff --git a/kubernetes/common/Makefile b/kubernetes/common/Makefile index 6d5d9365b7..a884d1a329 100644 --- a/kubernetes/common/Makefile +++ b/kubernetes/common/Makefile @@ -21,18 +21,36 @@ COMMON_CHARTS_DIR := common EXCLUDES := PROCESSED_LAST := cert-wrapper repository-wrapper -PROCESSED_FIRST := repositoryGenerator readinessCheck serviceAccount certInitializer -TO_FILTER := $(PROCESSED_FIRST) $(EXCLUDES) $(PROCESSED_LAST) +PROCESSED_FIRST := repositoryGenerator readinessCheck serviceAccount certInitializer cmpv2Config +TO_FILTER := $(COMMON_CHARTS_DIR) $(PROCESSED_FIRST) $(EXCLUDES) $(PROCESSED_LAST) HELM_BIN := helm -HELM_CHARTS := $(PROCESSED_FIRST) $(filter-out $(TO_FILTER), $(sort $(patsubst %/.,%,$(wildcard */.)))) $(PROCESSED_LAST) +ifneq ($(SKIP_LINT),TRUE) + HELM_LINT_CMD := $(HELM_BIN) lint +else + HELM_LINT_CMD := echo "Skipping linting of" +endif + +HELM_CHARTS := $(filter-out $(TO_FILTER), $(sort $(patsubst %/.,%,$(wildcard */.)))) HELM_VER := $(shell $(HELM_BIN) version --template "{{.Version}}") .PHONY: $(HELM_CHARTS) $(TO_FILTER) -all: $(COMMON_CHARTS_DIR) $(HELM_CHARTS) +all: $(COMMON_CHARTS_DIR) $(PROCESSED_FIRST) $(HELM_CHARTS) $(PROCESSED_LAST) + +$(COMMON_CHARTS_DIR): + @echo "\n[$@]" + @make package-$@ + +$(PROCESSED_FIRST): $(COMMON_CHARTS_DIR) + @echo "\n[$@]" + @make package-$@ -$(HELM_CHARTS): +$(HELM_CHARTS): $(PROCESSED_FIRST) + @echo "\n[$@]" + @make package-$@ + +$(PROCESSED_LAST): $(HELM_CHARTS) @echo "\n[$@]" @make package-$@ @@ -43,16 +61,13 @@ dep-%: make-% @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) dep up $*; fi lint-%: dep-% - @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) lint $*; fi + @if [ -f $*/Chart.yaml ]; then $(HELM_LINT_CMD) $*; fi package-%: lint-% @mkdir -p $(PACKAGE_DIR) -ifeq "$(findstring v3,$(HELM_VER))" "v3" - @if [ -f $*/Chart.yaml ]; then PACKAGE_NAME=$$($(HELM_BIN) package -d $(PACKAGE_DIR) $* | cut -d":" -f2) && $(HELM_BIN) push -f $$PACKAGE_NAME local; fi -else - @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) package -d $(PACKAGE_DIR) $*; fi -endif - @$(HELM_BIN) repo index $(PACKAGE_DIR) + @if [ -f $*/Chart.yaml ]; then PACKAGE_NAME=$$($(HELM_BIN) package -d $(PACKAGE_DIR) $* | cut -d":" -f2) && $(HELM_BIN) cm-push -f $$PACKAGE_NAME local; fi + @sleep 3 + #@$(HELM_BIN) repo index $(PACKAGE_DIR) clean: @rm -f */Chart.lock diff --git a/kubernetes/common/elasticsearch/Makefile b/kubernetes/common/elasticsearch/Makefile index 51d7de122c..ef273d0e9b 100644 --- a/kubernetes/common/elasticsearch/Makefile +++ b/kubernetes/common/elasticsearch/Makefile @@ -19,6 +19,12 @@ SECRET_DIR := $(OUTPUT_DIR)/secrets EXCLUDES := dist resources templates charts docker HELM_BIN := helm +ifneq ($(SKIP_LINT),TRUE) + HELM_LINT_CMD := $(HELM_BIN) lint +else + HELM_LINT_CMD := echo "Skipping linting of" +endif + HELM_CHARTS := $(filter-out $(EXCLUDES), $(sort $(patsubst %/.,%,$(wildcard */.)))) .PHONY: $(EXCLUDES) $(HELM_CHARTS) @@ -36,12 +42,13 @@ dep-%: make-% @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) dep up $*; fi lint-%: dep-% - @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) lint $*; fi + @if [ -f $*/Chart.yaml ]; then $(HELM_LINT_CMD) $*; fi package-%: lint-% @mkdir -p $(PACKAGE_DIR) @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) package -d $(PACKAGE_DIR) $*; fi - @$(HELM_BIN) repo index $(PACKAGE_DIR) + @sleep 3 + #@$(HELM_BIN) repo index $(PACKAGE_DIR) clean: @rm -f */Chart.lock diff --git a/kubernetes/common/elasticsearch/components/Makefile b/kubernetes/common/elasticsearch/components/Makefile index 1ea8433a9c..79ba2fb47e 100644 --- a/kubernetes/common/elasticsearch/components/Makefile +++ b/kubernetes/common/elasticsearch/components/Makefile @@ -17,9 +17,15 @@ OUTPUT_DIR := $(ROOT_DIR)/../../dist PACKAGE_DIR := $(OUTPUT_DIR)/packages SECRET_DIR := $(OUTPUT_DIR)/secrets -EXCLUDES := soHelpers +EXCLUDES := HELM_BIN := helm -HELM_CHARTS := soHelpers $(filter-out $(EXCLUDES), $(sort $(patsubst %/.,%,$(wildcard */.)))) +ifneq ($(SKIP_LINT),TRUE) + HELM_LINT_CMD := $(HELM_BIN) lint +else + HELM_LINT_CMD := echo "Skipping linting of" +endif + +HELM_CHARTS := $(filter-out $(EXCLUDES), $(sort $(patsubst %/.,%,$(wildcard */.)))) .PHONY: $(EXCLUDES) $(HELM_CHARTS) @@ -36,12 +42,13 @@ dep-%: make-% @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) dep up $*; fi lint-%: dep-% - @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) lint $*; fi + @if [ -f $*/Chart.yaml ]; then $(HELM_LINT_CMD) $*; fi package-%: lint-% @mkdir -p $(PACKAGE_DIR) @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) package -d $(PACKAGE_DIR) $*; fi - @$(HELM_BIN) repo index $(PACKAGE_DIR) + @sleep 3 + #@$(HELM_BIN) repo index $(PACKAGE_DIR) clean: @rm -f */Chart.lock diff --git a/kubernetes/common/music/Makefile b/kubernetes/common/music/Makefile index 51d7de122c..ef273d0e9b 100644 --- a/kubernetes/common/music/Makefile +++ b/kubernetes/common/music/Makefile @@ -19,6 +19,12 @@ SECRET_DIR := $(OUTPUT_DIR)/secrets EXCLUDES := dist resources templates charts docker HELM_BIN := helm +ifneq ($(SKIP_LINT),TRUE) + HELM_LINT_CMD := $(HELM_BIN) lint +else + HELM_LINT_CMD := echo "Skipping linting of" +endif + HELM_CHARTS := $(filter-out $(EXCLUDES), $(sort $(patsubst %/.,%,$(wildcard */.)))) .PHONY: $(EXCLUDES) $(HELM_CHARTS) @@ -36,12 +42,13 @@ dep-%: make-% @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) dep up $*; fi lint-%: dep-% - @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) lint $*; fi + @if [ -f $*/Chart.yaml ]; then $(HELM_LINT_CMD) $*; fi package-%: lint-% @mkdir -p $(PACKAGE_DIR) @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) package -d $(PACKAGE_DIR) $*; fi - @$(HELM_BIN) repo index $(PACKAGE_DIR) + @sleep 3 + #@$(HELM_BIN) repo index $(PACKAGE_DIR) clean: @rm -f */Chart.lock diff --git a/kubernetes/common/music/components/Makefile b/kubernetes/common/music/components/Makefile index f4c9784bc4..79ba2fb47e 100644 --- a/kubernetes/common/music/components/Makefile +++ b/kubernetes/common/music/components/Makefile @@ -19,6 +19,12 @@ SECRET_DIR := $(OUTPUT_DIR)/secrets EXCLUDES := HELM_BIN := helm +ifneq ($(SKIP_LINT),TRUE) + HELM_LINT_CMD := $(HELM_BIN) lint +else + HELM_LINT_CMD := echo "Skipping linting of" +endif + HELM_CHARTS := $(filter-out $(EXCLUDES), $(sort $(patsubst %/.,%,$(wildcard */.)))) .PHONY: $(EXCLUDES) $(HELM_CHARTS) @@ -36,12 +42,13 @@ dep-%: make-% @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) dep up $*; fi lint-%: dep-% - @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) lint $*; fi + @if [ -f $*/Chart.yaml ]; then $(HELM_LINT_CMD) $*; fi package-%: lint-% @mkdir -p $(PACKAGE_DIR) @if [ -f $*/Chart.yaml ]; then $(HELM_BIN) package -d $(PACKAGE_DIR) $*; fi - @$(HELM_BIN) repo index $(PACKAGE_DIR) + @sleep 3 + #@$(HELM_BIN) repo index $(PACKAGE_DIR) clean: @rm -f */Chart.lock -- cgit 1.2.3-korg