Company
Date Published
Author
Makito Yu
Word count
1040
Language
English
Hacker News points
None

Summary

When migrating Kong Manager's continuous integration from Jenkins to GitHub Actions, a test failure revealed a deeper issue related to the Kong instance's inability to communicate with the testing framework, resulting in an unusual exit code due to an illegal instruction. The investigation traced the problem to the inclusion of an ADX instruction set in the libgmp library, which was incompatible with the GitHub Actions runner's older CPU model, a Haswell-based Intel Xeon E5-2673 v3. This occurred because recent changes to the Amazon AWS instance type for the build pipeline allowed the libgmp build script to optimize based on the newer CPU model, inadvertently introducing unsupported instructions. To resolve this, the build script was adjusted to prevent optimization based on the build machine's CPU, ensuring compatibility across different processors. This proactive approach not only resolved the issue but also emphasized the importance of investigating test failures to prevent potential production issues, reinforcing the commitment to software quality and stability for customers.