96 lines
3.1 KiB
Makefile
96 lines
3.1 KiB
Makefile
GINKGO ?= "github.com/onsi/ginkgo/v2/ginkgo"
|
|
GINKGO_ARGS ?= -v --fail-fast -r --timeout=3h
|
|
|
|
.PHONY: prepare-test
|
|
prepare-test:
|
|
ifeq ("$(DISK)","")
|
|
@echo "No disk image found, run 'make build-disk' first"
|
|
@exit 1
|
|
endif
|
|
@scripts/run_vm.sh start $(DISK)
|
|
@echo "VM started from $(DISK)"
|
|
|
|
.PHONY: prepare-local-registry
|
|
prepare-local-registry:
|
|
@scripts/run_registry.sh start
|
|
@scripts/run_registry.sh push "$(TOOLKIT_REPO):$(VERSION)" "$(REPO):$(VERSION)"
|
|
|
|
.PHONY: prepare-upgrade-test
|
|
prepare-upgrade-test:
|
|
ifeq ("$(UPGRADE_DISK_CHECK)","")
|
|
mkdir -p $(ROOT_DIR)/build
|
|
@echo "Downloading disk from $(UPGRADE_DISK_URL) ..."
|
|
@wget -q --tries=3 $(UPGRADE_DISK_URL) -O $(ROOT_DIR)/build/$(UPGRADE_DISK)
|
|
endif
|
|
@scripts/run_vm.sh start $(ROOT_DIR)/build/$(UPGRADE_DISK)
|
|
@echo "VM started from $(ROOT_DIR)/build/$(UPGRADE_DISK)"
|
|
|
|
.PHONY: test-active
|
|
test-active: prepare-test
|
|
VM_PID=$$(scripts/run_vm.sh vmpid) COS_PASS=cos go run $(GINKGO) $(GINKGO_ARGS) ./tests/wait-active
|
|
|
|
.PHONY: prepare-installer-test
|
|
prepare-installer-test:
|
|
ifeq ("$(ISO)","")
|
|
@echo "No ISO image found, run 'make build-iso' first"
|
|
@exit 1
|
|
endif
|
|
@scripts/run_vm.sh start $(ISO)
|
|
@echo "VM started from $(ISO)"
|
|
|
|
.PHONY: test-clean
|
|
test-clean: test-stop
|
|
@scripts/run_registry.sh stop
|
|
@scripts/run_vm.sh clean
|
|
|
|
.PHONY: test-stop
|
|
test-stop:
|
|
@scripts/run_vm.sh stop
|
|
|
|
.PHONY: test-installer
|
|
test-installer: prepare-installer-test
|
|
VM_PID=$$(scripts/run_vm.sh vmpid) go run $(GINKGO) $(GINKGO_ARGS) ./tests/installer
|
|
VM_PID=$$(scripts/run_vm.sh vmpid) go run $(GINKGO) $(GINKGO_ARGS) ./tests/smoke
|
|
|
|
.PHONY: test-smoke
|
|
test-smoke: test-active
|
|
VM_PID=$$(scripts/run_vm.sh vmpid) go run $(GINKGO) $(GINKGO_ARGS) ./tests/smoke
|
|
|
|
.PHONY: test-grubfallback
|
|
test-grubfallback: test-active
|
|
VM_PID=$$(scripts/run_vm.sh vmpid) go run $(GINKGO) $(GINKGO_ARGS) ./tests/grubfallback
|
|
|
|
.PHONY: test-recovery
|
|
test-recovery: test-active
|
|
VM_PID=$$(scripts/run_vm.sh vmpid) go run $(GINKGO) $(GINKGO_ARGS) ./tests/recovery
|
|
|
|
.PHONY: test-fallback
|
|
test-fallback: test-active
|
|
VM_PID=$$(scripts/run_vm.sh vmpid) go run $(GINKGO) $(GINKGO_ARGS) ./tests/fallback
|
|
|
|
.PHONY: test-fsck
|
|
test-fsck: test-active
|
|
VM_PID=$$(scripts/run_vm.sh vmpid) go run $(GINKGO) $(GINKGO_ARGS) ./tests/fsck
|
|
|
|
.PHONY: test-downgrade
|
|
test-downgrade: prepare-test prepare-local-registry
|
|
@scripts/run_upgradetest.sh start $(GINKGO) "$(GINKGO_ARGS)" "./tests/downgrade" "$(TOOLKIT_REPO):$(VERSION)" "$(REPO):$(VERSION)"
|
|
|
|
.PHONY: test-upgrade
|
|
test-upgrade: prepare-upgrade-test prepare-local-registry
|
|
@scripts/run_upgradetest.sh start $(GINKGO) "$(GINKGO_ARGS)" "./tests/upgrade" "$(TOOLKIT_REPO):$(VERSION)" "$(REPO):$(VERSION)"
|
|
|
|
.PHONY: test-cli
|
|
test-cli:
|
|
go generate ./...
|
|
go run $(GINKGO) --label-filter '!root' --fail-fast --race --covermode=atomic --coverprofile=coverage.txt --coverpkg=github.com/rancher/elemental-toolkit/... -p -r ${PKG}
|
|
|
|
.PHONY: test-root
|
|
test-root:
|
|
ifneq ($(shell id -u), 0)
|
|
@echo "This tests require root/sudo to run."
|
|
@exit 1
|
|
else
|
|
go run $(GINKGO) run --label-filter root --fail-fast --race --covermode=atomic --coverprofile=coverage_root.txt --coverpkg=github.com/rancher/elemental-toolkit/... -procs=1 -r ${PKG}
|
|
endif
|