Commit graph

48 commits

Author SHA1 Message Date
René Moser
1ed3bd9168
vultr: fix for unreliable API behavior (#45712) 2018-09-19 00:01:53 +02:00
Rémy Léone
eb882e4b01 Select image facts by region (#44965) 2018-09-06 11:57:43 -04:00
Rémy Léone
f6303ba5df Add user_data/cloud-init support for scaleway_compute module (#42697) 2018-09-04 19:56:05 -04:00
Rémy Léone
5cf9644003 Add an user facts module for Online (#44709) 2018-08-31 14:02:40 -04:00
Yanis Guenane
03e3a0b202 scaleway: Introduce scaleway_organization_facts module
Co-authored-by: Rémy Leone <rleone@online.net>
2018-08-24 18:15:45 +02:00
Yanis Guenane
809aa2d767 scaleway: Introduce scaleway_snapshot_facts module
Co-authored-by: Rémy Leone <rleone@online.net>
2018-08-24 18:15:45 +02:00
Yanis Guenane
2cfcfd6dc9 scaleway: Introduce scaleway_server_facts module
Co-authored-by: Rémy Leone <rleone@online.net>
2018-08-24 18:15:45 +02:00
Yanis Guenane
5c65ba62aa scaleway: Introduce scaleway_ip_facts module
Co-authored-by: Rémy Leone <rleone@online.net>
2018-08-24 18:15:45 +02:00
Yanis Guenane
d62f63b680 scaleway: Introduce scaleway_image_facts module
Co-authored-by: Rémy Leone <rleone@online.net>
2018-08-24 18:15:45 +02:00
Yanis Guenane
e4e6569cc9 scaleway: Introduce scaleway_volume_facts module
Co-authored-by: Rémy Leone <rleone@online.net>
2018-08-24 18:15:45 +02:00
Yanis Guenane
4bdec575c0 scaleway: Introduce scaleway_security_group_facts module
Co-authored-by: Rémy Leone <rleone@online.net>
2018-08-24 18:15:45 +02:00
Rémy Léone
8f9d55529d scaleway: Refactor modules 2018-08-24 18:15:45 +02:00
Yanis Guenane
0c65bcb23b Vultr: Introducing vultr_network_facts module (#43600)
This commit introduces a new module called vultr_network_facts.

This module aims to return the list of networks avaiable in Vultr.

Sample available here:

```
"vultr_network_facts": [
  {
    "date_created": "2018-08-02 11:18:49",
    "id": "net5b62e8991adfg",
    "name": "mynet",
    "region": "Amsterdam",
    "v4_subnet": "192.168.42.0",
    "v4_subnet_mask": 24
  }
]
```
2018-08-20 00:29:05 +02:00
Yanis Guenane
902c4a04c6 Vultr: Introducing vultr_network module (#43598)
This commit introduces a new module called vultr_network.

It allows a user to manage networks on the Vultr cloud.
2018-08-18 21:56:50 +02:00
Andreas Olsson
8691c7ced7 Add DS record type to cloudflare_dns module (#44349)
Cloudflare recently added support for DS records. They are used to
delegate DNSSEC trust to a subdomain.
2018-08-18 21:56:02 +02:00
Yanis Guenane
e635dc6969 Vultr: Introducing vultr_block_storage_facts module (#43218)
This commit introduces a new module called vultr_block_storage_facts.

This module aims to return the list of block storage volume avaiable
in Vultr.
2018-08-17 19:32:13 +02:00
Yanis Guenane
57497a490b Vultr: Introducing vultrr_block_storage module (#43202)
This commit introduces a new module called vultr_block_storage/

It allows a user to manage block storage volumes on the Vultr cloud.
2018-08-17 10:30:57 +02:00
Yanis Guenane
2556098479 Vultr: Introducing vultr_server_facts module (#43001)
This commit introduces a new module called vultr_server_facts.

This module aims to return the list of servers avaiable avaiable in
Vultr.

Sample available here:

```
"vultr_server_facts": [
  {
    "allowed_bandwidth_gb": 1000,
    "application": null,
    "auto_backup_enabled": false,
    "cost_per_month": 5.00,
    "current_bandwidth_gb": 0,
    "date_created": "2018-07-19 08:23:03",
    "default_password": "p4ssw0rd!",
    "disk": "Virtual 25 GB",
    "firewallgroup": null,
    "id": 17241096,
    "internal_ip": "",
    "kvm_url": "https://my.vultr.com/subs/vps/novnc/api.php?data=OFB...",
    "name": "ansibletest",
    "os": "CentOS 7 x64",
    "pending_charges": 0.01,
    "plan": "1024 MB RAM,25 GB SSD,1.00 TB BW",
    "power_status": "running",
    "ram": "1024 MB",
    "region": "Amsterdam",
    "server_state": "ok",
    "status": "active",
    "tag": "",
    "v4_gateway": "105.178.158.1",
    "v4_main_ip": "105.178.158.181",
    "v4_netmask": "255.255.254.0",
    "v6_main_ip": "",
    "v6_network": "",
    "v6_network_size": "",
    "v6_networks": [],
    "vcpu_count": 1
  }
]
2018-08-16 20:29:48 +02:00
Andreas Olsson
6d772874f9 Add SSHFP and TLSA records to cloudflare_dns module (#44011)
* Update cloudflare_dns account link

* Add SSHFP and TLSA records to cloudflare_dns module

These are record types which Cloudflare recently added support
for. They both go well together with DNSSEC.

Technically it's a bit of a simplification to use the hash_type
parameter for TLSA records. Yet, it fits with all the real world usage
I have seen, and it keeps the module from sprawling too much.

Related to #43803
2018-08-15 17:30:33 +02:00
René Moser
1fb0e11b56
vultr: rename prefix vr_to vultr_ (#43994)
* vultr: rename modules

* replace string vr_ with vultr_

* add deprecation warning

* fix sanity tests

* add changelog
2018-08-13 10:21:50 +02:00
Yanis Guenane
68e6587748 Vultr: Ensure facts works when no resource exists (#43603)
Vultr API is being inconsisten in what it returns. An empty list when no
resources exists, but a dict of dict when they do. The case needs to be
handled so the module do not fail. An extra test has been added.
2018-08-07 20:12:36 +02:00
Andreas Olsson
ab41fb9cd4 Fix cloudflare_dns proxied change detection (#43096)
Resolves #35190
2018-07-27 09:27:05 +05:30
Andreas Olsson
611928b658 Fix cloudflare_dns legacy test 2018-07-24 08:01:00 -07:00
Yanis Guenane
b1c60eaa83 Vultr: Introducing vr_startup_script_facts module (#43004)
This commit introduces a new module called vr_startup_script_facts.

This module aims to return the list of startup scripts avaiable
avaiable in Vultr.

Sample available here:

```
"vultr_startup_script_facts": [
  {
    "date_created": "2018-07-19 08:52:55",
    "date_modified": "2018-07-19 08:52:55",
    "id": 327140,
    "name": "myteststartupscript",
    "script": "#!/bin/bash\necho Hello World > /root/hello",
    "type": "boot"
  }
]
```
2018-07-20 20:32:32 +02:00
Yanis Guenane
1754f533b5 Vultr: Introducing vr_firewall_group_facts module (#42997)
This commit introduces a new module called vr_firewall_group_facts.

This module aims to return the list of firewall groups avaiable
avaiable in Vultr.

Sample available here:

```
"vultr_firewall_group_facts": [
  {
    "date_created": "2018-07-17 12:22:51",
    "date_modified": "2018-07-17 12:24:47",
    "description": "ansible-firewall-group",
    "id": "fb5a0876",
    "instance_count": 0,
    "max_rule_count": 50,
    "rule_count": 1
  }
]
```
2018-07-19 11:02:25 +02:00
Yanis Guenane
f6ca231729 Vultr: Introducing vr_dns_domain_facts module (#42994)
This commit introduces a new module called vr_dns_domain_facts.

This module aims to return the list of DNS domains avaiable avaiable in
Vultr.

Sample available here:

```
"vultr_dns_domain_facts": [
  {
    "date_created": "2018-07-19 07:31:14",
    "domain": "ansibletest.com",
  }
]
```
2018-07-19 10:13:24 +02:00
Yanis Guenane
2c4ba7a9e9 Vultr: Introducing vr_user_facts module (#42951)
This commit introduces a new module called vr_user_facts.

This module aims to return the list of user avaiable avaiable in Vultr.

Sample available here:

```
"vultr_user_facts": [
  {
    "acls": [],
    "api_enabled": "yes",
    "email": "mytestuser@example.com",
    "id": "a235b4f45e87f",
    "name": "mytestuser"
  }
]
```
2018-07-18 21:49:02 +02:00
Yanis Guenane
9a1185e57c Vultr: Introducing vr_plan_facts module (#42470)
This commit introduces a new module called vr_plan_facts.

This module aims to return the list of plan avaiable avaiable to use on
booted servers.

Sample available here:

```
"vultr_plan_facts": [
  {
    "available_locations": [
      1
    ],
    "bandwidth": 40.0,
    "bandwidth_gb": 40960,
    "disk": 110,
    "id": 118,
    "name": "32768 MB RAM,110 GB SSD,40.00 TB BW",
    "plan_type": "DEDICATED",
    "price_per_month": 240.0,
    "ram": 32768,
    "vcpu_count": 8,
    "windows": false
  }
]
```
2018-07-18 12:39:55 +02:00
Yanis Guenane
aef97c5ac4 Vultr: Introducing vr_os_facts module (#42473)
This commit introduces a new module called vr_os_facts.

This module aims to return the list of OSes avaiable avaiable to use to
boot servers.

Sample available here:

```
"vultr_os_facts": [
  {
    "arch": "i386",
    "family": "ubuntu",
    "id": 216,
    "name": "Ubuntu 16.04 i386",
    "windows": false
  }
]
```
2018-07-18 11:32:04 +02:00
Yanis Guenane
11fd20b5ea Vultr: Introducing vr_region_facts module (#42471)
This commit introduces a new module called vr_region_facts.

This module aims to return the list of region avaiable avaiable to use
where boot servers.

Sample available here:

```
"vultr_region_facts": [
    {
      "block_storage": false,
      "continent": "Europe",
      "country": "FR",
      "ddos_protection": true,
      "id": 24,
      "name": "Paris",
      "regioncode": "CDG",
      "state": ""
     }
  ]
```
2018-07-18 10:42:20 +02:00
Yanis Guenane
9b898ebc20 Vultr: Introducing vr_sshkey_facts module (#42615)
This commit introduces a new module called vr_sshkey_facts.

This module aims to return the list of SSH keys avaiable in Vultr.

Sample available here:

```
"vultr_sshkey_facts": [
   {
    "date_created": "2018-07-10 14:49:13",
    "id": "5b43c760d7d84",
    "name": "me@home",
    "ssh_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC+ZFQv3MyjtL1BMpSA0o0gIkzLVVC711rthT29hBNeORdNowQ7FSvVWUdAbTq00U7Xzak1ANIYLJyn+0r7olsdG4XEiUR0dqgC99kbT/QhY5mLe5lpl7JUjW9ctn00hNmt+TswpatCKWPNwdeAJT2ERynZaqPobENgewrwerqewqIVew7qFeZygxsPVn36EUr2Cdq7Nb7U0XFXh3x1p0v0+MbL4tiJwPlMAGvFTKIMt+EaA+AsRIxiOo9CMk5ZuOl9pT8h5vNuEOcvS0qx4v44EAD2VOsCVCcrPNMcpuSzZP8dRTGU9wRREAWXngD0Zq9YJMH38VTxHiskoBw1NnPz me@home"
  }
]
```
2018-07-18 09:53:58 +02:00
Milan Ilic
14f0fd9ab3 Add mode, owner_id and group_id options to one_vm (#40217)
Add `mode` option which sets permission mode of a VM in octet format
Add `owner_id` and `group_id` which set the ownership of a VM
Move the waiting for state at the end of the module, so it could fail faster if there is some error
tagged_instances will only be returned only if count_attributes and/or count_labels are used, as specified in the documentation
Update relevant tests
Add tests for mode, owner_id, group_id
2018-05-25 08:00:26 +02:00
Milan Ilic
18e7d814ef Add OpenNebula one_service module (#37829) 2018-05-24 13:32:45 +02:00
Jordan Borean
070a5557d1
always_run: removed deprecated always_run task option (#40470) 2018-05-23 07:10:36 +10:00
Matt Clay
c262dbfd30 Use https for links to ansible.com domains. 2018-04-23 11:33:56 -07:00
Milan Ilic
5b703a2a53 Add OpenNebula one_image_facts module (#38169)
* Add OpenNebula one_image_facts module

`one_image_facts` - module for gathering facts about OpenNebula images
Add integration tests

* Add an alias for ids
2018-04-04 22:53:31 +02:00
Milan Ilic
a73e2a924b Add OpenNebula one_image module (#37831) 2018-04-02 16:58:39 +02:00
Milan Ilic
0128022654 Add OpenNebula one_vm module (#37825)
* Add OpenNebula one_vm module

* `one_vm` - module for managing VM instances instances on OpenNebula

* Add integration tests
2018-03-28 23:32:03 +02:00
René Moser
24b8f36f1e
exo_dns_record: remove limitation for multiple records only for A type (#35173) 2018-02-05 22:40:02 +01:00
René Moser
d1ce8e9924
vultr: add integration tests (#35157) 2018-01-21 22:54:12 +01:00
René Moser
1a8bbcf146
vultr: new module vr_dns_record (#34423) 2018-01-19 09:34:23 +01:00
Matt Martz
57575d1cfa
Fix tests as filters #4 (#33930)
* Resolve newly added tests as filters

* Add code smell to test for ansible provided jinja tests as filters syntax

* Add docs for no-tests-as-filters code smell test

* Address tests as filters in new integration tests

* Address feedback

* Address feedback 2
2017-12-21 13:42:53 -06:00
Gaudenz Steinlin
a23da23491 cloudscale_floating_ip module (#33181)
* Refactor cloudscale API code

Move code common to all cloudscale cloud modules into a common base
class.

This is needed as a prepartion of the cloudscale_floating_ip module.

* cloudscale_floating_ip module

New cloud module to manage floating IPs on the cloudscale.ch IaaS
service.
2017-12-11 14:48:35 +00:00
Matt Martz
4fe08441be Deprecate tests used as filters (#32361)
* Warn on tests used as filters

* Update docs, add aliases for tests that fit more gramatically with test syntax

* Fix rst formatting

* Add successful filter, alias of success

* Remove renamed_deprecation, it was overkill

* Make directory alias for is_dir

* Update tests to use proper jinja test syntax

* Update additional documentation, living outside of YAML files, to reflect proper jinja test syntax

* Add conversion script, porting guide updates, and changelog updates

* Update newly added uses of tests as filters

* No underscore variable

* Convert recent tests as filter changes to win_stat

* Fix some changes related to rebasing a few integration tests

* Make tests_as_filters_warning explicitly accept the name of the test, instead of inferring the name

* Add test for tests_as_filters_warning

* Update tests as filters in newly added/modified tests

* Address recent changes to several integration tests

* Address recent changes in cs_vpc
2017-11-27 17:58:08 -05:00
Gaudenz Steinlin
4c94c6f9ba cloudscale_server: add timeout param and increase default timeout (#33088)
* Improve error message in cloudscale_server module

Fix punctuation and add the full contents of "info" to the output in
case of failed API calls. This is useful in case of connection timeouts
and other error conditions where there is no response body available.

* Increase timeouts in cloudscale_server module

Increase the timeouts to not fail in case the API calls take a bit
longer than usual. The default timeout of fetch_url is 10s which is
quite short. Increase it to 30s. The timeout for waiting for a server
change is increased as well as it calls the API in a loop. Therefore
this value should be larger than the API timeout.

* Send API parameters as JSON in cloudscale_server module

Use JSON to send the POST data to the API instead of an urlencoded
string. Urlencoding is not really a good match for some Python
datatypes.

This fixes an issue when submitting a list of SSH keys which did not get
translated properly.

* Fix typo in cloudscale_server documentation

* cloudscale_sever: Replace timeout const by api_timeout param

Replace the static TIMEOUT_API constant by a user configurable
api_timeout parameter. Also eliminate the TIMEOUT_WAIT constant by
2*api_timeout. This means that the timeout to wait for server changes is
always double the timeout for API calls.

* Use Debian 9 image for cloudscale_server tests
2017-11-22 10:30:31 +01:00
Toshio Kuratomi
c82cf791dd Add a code-smell test for smart quotes and remove smart quotes from all files 2017-09-18 16:49:16 -07:00
Matt Davis
035a17e8aa migrate azure_rm_vm tests to active (#30452) 2017-09-15 22:48:30 -07:00
Matt Clay
781fd7099a Reorganize integration tests:
- Move legacy tests into a separate directory.
- Reduce common dependencies between targets.
2017-09-14 07:14:30 -07:00