
PEClient.rb drops: Ruby's unofficial hero rescues Puppet API warriors from curl-jq apocalypse and 2 AM bash regrets
Puppet Labs has introduced PEClient.rb, a Ruby client library for Puppet Enterprise and Puppet Core HTTP APIs, allowing users to call endpoints using Ruby code. The library is designed for teams operating Puppet at scale, integrating with other tooling, and requiring API access beyond what the Console or pe-client-tools provide. PEClient.rb supports Ruby versions 3.2 to 4.0 and uses Faraday, with minimal dependencies. It offers token or certificate authentication, consistent error classes, and plain hashes for input and output. The library is not an official Perforce product and is maintained on a best-effort basis. PEClient.rb can be installed via Bundler and is available on GitHub, with compatibility notes and documentation provided. The library aims to simplify API calls and reduce maintenance time, making it a valuable tool for automation and infrastructure management. With PEClient.rb, users can focus on automating their infrastructure, rather than managing ad-hoc scripts and API wrappers.