--- plugin: linode.cloud.inventory access_token: "{{ lookup('env', 'LINODE_API_TOKEN') }}" # Use Linode labels as hostnames strict: false # Create groups keyed_groups: # Group by region: region_us_southeast - key: region prefix: region separator: "_" # Group by instance type: type_g6_standard_6 - key: type prefix: type separator: "_" # Group by status: status_running - key: status prefix: status separator: "_" # Group by tags: tag_k3s, tag_debian, etc. - key: tags prefix: tag separator: "_" # Set host variables compose: ansible_host: ipv4[0] ansible_user: phlux linode_id: id linode_region: region linode_type: type linode_status: status linode_tags: tags # Add convenience variables for your tags is_k3s: "'k3s' in (tags | default([]))" is_control_plane: "'control-plane' in (tags | default([]))" is_worker_node: "'worker-node' in (tags | default([]))" is_debian: "'Debian' in (tags | default([]))" is_ubuntu: "'Ubuntu' in (tags | default([]))" # Optional: Only include running instances filters: - status == "running" # Cache settings cache: true cache_plugin: memory cache_timeout: 300