github.com/stackdocker/rkt@v0.10.1-0.20151109095037-1aa827478248/tests/functional.mk (about) 1 $(call setup-stamp-file,FTST_FUNCTIONAL_TESTS_STAMP,/functional-tests) 2 $(call setup-tmp-dir,FTST_TMPDIR) 3 4 FTST_TEST_TMP := $(FTST_TMPDIR)/test-tmp 5 FTST_IMAGE_DIR := $(FTST_TMPDIR)/image 6 FTST_IMAGE_ROOTFSDIR := $(FTST_IMAGE_DIR)/rootfs 7 FTST_IMAGE := $(FTST_TMPDIR)/rkt-inspect.aci 8 FTST_IMAGE_MANIFEST_SRC := $(MK_SRCDIR)/image/manifest 9 FTST_IMAGE_MANIFEST := $(FTST_IMAGE_DIR)/manifest 10 FTST_IMAGE_TEST_DIRS := $(FTST_IMAGE_ROOTFSDIR)/dir1 $(FTST_IMAGE_ROOTFSDIR)/dir2 11 FTST_ACE_MAIN_IMAGE_DIR := $(FTST_TMPDIR)/ace-main 12 FTST_ACE_MAIN_IMAGE := $(FTST_TMPDIR)/rkt-ace-validator-main.aci 13 FTST_ACE_MAIN_IMAGE_MANIFEST_SRC := Godeps/_workspace/src/github.com/appc/spec/ace/image_manifest_main.json 14 FTST_ACE_MAIN_IMAGE_MANIFEST := $(FTST_ACE_MAIN_IMAGE_DIR)/manifest 15 FTST_ACE_SIDEKICK_IMAGE_DIR := $(FTST_TMPDIR)/ace-sidekick 16 FTST_ACE_SIDEKICK_IMAGE := $(FTST_TMPDIR)/rkt-ace-validator-sidekick.aci 17 FTST_ACE_SIDEKICK_IMAGE_MANIFEST_SRC := Godeps/_workspace/src/github.com/appc/spec/ace/image_manifest_sidekick.json 18 FTST_ACE_SIDEKICK_IMAGE_MANIFEST := $(FTST_ACE_SIDEKICK_IMAGE_DIR)/manifest 19 FTST_INSPECT_BINARY := $(FTST_TMPDIR)/inspect 20 FTST_ACI_INSPECT := $(FTST_IMAGE_ROOTFSDIR)/inspect 21 FTST_ACE_BINARY := $(FTST_TMPDIR)/ace-validator 22 FTST_ECHO_SERVER_BINARY := $(FTST_TMPDIR)/echo-socket-activated 23 FTST_ACI_ECHO_SERVER := $(FTST_IMAGE_ROOTFSDIR)/echo-socket-activated 24 FTST_EMPTY_IMAGE_DIR := $(FTST_TMPDIR)/empty-image 25 FTST_EMPTY_IMAGE_ROOTFSDIR := $(FTST_EMPTY_IMAGE_DIR)/rootfs 26 FTST_EMPTY_IMAGE := $(FTST_TMPDIR)/rkt-empty.aci 27 FTST_EMPTY_IMAGE_MANIFEST_SRC := $(MK_SRCDIR)/empty-image/manifest 28 FTST_EMPTY_IMAGE_MANIFEST := $(FTST_EMPTY_IMAGE_DIR)/manifest 29 30 TOPLEVEL_CHECK_STAMPS += $(FTST_FUNCTIONAL_TESTS_STAMP) 31 TOPLEVEL_FUNCTIONAL_CHECK_STAMPS += $(FTST_FUNCTIONAL_TESTS_STAMP) 32 INSTALL_FILES += $(FTST_IMAGE_MANIFEST_SRC):$(FTST_IMAGE_MANIFEST):- $(FTST_INSPECT_BINARY):$(FTST_ACI_INSPECT):- $(FTST_EMPTY_IMAGE_MANIFEST_SRC):$(FTST_EMPTY_IMAGE_MANIFEST):- $(FTST_ACE_MAIN_IMAGE_MANIFEST_SRC):$(FTST_ACE_MAIN_IMAGE_MANIFEST):- $(FTST_ACE_SIDEKICK_IMAGE_MANIFEST_SRC):$(FTST_ACE_SIDEKICK_IMAGE_MANIFEST):- $(FTST_ECHO_SERVER_BINARY):$(FTST_ACI_ECHO_SERVER):- 33 CREATE_DIRS += $(FTST_IMAGE_DIR) $(FTST_EMPTY_IMAGE_DIR) $(FTST_EMPTY_IMAGE_ROOTFSDIR) $(FTST_IMAGE_TEST_DIRS) $(FTST_TEST_TMP) 34 INSTALL_DIRS += $(FTST_IMAGE_ROOTFSDIR):0755 35 CLEAN_FILES += $(FTST_IMAGE) $(FTST_ECHO_SERVER_BINARY) $(FTST_INSPECT_BINARY) $(FTST_EMPTY_IMAGE) $(FTST_IMAGE_ROOTFSDIR)/dir1/file $(FTST_IMAGE_ROOTFSDIR)/dir2/file $(FTST_ACE_BINARY) 36 CLEAN_DIRS += $(FTST_IMAGE_ROOTFSDIR)/dir1 $(FTST_IMAGE_ROOTFSDIR)/dir2 37 CLEAN_SYMLINKS += $(FTST_IMAGE_ROOTFSDIR)/inspect-link 38 39 $(call forward-vars,$(FTST_FUNCTIONAL_TESTS_STAMP), \ 40 RKT_BINARY ACTOOL FTST_IMAGE FTST_EMPTY_IMAGE FTST_TEST_TMP ABS_GO \ 41 FTST_INSPECT_BINARY GO_ENV GO_TEST_FUNC_ARGS REPO_PATH \ 42 FTST_ACE_MAIN_IMAGE FTST_ACE_SIDEKICK_IMAGE) 43 $(FTST_FUNCTIONAL_TESTS_STAMP): $(FTST_IMAGE) $(FTST_EMPTY_IMAGE) $(ACTOOL_STAMP) $(RKT_STAMP) $(FTST_ACE_MAIN_IMAGE) $(FTST_ACE_SIDEKICK_IMAGE) | $(FTST_TEST_TMP) 44 $(VQ) \ 45 $(call vb,vt,GO TEST,$(REPO_PATH)/tests) \ 46 sudo RKT="$(RKT_BINARY)" ACTOOL="$(ACTOOL)" RKT_INSPECT_IMAGE="$(FTST_IMAGE)" RKT_EMPTY_IMAGE="$(FTST_EMPTY_IMAGE)" RKT_ACE_MAIN_IMAGE=$(FTST_ACE_MAIN_IMAGE) RKT_ACE_SIDEKICK_IMAGE=$(FTST_ACE_SIDEKICK_IMAGE) FUNCTIONAL_TMP="$(FTST_TEST_TMP)" GO="$(ABS_GO)" INSPECT_BINARY="$(FTST_INSPECT_BINARY)" $(GO_ENV) "$(ABS_GO)" test -timeout 30m -v $(GO_TEST_FUNC_ARGS) $(REPO_PATH)/tests 47 48 $(call forward-vars,$(FTST_IMAGE), \ 49 FTST_IMAGE_ROOTFSDIR ACTOOL FTST_IMAGE_DIR) 50 $(FTST_IMAGE): $(FTST_IMAGE_MANIFEST) $(FTST_ACI_INSPECT) $(FTST_ACI_ECHO_SERVER) | $(FTST_IMAGE_TEST_DIRS) 51 $(VQ) \ 52 set -e; \ 53 $(call vb,v2,GEN,$(call vsp,$(FTST_IMAGE_ROOTFSDIR)/dir1/file)) \ 54 echo -n dir1 >$(FTST_IMAGE_ROOTFSDIR)/dir1/file; \ 55 $(call vb,v2,GEN,$(call vsp,$(FTST_IMAGE_ROOTFSDIR)/dir2/file)) \ 56 echo -n dir2 >$(FTST_IMAGE_ROOTFSDIR)/dir2/file; \ 57 $(call vb,v2,LN SF,/inspect $(call vsp,$(FTST_IMAGE_ROOTFSDIR)/inspect-link)) \ 58 ln -sf /inspect $(FTST_IMAGE_ROOTFSDIR)/inspect-link; \ 59 $(call vb,vt,ACTOOL,$(call vsp,$@)) \ 60 "$(ACTOOL)" build --overwrite --owner-root "$(FTST_IMAGE_DIR)" "$@" 61 62 # variables for makelib/build_go_bin.mk 63 BGB_STAMP := $(FTST_FUNCTIONAL_TESTS_STAMP) 64 BGB_BINARY := $(FTST_INSPECT_BINARY) 65 BGB_PKG_IN_REPO := $(call go-pkg-from-dir)/inspect 66 BGB_GO_FLAGS := -a -installsuffix cgo 67 BGB_ADDITIONAL_GO_ENV := CGO_ENABLED=0 68 69 include makelib/build_go_bin.mk 70 71 BGB_STAMP := $(FTST_FUNCTIONAL_TESTS_STAMP) 72 BGB_BINARY := $(FTST_ACE_BINARY) 73 BGB_PKG_IN_REPO := Godeps/_workspace/src/github.com/appc/spec/ace 74 BGB_GO_FLAGS := -a -installsuffix cgo 75 BGB_ADDITIONAL_GO_ENV := CGO_ENABLED=0 76 77 include makelib/build_go_bin.mk 78 79 $(call forward-vars,$(FTST_EMPTY_IMAGE), \ 80 ACTOOL FTST_EMPTY_IMAGE_DIR) 81 $(FTST_EMPTY_IMAGE): $(FTST_EMPTY_IMAGE_MANIFEST) | $(FTST_EMPTY_IMAGE_ROOTFSDIR) 82 $(VQ) \ 83 $(call vb,vt,ACTOOL,$(call vsp,$@)) \ 84 "$(ACTOOL)" build --overwrite "$(FTST_EMPTY_IMAGE_DIR)" "$@" 85 86 # variables for makelib/build_go_bin.mk 87 BGB_STAMP := $(FTST_FUNCTIONAL_TESTS_STAMP) 88 BGB_BINARY := $(FTST_ECHO_SERVER_BINARY) 89 BGB_PKG_IN_REPO := $(call go-pkg-from-dir)/echo-socket-activated 90 BGB_GO_FLAGS := -a -installsuffix cgo 91 BGB_ADDITIONAL_GO_ENV := CGO_ENABLED=0 92 93 include makelib/build_go_bin.mk 94 95 # 1 - image 96 # 2 - aci directory 97 # 3 - ace validator 98 define FTST_GENERATE_ACE_IMAGE 99 100 $$(call forward-vars,$1,ACTOOL) 101 $1: $2/manifest $2/rootfs/ace-validator | $2/rootfs/opt/acvalidator 102 $$(VQ) \ 103 $$(call vb,vt,ACTOOL,$$(call vsp,$$@)) \ 104 "$$(ACTOOL)" build --overwrite "$2" "$1" 105 106 CREATE_DIRS += $2 $$(call dir-chain,$2,rootfs/opt/acvalidator) 107 INSTALL_FILES += $3:$2/rootfs/ace-validator:- 108 CLEAN_FILES += $1 109 endef 110 111 $(eval $(call FTST_GENERATE_ACE_IMAGE,$(FTST_ACE_MAIN_IMAGE),$(FTST_ACE_MAIN_IMAGE_DIR),$(FTST_ACE_BINARY))) 112 $(eval $(call FTST_GENERATE_ACE_IMAGE,$(FTST_ACE_SIDEKICK_IMAGE),$(FTST_ACE_SIDEKICK_IMAGE_DIR),$(FTST_ACE_BINARY))) 113 114 $(call undefine-namespaces,FTST)