github.com/midokura/kubeedge@v1.2.0-mido.0/Makefile (about) 1 # make all builds both cloud and edge binaries 2 .PHONY: all 3 ifeq ($(WHAT),) 4 all: 5 cd cloud && $(MAKE) 6 cd edge && $(MAKE) 7 cd keadm && $(MAKE) 8 cd edgesite && $(MAKE) 9 else ifeq ($(WHAT),cloudcore) 10 # make all WHAT=cloudcore 11 all: 12 cd cloud && $(MAKE) cloudcore 13 else ifeq ($(WHAT),admission) 14 # make all WHAT=admission 15 all: 16 cd cloud && $(MAKE) admission 17 else ifeq ($(WHAT),edgecore) 18 all: 19 # make all WHAT=edgecore 20 cd edge && $(MAKE) 21 else ifeq ($(WHAT),edgesite) 22 all: 23 # make all WHAT=edgesite 24 $(MAKE) -C edgesite 25 else ifeq ($(WHAT),keadm) 26 all: 27 # make all WHAT=keadm 28 cd keadm && $(MAKE) 29 else 30 # invalid entry 31 all: 32 @echo $S"invalid option please choose to build either cloudcore, admission, edgecore, keadm, edgesite or all together" 33 endif 34 35 # unit tests 36 .PHONY: edge_test 37 edge_test: 38 cd edge && $(MAKE) test 39 40 .PHONY: cloud_test 41 cloud_test: 42 $(MAKE) -C cloud test 43 44 # lint 45 .PHONY: lint 46 lint:edge_lint cloud_lint bluetoothdevice_lint keadm_lint 47 48 .PHONY: edge_lint 49 edge_lint: 50 cd edge && $(MAKE) lint 51 52 .PHONY: cloud_lint 53 cloud_lint: 54 cd cloud && $(MAKE) lint 55 56 .PHONY: bluetoothdevice_lint 57 bluetoothdevice_lint: 58 make -C mappers/bluetooth_mapper lint 59 60 .PHONY: keadm_lint 61 keadm_lint: 62 make -C keadm lint 63 64 .PHONY: edge_integration_test 65 edge_integration_test: 66 cd edge && $(MAKE) integration_test 67 68 .PHONY: edge_cross_build 69 edge_cross_build: 70 cd edge && $(MAKE) cross_build 71 72 .PHONY: edge_cross_build_v7 73 edge_cross_build_v7: 74 $(MAKE) -C edge armv7 75 76 .PHONY: edge_cross_build_v8 77 edge_cross_build_v8: 78 $(MAKE) -C edge armv8 79 80 .PHONY: edgesite_cross_build 81 edgesite_cross_build: 82 $(MAKE) -C edgesite cross_build 83 84 .PHONY: edge_small_build 85 edge_small_build: 86 cd edge && $(MAKE) small_build 87 88 .PHONY: edgesite_cross_build_v7 89 edgesite_cross_build_v7: 90 $(MAKE) -C edgesite armv7 91 92 .PHONY: edgesite_cross_build_v8 93 edgesite_cross_build_v8: 94 $(MAKE) -C edgesite armv8 95 96 .PHONY: edgesite_small_build 97 edgesite_small_build: 98 $(MAKE) -C edgesite small_build 99 100 .PHONY: e2e_test 101 e2e_test: 102 # bash tests/e2e/scripts/execute.sh device_crd 103 # This has been commented temporarily since there is an issue of CI using same master for all PRs, which is causing failures when run parallely 104 bash tests/e2e/scripts/execute.sh 105 106 .PHONY: performance_test 107 performance_test: 108 bash tests/performance/scripts/jenkins.sh 109 110 QEMU_ARCH ?= x86_64 111 ARCH ?= amd64 112 IMAGE_TAG ?= $(shell git describe --tags) 113 114 .PHONY: cloudimage 115 cloudimage: 116 docker build -t kubeedge/cloudcore:${IMAGE_TAG} -f build/cloud/Dockerfile . 117 118 .PHONY: admissionimage 119 admissionimage: 120 docker build -t kubeedge/admission:${IMAGE_TAG} -f build/admission/Dockerfile . 121 122 .PHONY: csidriverimage 123 csidriverimage: 124 docker build -t kubeedge/csidriver:${IMAGE_TAG} -f build/csidriver/Dockerfile . 125 126 .PHONY: edgeimage 127 edgeimage: 128 mkdir -p ./build/edge/tmp 129 rm -rf ./build/edge/tmp/* 130 curl -L -o ./build/edge/tmp/qemu-${QEMU_ARCH}-static.tar.gz https://github.com/multiarch/qemu-user-static/releases/download/v3.0.0/qemu-${QEMU_ARCH}-static.tar.gz 131 tar -xzf ./build/edge/tmp/qemu-${QEMU_ARCH}-static.tar.gz -C ./build/edge/tmp 132 docker build -t kubeedge/edgecore:${IMAGE_TAG} \ 133 --build-arg BUILD_FROM=${ARCH}/golang:1.12-alpine3.10 \ 134 --build-arg RUN_FROM=${ARCH}/docker:dind \ 135 -f build/edge/Dockerfile . 136 137 .PHONY: edgesiteimage 138 edgesiteimage: 139 mkdir -p ./build/edgesite/tmp 140 rm -rf ./build/edgesite/tmp/* 141 curl -L -o ./build/edgesite/tmp/qemu-${QEMU_ARCH}-static.tar.gz https://github.com/multiarch/qemu-user-static/releases/download/v3.0.0/qemu-${QEMU_ARCH}-static.tar.gz 142 tar -xzf ./build/edgesite/tmp/qemu-${QEMU_ARCH}-static.tar.gz -C ./build/edgesite/tmp 143 docker build -t kubeedge/edgesite:${IMAGE_TAG} \ 144 --build-arg BUILD_FROM=${ARCH}/golang:1.12-alpine3.10 \ 145 --build-arg RUN_FROM=${ARCH}/docker:dind \ 146 -f build/edgesite/Dockerfile . 147 148 .PHONY: verify 149 verify: 150 bash hack/verify-golang.sh 151 bash hack/verify-vendor.sh 152 bash cloud/hack/verify-codegen.sh 153 154 .PHONY: bluetoothdevice 155 bluetoothdevice: 156 make -C mappers/bluetooth_mapper 157 158 .PHONY: bluetoothdevice_image 159 bluetoothdevice_image: 160 make -C mappers/bluetooth_mapper bluetooth_mapper_image