This idea was imported from Canny. Originally created by: Rain Leander. The current owner is: Alice Sowerby.
The Equinix Metal API is accessible through Terraform, Ansible, Metal CLI, Go, and Python today. The capabilities of these integrations vary with some integrations getting support for new features faster than others. Some integrations lag well behind others. It would be fantastic to find continuous uniformity across Equinix Metal API integrations. Especially in those integrations mentioned above.
This comment was imported from Canny. Originally created by: Marques Johansson with 0 likes.
We're investigating approaches for generating SDKs and clients from the public Equinix Metal OpenAPIv3 spec. There are a number of tools listed at https://openapi.tools/ which provide these capabilities. Of note, the openapitools generator (https://openapi-generator.tech/docs/generators/) is being used to produce a metal-go and metal-java SDK. * https://github.com/equinix-labs/metal-go * https://github.com/equinix-labs/metal-java Additional SDKs and features available through code generation will be explored on Equinix Labs as needed. If a new SDK or generated tool is needed, please consider starting a GitHub project using one of the available generators and let us know if you run into any limitations (in this Canny, for example). In the metal-go and metal-java we have worked around some limitations by patching the fetched API specification or patching the generated artifacts.