@@ -63,3 +63,48 @@ rpm: $(RPM_SPECFILE) $(RPM_TARBALL)
6363clean :
6464 cargo clean " --target-dir=${TARGETDIR} "
6565 rm -rf rpmbuild
66+
67+ # integration-test: Run the bootc image integration tests (requires QUAY credentials)
68+ #
69+ # Prerequisites:
70+ # - Must be executed on Fedora Rawhide OR CentOS Stream 10
71+ # - Requires QUAY_USERNAME and QUAY_PASSWORD environment variables
72+ #
73+ # Usage:
74+ # QUAY_USERNAME=<your_quay_username> QUAY_PASSWORD=<your_quay_pass> make integration-test
75+ .PHONY : integration-test
76+ integration-test :
77+ @# Verify required environment variables are set
78+ @if [ -z " $$ QUAY_USERNAME" ]; then \
79+ echo " ERROR: QUAY_USERNAME environment variable not set" ; \
80+ echo " Usage: QUAY_USERNAME=quay_user QUAY_PASSWORD=quay_pass make integration-test" ; \
81+ exit 1; \
82+ fi
83+ @if [ -z " $$ QUAY_PASSWORD" ]; then \
84+ echo " ERROR: QUAY_PASSWORD environment variable not set" ; \
85+ echo " Usage: QUAY_USERNAME=quay_user QUAY_PASSWORD=quay_pass make integration-test" ; \
86+ exit 1; \
87+ fi
88+
89+ @# Verify supported operating system
90+ @. /etc/os-release; \
91+ if [ "$$ID" = "fedora" ] && { [ "$$VERSION_ID" = "rawhide" ] || [ "$$VERSION_ID" = "43" ]; }; then \
92+ echo "Running on Fedora $$VERSION_ID"; \
93+ elif [ "$$ID" = "centos" ] && [ "$$VERSION_ID" = "10" ]; then \
94+ echo "Running on CentOS Stream $$VERSION_ID"; \
95+ else \
96+ echo "Unsupported OS: $$ID $$VERSION_ID"; \
97+ echo "This test requires Fedora Rawhide or CentOS Stream 10"; \
98+ exit 1; \
99+ fi
100+
101+ @# Run test script and report results
102+ @echo "Starting integration test"; \
103+ cd tests && ./greenboot-bootc-qcow2.sh; \
104+ TEST_EXIT=$$?; \
105+ if [ $$TEST_EXIT -eq 0 ]; then \
106+ echo "SUCCESS: Integration test passed"; \
107+ else \
108+ echo "FAILURE: Integration test failed"; \
109+ exit $$TEST_EXIT; \
110+ fi
0 commit comments