By using AWS re:Post, you agree to the AWS re:Post Terms of Use

IDT Failed pretestvalidation CPU architecture

0

I have been able to successfully run the IDT sample test suite but when running the GGV2Q_2.5.4 test suite it fails almost immediately at the pretest stage, reporting back "Reason: only the following CPU architectures are supported : x86_64, armv6l, armv7l, aarch64". Both DUT and Host systems report x86_64 with uname -m so I'm not sure how it's failing at this step. Is there any way to bypass this step or debugging or could this possibly be an issue with the CPU architecture reporting differently?

[WARNING] [2024-11-04 11:22:54]: Detected dangling past execution - marking it as detected lastUpdatedMs=1730486974414 executionID=e8b3fbef-9881-11ef-9f43-848bcd4b29ee currentState=running
[ERROR] [2024-11-04 11:22:54]: An error happened while cleaning up the execution history error=failed to send crashReported metric (Response code was not 200. It was 403 Forbidden: {"message":"Missing Authentication Token"}) - past execution issues will be reported later
[INFO] [2024-11-04 11:22:54]: Running suite=GGV2Q_2.5.4 pool=1 idt=4.9.4
[WARNING] [2024-11-04 11:22:54]: IDT is accessing to Device Under Test with an insecure SSH method, to make it more secure you can provide publicKeyPath to device.json or resource.json file. More details can be found on AWS IoT Device Tester documentation Configure IDT settings section.
[INFO] [2024-11-04 11:22:54]: Automatic updates are supported for this release of IDT, checking for updates.
[INFO] [2024-11-04 11:22:54]:  executionId=0bb0367c-9ac9-11ef-bf21-848bcd4b29ee suiteId=GGV2Q
[WARNING] [2024-11-04 11:22:54]: Failed to get version of Greengrass with error exit status 1
[WARNING] [2024-11-04 11:22:54]: Device Tester is not able to check for any latest IDT test suites
[INFO] [2024-11-04 11:22:54]: Using test suite "GGV2Q_2.5.4" for execution
[WARNING] [2024-11-04 11:22:54]: IDT has detected secret values stored in plaintext in the user configuration.
[WARNING] [2024-11-04 11:22:54]: The following values are marked as secrets in this test suite: userData.hsm.slotId,userData.hsm.slotLabel,userData.hsm.slotUserPin,userData.hsm.keyLabel
[WARNING] [2024-11-04 11:22:54]: Of those secrets, these are stored in plaintext: userData.hsm.slotId,userData.hsm.slotLabel,userData.hsm.slotUserPin,userData.hsm.keyLabel
[WARNING] [2024-11-04 11:22:54]: To properly secure these secrets, please store them as AWS Parameter Store encrypted parameters and configure your IDT configuration to fetch them
[WARNING] [2024-11-04 11:22:54]: For more information on secure storage of IDT secrets, please refer to the IDT getting started guide
[WARNING] [2024-11-04 11:22:54]: IDT is accessing to Device Under Test with an insecure SSH method, to make it more secure you can provide publicKeyPath to device.json or resource.json file. More details can be found on AWS IoT Device Tester documentation Configure IDT settings section.
time="2024-11-04T11:22:54-05:00" level=info msg="GGV2 Suite Info" hostArch=amd64 hostName=localhost hostOs=linux groupId=pretestvalidation testCaseId=pretestvalidation deviceId=1
time="2024-11-04T11:22:54-05:00" level=info msg="Running test case"
time="2024-11-04T11:22:54-05:00" level=info msg="Setting up device for testing"
time="2024-11-04T11:22:55-05:00" level=info msg="Device architecture: x86_64 | armv6l | armv7l | aarch64"
time="2024-11-04T11:22:55-05:00" level=info msg="Cleaning up test resources..."
time="2024-11-04T11:22:55-05:00" level=info msg="Temporary resources on DUT are successfully removed"
time="2024-11-04T11:22:55-05:00" level=info msg="Cleaning up dut resources..."
time="2024-11-04T11:22:55-05:00" level=info msg="Cleaning up AWS resources... This may take a while..."
[ERROR] [2024-11-04 11:22:55]: Test exited unsuccessfully executionId=0bb0367c-9ac9-11ef-bf21-848bcd4b29ee testCaseId=pretestvalidation error=exit status 1
[INFO] [2024-11-04 11:22:55]: All tests finished. executionId=0bb0367c-9ac9-11ef-bf21-848bcd4b29ee
[INFO] [2024-11-04 11:22:55]: 

========== Test Summary ==========
Execution Time: 	1s
Tests Completed: 	1
Tests Passed: 		0
Tests Failed: 		1
Tests Skipped: 		0
----------------------------------
Test Groups:
Optional Test Groups:
    pretestvalidation: 		FAILED
----------------------------------
Failed Tests:
    Group Name: pretestvalidation
        Test Name: pretestvalidation
            Reason: only the following CPU architectures are supported : x86_64, armv6l, armv7l, aarch64
----------------------------------
Path to AWS IoT Device Tester Report: /home/awshost/Documents/devicetester_greengrass_v2_4.9.4_testsuite_2.5.4_linux/devicetester_greengrass_v2_linux/results/20241104T112254/awsiotdevicetester_report.xml
Path to Test Execution Logs: /home/awshost/Documents/devicetester_greengrass_v2_4.9.4_testsuite_2.5.4_linux/devicetester_greengrass_v2_linux/results/20241104T112254/logs
Path to Aggregated JUnit Report: /home/awshost/Documents/devicetester_greengrass_v2_4.9.4_testsuite_2.5.4_linux/devicetester_greengrass_v2_linux/results/20241104T112254/GGV2Q_Report.xml
==================================

GGV2Q_Report.xml

<testsuites name="GGV2Q results" time="1" tests="1" failures="0" skipped="0" errors="1" disabled="0">
	<testsuite name="pretestvalidation" package="" tests="1" failures="0" time="1" disabled="0" errors="1" skipped="0">
		<testcase classname="GGV2Q pretestvalidation" name="pretestvalidation">
			<error>only the following CPU architectures are supported : x86_64, armv6l, armv7l, aarch64</error>
		</testcase>
	</testsuite>
</testsuites>
2 Answers
2
Accepted Answer

Based on the information provided, it appears that the IDT (AWS IoT Device Tester) is failing during the pretest validation stage for the GGV2Q_2.5.4 test suite, specifically due to a CPU architecture mismatch. This is unexpected since you mentioned that both the Device Under Test (DUT) and the host system report x86_64 architecture when using the uname -m command.

The error message states that only the following CPU architectures are supported: x86_64, armv6l, armv7l, and aarch64. Since your systems are reporting x86_64, which is one of the supported architectures, this suggests that there might be an issue with how IDT is detecting or interpreting the CPU architecture.

To troubleshoot this issue, you could try the following steps:

  1. Double-check the device.json file to ensure that the CPU architecture is correctly specified for your device.

  2. Verify that there are no environment variables or system settings that might be overriding or affecting the architecture detection.

  3. Ensure that you're using the latest version of IDT and the test suite, as there might be bug fixes for architecture detection in newer versions.

  4. Check the IDT logs for any additional information about how it's determining the CPU architecture. The logs are typically located in the results folder, as mentioned in the output.

  5. If possible, try running IDT on a different host machine to see if the issue persists, which could help isolate whether it's a problem with the host configuration or the IDT itself.

  6. Contact AWS support if the issue continues, as they may be able to provide more specific guidance or identify if there's a known issue with the test suite.

Unfortunately, there isn't a straightforward way to bypass the CPU architecture check, as it's a fundamental part of the pretest validation. The check is in place to ensure that the device meets the basic requirements for running the Greengrass v2 qualification tests.

If the problem persists after trying these steps, it may indeed be an issue with how the CPU architecture is being reported or interpreted by IDT, and you might need to escalate this to AWS support for further investigation.
Sources
Troubleshooting IDT for AWS IoT Greengrass V2 - AWS IoT Greengrass
Tutorial: Build and run the sample IDT test suite - FreeRTOS
Tutorial: Build and run the sample IDT test suite - FreeRTOS
Review IDT test results and logs - AWS IoT Greengrass

profile picture
answered a month ago
profile picture
EXPERT
reviewed a month ago
0

You accepted the answer, I assume you were able to resolve the IDT issue. Can you provide some feedback on the suggestion that led to the solution?

profile pictureAWS
answered a month ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions