Idem, the powerful cloud management tool, continues to expand its reach with an array of plugins that extend its capabilities. We are excited to announce that idem-core-functions, idem-helm, idem-spotinst, idem-tls, and idem-k8s have released their version 1.0.0s to PyPi today! In addition, there are other mature Idem plugins that are worth exploring. In this post, we will delve into what services are covered under Idem through these plugins.
The New 1.0.0 Releases
Let's start by celebrating the plugins that have achieved their version 1.0.0 milestones today:
Idem Core Functions
The idem-core-functions plugin is like a utility belt for Idem. It packs in a variety of common functions that can be executed using the exec.run state. The beauty of this plugin lies in its ability to bind arguments, which means you can channel the output of these functions into other Idem plugins, such as idem-aws or idem-k8s. This plugin essentially enhances the versatility of your cloud resource management.
Idem-helm is your one-stop-shop for managing Helm resources within Idem. Helm is the go-to package manager for Kubernetes, and this plugin integrates Helm’s capabilities right into Idem, making Kubernetes package management a breeze.
If you’re looking to capitalize on spare EC2 capacity with spot instances, then idem-spotinst is for you. This plugin empowers Idem to handle spot instance resources efficiently, allowing you to make the most of discounted EC2 capacity.
Security is at the forefront of today's technological needs. The idem-tls plugin equips Idem with the tools to handle TLS keys and certificates. It acts as an intermediary that fetches TLS certificate information, which can then be utilized by other Idem plugins like idem-aws when setting up resources that use TLS services.
For Kubernetes aficionados, idem-k8s is a treasure. This plugin provides Idem with the power to manage Kubernetes resources with ease. Whether deploying apps, scaling resources, or handling cluster configurations, idem-k8s streamlines Kubernetes resource management.
Other Mature Idem Plugins
In addition to today’s exciting releases, here are other mature Idem plugins that you should check out:
The idem-aiohttp plugin is a web warrior. It extends Idem with exec modules that allow for HTTP requests like GET, PUT, POST, DELETE, and HEAD to web APIs. It also provides a standardized authentication mechanism, which is handy when interacting with various web services.
Idem-azure is a bridge between Idem and Microsoft Azure. It integrates the extensive resource management capabilities of Azure into Idem, allowing you to manage Azure cloud resources through Idem seamlessly.
If Google Cloud Platform is your playground, idem-gcp is a must-have. This plugin links GCP to Idem’s state system, allowing for streamlined management of Google Cloud resources.
With idem-aws, idem's most mature and powerful cloud plugin, Idem gets superpowers to manage Amazon Web Services resources. Using Boto3 libraries under the hood, this plugin smoothly integrates AWS's extensive services with Idem.
The idem-codegen plugin is a migratory marvel. It's designed to help users transition to using Idem for Infrastructure as Code by converting existing Terraform files into SLS files. Furthermore, it can automatically discover your existing cloud infrastructure and generate SLS code for all the resources it finds, making it easier to manage them through Idem.
Idem-random is a small but mighty plugin. It grants logical states such as random password, random integer, and random string, which can be coupled with other Idem plugins. For example, it’s handy when you need to create an AWS RDS database instance with a secure password without manual intervention. Idem-random generates a random password on the fly that can be used during the creation process.
An example use-case where this plugin can be used is - AWS RDS database instance needs a password when its created. We can use AWS’s RDS state along with Idem random password state in order to generate a random password at runtime and help create the RDS instance.
Installation and Usage
You can install all these cloud providers into your Python environment, and they each extend Idem with new exec modules and states for managing resources in those respective clouds. To install any of the plugins, use pip:
pip install <plugin-name>
For example, to install idem-aws, run:
pip install idem-aws
Idem’s ecosystem is a dynamic and rapidly expanding space. With plugins like idem-core-functions, idem-helm, idem-spotinst, idem-tls, idem-k8s, and many others, Idem proves to be an adaptable and comprehensive cloud management tool. These plugins are not only testament to the versatility of Idem but also signify the community’s commitment to making cloud infrastructure management more efficient and accessible.
What's even more exciting is that the development of new plugins doesn’t stop here. Every day, developers and contributors are working on creating new plugins to extend the functionality of Idem. The pop-create-idem tool makes it incredibly easy for anyone to create an Idem plugin, fostering innovation and continual growth.
Whether you’re working with AWS, GCP, Azure, Kubernetes, or just need to manage TLS certificates or generate random strings, Idem has got you covered. As the collection of plugins continues to grow, so do the possibilities for what you can achieve with Idem.
Stay connected with us for more updates, and be a part of this journey as Idem continues to break new ground in cloud infrastructure management.