The Ansible Linode Collection contains various plugins for managing Linode services.
This collection has been tested against following Ansible versions: >=2.9.10.
Plugins and modules within a collection may be tested with only specific Ansible versions. A collection may contain metadata that identifies these versions. PEP440 is the schema used to describe the versions of Ansible.
Modules for managing Linode infrastructure.
Name | Description |
---|---|
linode.cloud.api_request | Make an arbitrary Linode API request. |
linode.cloud.database_mysql | Manage a Linode MySQL database. |
linode.cloud.database_postgresql | Manage a Linode PostgreSQL database. |
linode.cloud.domain | Manage Linode Domains. |
linode.cloud.domain_record | Manage Linode Domain Records. |
linode.cloud.firewall | Manage Linode Firewalls. |
linode.cloud.firewall_device | Manage Linode Firewall Devices. |
linode.cloud.image | Manage a Linode Image. |
linode.cloud.instance | Manage Linode Instances, Configs, and Disks. |
linode.cloud.ip_assign | Assign IPs to Linodes in a given Region. |
linode.cloud.ip_rdns | Manage a Linode IP address's rDNS. |
linode.cloud.ip_share | Manage the Linode shared IPs. |
linode.cloud.lke_cluster | Manage Linode LKE clusters. |
linode.cloud.lke_node_pool | Manage Linode LKE cluster node pools. |
linode.cloud.nodebalancer | Manage a Linode NodeBalancer. |
linode.cloud.nodebalancer_node | Manage Linode NodeBalancer Nodes. |
linode.cloud.nodebalancer_stats | View a Linode NodeBalancers Stats. |
linode.cloud.object_keys | Manage Linode Object Storage Keys. |
linode.cloud.ssh_key | Manage a Linode SSH key. |
linode.cloud.stackscript | Manage a Linode StackScript. |
linode.cloud.token | Manage a Linode Token. |
linode.cloud.user | Manage a Linode User. |
linode.cloud.volume | Manage a Linode Volume. |
linode.cloud.vpc | Create, read, and update a Linode VPC. |
linode.cloud.vpc_subnet | Create, read, and update a Linode VPC Subnet. |
Modules for retrieving information about existing Linode infrastructure.
Name | Description |
---|---|
linode.cloud.account_availability_info | Get info about a Linode Account Availability. |
linode.cloud.account_info | Get info about a Linode Account. |
linode.cloud.database_mysql_info | Get info about a Linode MySQL Managed Database. |
linode.cloud.database_postgresql_info | Get info about a Linode PostgreSQL Managed Database. |
linode.cloud.domain_info | Get info about a Linode Domain. |
linode.cloud.domain_record_info | Get info about a Linode Domain Record. |
linode.cloud.firewall_info | Get info about a Linode Firewall. |
linode.cloud.image_info | Get info about a Linode Image. |
linode.cloud.instance_info | Get info about a Linode Instance. |
linode.cloud.ip_info | Get info about a Linode IP. |
linode.cloud.ipv6_range_info | Get info about a Linode IPv6 range. |
linode.cloud.lke_cluster_info | Get info about a Linode LKE cluster. |
linode.cloud.nodebalancer_info | Get info about a Linode NodeBalancer. |
linode.cloud.object_cluster_info | Get info about a Linode Object Storage Cluster. |
linode.cloud.profile_info | Get info about a Linode Profile. |
linode.cloud.ssh_key_info | Get info about the Linode SSH public key. |
linode.cloud.stackscript_info | Get info about a Linode StackScript. |
linode.cloud.token_info | Get info about a Linode Personal Access Token. |
linode.cloud.type_info | Get info about a Linode Type. |
linode.cloud.user_info | Get info about a Linode User. |
linode.cloud.vlan_info | Get info about a Linode VLAN. |
linode.cloud.volume_info | Get info about a Linode Volume. |
linode.cloud.vpc_info | Get info about a Linode VPC. |
linode.cloud.vpc_subnet_info | Get info about a Linode VPC Subnet. |
Modules for retrieving and filtering on multiple Linode resources.
Name | Description |
---|---|
linode.cloud.account_availability_list | List and filter on Account Availabilitys. |
linode.cloud.database_engine_list | List and filter on Managed Database engine types. |
linode.cloud.database_list | List and filter on Linode Managed Databases. |
linode.cloud.domain_list | List and filter on Domains. |
linode.cloud.event_list | List and filter on Linode events. |
linode.cloud.firewall_list | List and filter on Firewalls. |
linode.cloud.image_list | List and filter on Images. |
linode.cloud.instance_list | List and filter on Linode Instances. |
linode.cloud.instance_type_list | List and filter on Linode Instance Types. |
linode.cloud.lke_version_list | List Kubernetes versions available for deployment to a Kubernetes cluster. |
linode.cloud.nodebalancer_list | List and filter on Nodebalancers. |
linode.cloud.object_cluster_list | List and filter on Object Storage Clusters. |
linode.cloud.region_list | List and filter on Linode Regions. |
linode.cloud.ssh_key_list | List and filter on SSH keys in the Linode profile. |
linode.cloud.stackscript_list | List and filter on Linode stackscripts. |
linode.cloud.token_list | List and filter on Linode Account tokens. |
linode.cloud.type_list | List and filter on Linode Instance Types. |
linode.cloud.user_list | List Users. |
linode.cloud.vlan_list | List and filter on Linode VLANs. |
linode.cloud.volume_list | List and filter on Linode Volumes. |
linode.cloud.vpc_list | List and filter on VPCs. |
linode.cloud.vpc_subnet_list | List and filter on VPC Subnets. |
Dynamically add Linode infrastructure to an Ansible inventory.
Name |
---|
linode.cloud.instance |
You can install the Linode collection with the Ansible Galaxy CLI:
ansible-galaxy collection install linode.cloud
The Python module dependencies are not installed by ansible-galaxy
. They can
be manually installed using pip:
pip install --upgrade -r https://raw.githubusercontent.com/linode/ansible_linode/main/requirements.txt
⚠️ NOTE: Python dependencies should always be reinstalled when upgrading collection versions
Once the Linode Ansible collection is installed, it can be referenced by its Fully Qualified Collection Namespace (FQCN): linode.cloud.module_name
.
In order to use this collection, the LINODE_API_TOKEN
environment variable must be set to a valid Linode API v4 token.
Alternatively, you can pass your Linode API v4 token into the api_token
option for each Linode module you reference.
The LINODE_UA_PREFIX
environment variable or the ua_prefix
module option can be used to specify a custom User-Agent prefix.
The LINODE_API_URL
environment variable pr the api_url
module option can be used to specify a custom API base url.
---
- name: create linode instance
hosts: localhost
tasks:
- name: Create a Linode instance
linode.cloud.instance:
label: my-linode
type: g6-nanode-1
region: us-east
image: linode/ubuntu22.04
root_pass: verysecurepassword!!!
state: present
For more information on Ansible collection usage, see Ansible's official usage guide.
Use-case examples for this collection can be found here.
GNU General Public License v3.0.
See COPYING to see the full text.