feat: add support for vultr api v2 (#14773)

Co-authored-by: Dhruv Kelawala <dhruvrk2000@gmail.com>
This commit is contained in:
Dan Guido 2025-08-03 16:56:40 -04:00 committed by GitHub
parent c495307027
commit bb8db7d877
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -12,17 +12,23 @@
set_fact:
algo_vultr_config: "{{ vultr_config | default(_vultr_config.user_input) | default(lookup('env','VULTR_API_CONFIG'), true) }}"
- name: Set the Vultr API Key as a fact
set_fact:
vultr_api_key: "{{ lookup('ansible.builtin.ini', 'key', section='default', file=algo_vultr_config) }}"
- name: Get regions
uri:
url: https://api.vultr.com/v1/regions/list
url: https://api.vultr.com/v2/regions
method: GET
status_code: 200
headers:
Authorization: "Bearer {{ vultr_api_key }}"
register: _vultr_regions
- name: Format regions
set_fact:
regions: >-
[ {% for k, v in _vultr_regions.json.items() %}
[ {% for v in _vultr_regions.json['regions'] %}
{{ v }}{% if not loop.last %},{% endif %}
{% endfor %} ]
@ -32,17 +38,14 @@
- name: Set default region
set_fact:
default_region: >-
{% for r in vultr_regions %}
{%- if r['DCID'] == "1" %}{{ loop.index }}{% endif %}
{%- endfor %}
default_region: 1
- pause:
prompt: |
What region should the server be located in?
(https://www.vultr.com/locations/):
{% for r in vultr_regions %}
{{ loop.index }}. {{ r['name'] }} ({{ r['regioncode'] | lower }})
{{ loop.index }}. {{ r['city'] }} ({{ r['id'] }})
{% endfor %}
Enter the number of your desired region
@ -54,5 +57,5 @@
set_fact:
algo_vultr_region: >-
{% if region is defined %}{{ region }}
{%- elif _algo_region.user_input %}{{ vultr_regions[_algo_region.user_input | int -1 ]['regioncode'] | lower }}
{%- else %}{{ vultr_regions[default_region | int - 1]['regioncode'] | lower }}{% endif %}
{%- elif _algo_region.user_input %}{{ vultr_regions[_algo_region.user_input | int -1 ]['id'] }}
{%- else %}{{ vultr_regions[default_region | int - 1]['id'] }}{% endif %}