PROFILE_ID := x86_64_COTS PROFILE_ID_IN_SHORT := $(subst -,$e,$(PROFILE_ID)) CONTAINER_IMAGES_TAR := traffic-engine-${OS_RELEASE_VER}-docker.tar TRAFFIC_ENGINE_HELM_CHART_TAR := traffic-engine-$(HELM_CHART_VER).tgz MRZCPD_HELM_CHART_TAR := mrzcpd-$(HELM_CHART_VER).tgz APP_BUNDLE_BIN := tsg-os-${OS_RELEASE_VER}-${PROFILE_ID_IN_SHORT}-APP-BUNDLE.bin INJECT_HELM_CHART_TAR := inject-adapter-$(HELM_CHART_VER).tgz CONTAINER_IMAGES_TAR_GLOB := traffic-engine-*-docker.tar HELM_CHART_TAR_GLOB := traffic-engine-*.tgz MRZCPD_DEVICE_PLUGIN_IMAGE_TAG := ${OS_RELEASE_VER} TARGET_BUILD_DIR := $(BUILDDIR_BASE)/$(PROFILE_ID)/containers TARGET_INSTALLER_DIR := $(TARGET_BUILD_DIR)/installer TRAFFIC_ENGINE_HELM_FILE_PATH := /ansible/roles/traffic-engine/files/helm INJECT_ADAPTER_HELM_FILE_PATH := /ansible/roles/packet_adapter/files/helm MRZCPD_HELM_FILE_PATH := /ansible/roles/mrzcpd/files/helm MRZCPD_DEVICE_PLUGIN_FILE_PATH := /ansible/roles/k3s-install/files/packet-io-uio-binder.yaml .PHONY: all build_dir installer clean_installer_dir prebuild_container_images build_container_images build_helm_charts build_app_bundle_bin all: build_app_bundle_bin build_dir: mkdir -p $(TARGET_BUILD_DIR) mkdir -p $(TARGET_INSTALLER_DIR) clean_installer_dir: rm -rf $(TARGET_INSTALLER_DIR) installer: build_dir cp $(INSTALLERDIR)/app_bundle_install.sh $(TARGET_INSTALLER_DIR)/install.sh chmod +x $(TARGET_INSTALLER_DIR)/install.sh sed -i -e "s/%%CONTAINER_IMAGES_TAR%%/$(CONTAINER_IMAGES_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh sed -i -e "s/%%TRAFFIC_ENGINE_HELM_CHART_TAR%%/$(TRAFFIC_ENGINE_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh sed -i -e "s/%%INJECT_HELM_CHART_TAR%%/$(INJECT_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh sed -i -e "s/%%MRZCPD_HELM_CHART_TAR%%/$(MRZCPD_HELM_CHART_TAR)/" $(TARGET_INSTALLER_DIR)/install.sh sed -i -e "s/%%CONTAINER_IMAGES_TAR_GLOB%%/$(CONTAINER_IMAGES_TAR_GLOB)/" $(TARGET_INSTALLER_DIR)/install.sh sed -i -e "s/%%HELM_CHART_TAR_GLOB%%/$(HELM_CHART_TAR_GLOB)/" $(TARGET_INSTALLER_DIR)/install.sh sed -i -e "s/%%MRZCPD_DEVICE_PLUGIN_IMAGE_TAG%%/$(MRZCPD_DEVICE_PLUGIN_IMAGE_TAG)/" $(PROJECTDIR)/$(MRZCPD_DEVICE_PLUGIN_FILE_PATH) prebuild_container_images: ifeq ($(ENABLE_LICENSE_PROTECTED),1) sed -i '/sapp:/d;/tfe-pr:/d;/mrzcpd:/d' $(PROJECTDIR)/ansible/install_config/group_vars/rpm_version.yml else sed -i '/sapp-pr:/d;/tfe-pr:/d;/mrzcpd:/d' $(PROJECTDIR)/ansible/install_config/group_vars/rpm_version.yml endif ifeq ($(ENABLE_ALIYUN_INTERNAL_DOMAIN),1) sed -i -e "s/mirrors.aliyun.com/mirrors.cloud.aliyuncs.com/" $(CONFDIR)/yum-RockyLinux-8.conf endif build_container_images: prebuild_container_images chmod 0755 $(PROJECTDIR)/tools/build_container_images.sh $(PROJECTDIR)/tools/build_container_images.sh $(PROJECTDIR) $(CONFDIR) $(TOOLSDIR) $(OS_RELEASE_VER) $(PROFILE_ID) $(IMAGEDIR_BASE) $(TARGET_INSTALLER_DIR) $(CONTAINER_IMAGES_TAR) build_helm_charts: build_dir chmod 0755 $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR) $(OS_RELEASE_VER) $(HELM_CHART_VER) $(TARGET_INSTALLER_DIR) $(TRAFFIC_ENGINE_HELM_FILE_PATH) $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR) $(OS_RELEASE_VER) $(HELM_CHART_VER) $(TARGET_INSTALLER_DIR) $(INJECT_ADAPTER_HELM_FILE_PATH) $(PROJECTDIR)/tools/build_helm_charts.sh $(PROJECTDIR) $(OS_RELEASE_VER) $(HELM_CHART_VER) $(TARGET_INSTALLER_DIR) $(MRZCPD_HELM_FILE_PATH) build_app_bundle_bin: clean_installer_dir installer build_helm_charts build_container_images mkdir -p $(TARGET_BUILD_DIR)/app-bundle-cook-bits chmod 0755 $(TOOLSDIR)/app-bundle-cook-bits $(TOOLSDIR)/app-bundle-cook-bits $(TARGET_BUILD_DIR) $(TARGET_BUILD_DIR)/app-bundle-cook-bits $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN) sha256sum $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN) | awk '{print $$1}' > $(IMAGEDIR_BASE)/$(APP_BUNDLE_BIN).sha256sum.txt clean: rm -rf $(TARGET_BUILD_DIR)