Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 89c3ebf053 | |||
| 3ac5ccda03 | |||
| 5b1645aca9 | |||
| bba6ca4db1 | |||
| 9bc5f72c13 | |||
| 6179a94d9b | |||
| 1a96098bb3 | |||
| bca7f1fe22 | |||
| 65b461b8fe | |||
| 2c4b934482 |
@ -572,7 +572,6 @@ releases:
|
||||
- win_copy-empty-dir.yaml
|
||||
- win_copy-paths.yaml
|
||||
- win_domain-cred.yaml
|
||||
- win_domain_membership-replace.yaml
|
||||
- win_dsc-validation.yaml
|
||||
- win_dsc-warning.yaml
|
||||
- win_file-hidden.yaml
|
||||
@ -1409,3 +1408,66 @@ releases:
|
||||
shell:
|
||||
- cmd
|
||||
release_date: '2019-04-04'
|
||||
2.8.0b1:
|
||||
codename: How Many More Times
|
||||
fragments:
|
||||
- 40366-modify-existing-volume.yml
|
||||
- 45355-mysql_user-fix-versions-compatibilities.yml
|
||||
- 49039-facts-xen-paravirt-cpuinfo.yaml
|
||||
- 54494-ec2-user-data.yaml
|
||||
- 54517-include-partition-table-postgresql-privs.yaml
|
||||
- 54633-openssl_pkcs12_idempotency_fixes.yaml
|
||||
- 54690-openssl_certificate-assertonly.yml
|
||||
- 54692-ec2_asg_fix_reading_properties.yml
|
||||
- 54799-ufw-default-direction.yml
|
||||
- 54974-rename-safeconfigparser-to-configparser.yaml
|
||||
- 55006-setup-is_chroot-btrfs.yaml
|
||||
- 55038-rename-results-key-vmware-guest.yml
|
||||
- 55083-univention-diff-UnboundLocalError.yaml
|
||||
- dnf-4.2.2-module-remove.yaml
|
||||
- facts-pkg-mgr-rhel.yaml
|
||||
- fibre_channel_wwn_fact_aix.yaml
|
||||
- fix_cache_assumption.yml
|
||||
- gcp-compute-add-image.yaml
|
||||
- include-no-swallow-error.yaml
|
||||
- jinja2_nested_undefined_getitem.yaml
|
||||
- paramiko-optional.yaml
|
||||
- redhat_subscription_use_strings_for_yum_plugin_configs.yaml
|
||||
- tower_job_launch-options.yaml
|
||||
- use-module_utils-six-in-contrib-inventory.yaml
|
||||
- user-read-passwd-when-local.yaml
|
||||
- v2.8.0b1_summary.yaml
|
||||
- yum-select-version.yml
|
||||
modules:
|
||||
- azure_rm_devtestlabcustomimage_facts
|
||||
- azure_rm_devtestlabenvironment_facts
|
||||
- azure_rm_devtestlabpolicy_facts
|
||||
- azure_rm_devtestlabschedule_facts
|
||||
- azure_rm_hdinsightcluster_facts
|
||||
- azure_rm_virtualnetworkgateway
|
||||
- cloudscale_server_group
|
||||
- docker_swarm_service_info
|
||||
- keycloak_group
|
||||
- oci_vcn
|
||||
- onyx_buffer_pool
|
||||
- onyx_vxlan
|
||||
- openssl_certificate_info
|
||||
- openssl_csr_info
|
||||
- openssl_privatekey_info
|
||||
- ovirt_role
|
||||
- podman_image
|
||||
- podman_image_info
|
||||
- postgresql_owner
|
||||
- postgresql_slot
|
||||
- vexata_volume
|
||||
- win_format
|
||||
- win_http_proxy
|
||||
- win_inet_proxy
|
||||
- xfs_quota
|
||||
plugins:
|
||||
connection:
|
||||
- vmware_tools
|
||||
inventory:
|
||||
- cloudscale
|
||||
- kubevirt
|
||||
release_date: '2019-04-15'
|
||||
|
||||
@ -5,6 +5,163 @@ Ansible 2.8 "How Many More Times" Release Notes
|
||||
.. contents:: Topics
|
||||
|
||||
|
||||
v2.8.0b1
|
||||
========
|
||||
|
||||
Release Summary
|
||||
---------------
|
||||
|
||||
| Release Date: 2019-04-15
|
||||
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
|
||||
|
||||
|
||||
Minor Changes
|
||||
-------------
|
||||
|
||||
- add support for extending volumes in os_volume, also add module support for check_mode and diff
|
||||
- ansible facts properly detect xen paravirt vs hvm
|
||||
- gather Fibre Channel WWNs fact on AIX (extends https://github.com/ansible/ansible/pull/37043)
|
||||
- gcp_compute - add the image field to map to disk source iamges in the configured zones bringing it in line with old gce inventory script data
|
||||
- jinja2 - accesses to keys/indices on an undefined value now return further undefined values rather than throwing an exception
|
||||
- openssl_certificate - the messages of the ``assertonly`` provider with respect to private key and CSR checking are now more precise.
|
||||
- openssl_pkcs12 - Fixed idempotency checks, the module will regenerate the pkcs12 file if any of the parameters differ from the ones in the file. The ``ca_certificates`` parameter has been renamed to ``other_certificates``.
|
||||
- paramiko is now optional. There is no compat package on certain platforms to worry about.
|
||||
- rename safeConfigParser to ConfigParser to suppress DeprecationWarning (The SafeConfigParser class has been renamed to ConfigParser in Python 3.2.)
|
||||
- use ansible.module_utils.six for all scripts in contrib/inventory
|
||||
|
||||
Bugfixes
|
||||
--------
|
||||
|
||||
- Fixed to handle arguments correctly even if inventory and credential variables are not specified (#25017,#37567)
|
||||
- Include partition tables in the ALL_IN_SCHEMA option for postgresql-privs (https://github.com/ansible/ansible/issues/54516)
|
||||
- The internal key `results` in vmware_guest_snapshot module return renamed to `snapshot_results`.
|
||||
- dnf - fix issue with dnf API calls to adapt to changes in upstream dnf version 4.2.2
|
||||
- ec2 - Only use user_data if the user has specified a value. This prevents setting the instance's user data to b'None'.
|
||||
- ec2_asg - Fix error where ASG dict has no launch config or launch template key
|
||||
- facts - ensure that the default package manager for RHEL < 8 is yum, and dnf for newer
|
||||
- include_role - Don't swallow errors when processing included files/roles (https://github.com/ansible/ansible/issues/54786)
|
||||
- mysql_user: fix compatibility issues with various MySQL/MariaDB versions
|
||||
- redhat_subscription - For compatibility using the redhat_subscription module on hosts set to use a python 3 interpreter, use string values when updating yum plugin configuration files.
|
||||
- rely on method existing vs loosely related _cache attribute, also fix data persistence issue on plugin reuse across sources.
|
||||
- setup - properly detect is_chroot on Btrfs (https://github.com/ansible/ansible/issues/55006)
|
||||
- udm_dns_record - Fix issues when state is absent with undefined variable diff at the module return.
|
||||
- udm_dns_zone - Fix issues when state is absent with undefined variable diff at the module return.
|
||||
- udm_group - Fix issues when state is absent with undefined variable diff at the module return.
|
||||
- udm_share - Fix issues when state is absent with undefined variable diff at the module return.
|
||||
- udm_user - Fix issues when state is absent with undefined variable diff at the module return.
|
||||
- ufw - when ``default`` is specified, ``direction`` does not needs to be specified. This was accidentally introduced in Ansible 2.7.8.
|
||||
- user - fix a bug when checking if a local user account exists on a system using directory authentication (https://github.com/ansible/ansible/issues/50947, https://github.com/ansible/ansible/issues/38206)
|
||||
- yum allows comparison operators like '>=' for selecting package version
|
||||
|
||||
New Plugins
|
||||
-----------
|
||||
|
||||
Connection
|
||||
~~~~~~~~~~
|
||||
|
||||
- vmware_tools - Execute tasks inside a VM via VMware Tools
|
||||
|
||||
Inventory
|
||||
~~~~~~~~~
|
||||
|
||||
- cloudscale - cloudscale.ch inventory source
|
||||
- kubevirt - KubeVirt inventory source
|
||||
|
||||
New Modules
|
||||
-----------
|
||||
|
||||
Cloud
|
||||
~~~~~
|
||||
|
||||
azure
|
||||
^^^^^
|
||||
|
||||
- azure_rm_devtestlabcustomimage_facts - Get Azure DevTest Lab Custom Image facts.
|
||||
- azure_rm_devtestlabenvironment_facts - Get Azure Environment facts.
|
||||
- azure_rm_devtestlabpolicy_facts - Get Azure DTL Policy facts.
|
||||
- azure_rm_devtestlabschedule_facts - Get Azure Schedule facts.
|
||||
- azure_rm_hdinsightcluster_facts - Get Azure HDInsight Cluster facts.
|
||||
- azure_rm_virtualnetworkgateway - Manage Azure virtual network gateways.
|
||||
|
||||
cloudscale
|
||||
^^^^^^^^^^
|
||||
|
||||
- cloudscale_server_group - Manages server groups on the cloudscale.ch IaaS service
|
||||
|
||||
docker
|
||||
^^^^^^
|
||||
|
||||
- docker_swarm_service_info - Retrieves information about docker services from a Swarm Manager
|
||||
|
||||
oracle
|
||||
^^^^^^
|
||||
|
||||
- oci_vcn - Manage Virtual Cloud Networks(VCN) in OCI
|
||||
|
||||
ovirt
|
||||
^^^^^
|
||||
|
||||
- ovirt_role - Module to manage roles in oVirt/RHV
|
||||
|
||||
podman
|
||||
^^^^^^
|
||||
|
||||
- podman_image - Pull images for use by podman
|
||||
- podman_image_info - Gather info about images using podman
|
||||
|
||||
Crypto
|
||||
~~~~~~
|
||||
|
||||
- openssl_certificate_info - Provide information of OpenSSL X.509 certificates
|
||||
- openssl_csr_info - Provide information of OpenSSL Certificate Signing Requests (CSR)
|
||||
- openssl_privatekey_info - Provide information for OpenSSL private keys
|
||||
|
||||
Database
|
||||
~~~~~~~~
|
||||
|
||||
postgresql
|
||||
^^^^^^^^^^
|
||||
|
||||
- postgresql_owner - Change an owner of PostgreSQL database object
|
||||
- postgresql_slot - Add or remove slots from a PostgreSQL database
|
||||
|
||||
Identity
|
||||
~~~~~~~~
|
||||
|
||||
keycloak
|
||||
^^^^^^^^
|
||||
|
||||
- keycloak_group - Allows administration of Keycloak groups via Keycloak API
|
||||
|
||||
Network
|
||||
~~~~~~~
|
||||
|
||||
onyx
|
||||
^^^^
|
||||
|
||||
- onyx_buffer_pool - Configures Buffer Pool
|
||||
- onyx_vxlan - Configures Vxlan
|
||||
|
||||
Storage
|
||||
~~~~~~~
|
||||
|
||||
vexata
|
||||
^^^^^^
|
||||
|
||||
- vexata_volume - Manage volumes on Vexata VX100 storage arrays
|
||||
|
||||
System
|
||||
~~~~~~
|
||||
|
||||
- xfs_quota - Manage quotas on XFS filesystems
|
||||
|
||||
Windows
|
||||
~~~~~~~
|
||||
|
||||
- win_format - Formats an existing volume or a new volume on an existing partition on Windows
|
||||
- win_http_proxy - Manages proxy settings for WinHTTP
|
||||
- win_inet_proxy - Manages proxy settings for WinINet and Internet Explorer
|
||||
|
||||
v2.8.0a1
|
||||
========
|
||||
|
||||
@ -296,7 +453,6 @@ Expression.
|
||||
- win_chocolatey - Added the ability to pin a package using the ``pinned`` option - https://github.com/ansible/ansible/issues/38526
|
||||
- win_chocolatey - added the allow_multiple module option to allow side by side installs of the same package
|
||||
- win_chocolatey - support bootstrapping Chocolatey from other URLs with any PS script that ends with ``.ps1``, originally this script had to be ``install.ps1``
|
||||
- win_domain_membership - will now fail if an existing AD object for the host exists and ``allow_existing_computer_account=no`` - https://github.com/ansible/ansible/pull/53542
|
||||
- win_dsc - Display the warnings produced by the DSC engine for better troubleshooting - https://github.com/ansible/ansible/issues/51543
|
||||
- win_dsc - The Verbose logs will be returned when running with ``-vvv``.
|
||||
- win_dsc - The module invocation and possible options will be displayed when running with ``-vvv``.
|
||||
@ -1225,7 +1381,7 @@ Net Tools
|
||||
netbox
|
||||
^^^^^^
|
||||
|
||||
- netbox_device - Create or delete devices within Netbox
|
||||
- netbox_device - Create, update or delete devices within Netbox
|
||||
- netbox_interface - Creates or removes interfaces from Netbox
|
||||
- netbox_ip_address - Creates or removes IP addresses from Netbox
|
||||
- netbox_prefix - Creates or removes prefixes from Netbox
|
||||
|
||||
3
changelogs/fragments/v2.8.0b1_summary.yaml
Normal file
3
changelogs/fragments/v2.8.0b1_summary.yaml
Normal file
@ -0,0 +1,3 @@
|
||||
release_summary: |
|
||||
| Release Date: 2019-04-15
|
||||
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
|
||||
@ -156,7 +156,7 @@
|
||||
<div class="DocSiteProduct-logoText">
|
||||
Ansible
|
||||
<div class="DocSiteProduct-CurrentVersion" align="right">
|
||||
devel
|
||||
2.8
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -8,7 +8,7 @@ This section discusses the behavioral changes between Ansible 2.7 and Ansible 2.
|
||||
|
||||
It is intended to assist in updating your playbooks, plugins and other parts of your Ansible infrastructure so they will work with this version of Ansible.
|
||||
|
||||
We suggest you read this page along with `Ansible Changelog for 2.8 <https://github.com/ansible/ansible/blob/devel/changelogs/CHANGELOG-v2.8.rst>`_ to understand what updates you may need to make.
|
||||
We suggest you read this page along with `Ansible Changelog for 2.8 <https://github.com/ansible/ansible/blob/stable-2.8/changelogs/CHANGELOG-v2.8.rst>`_ to understand what updates you may need to make.
|
||||
|
||||
This document is part of a collection on porting. The complete list of porting guides can be found at :ref:`porting guides <porting_guides>`.
|
||||
|
||||
|
||||
@ -8,11 +8,18 @@ __metaclass__ = type
|
||||
import re
|
||||
from os.path import exists, getsize
|
||||
from socket import gaierror
|
||||
from ssl import SSLEOFError, SSLError
|
||||
from ssl import SSLError
|
||||
from time import sleep
|
||||
import urllib3
|
||||
import traceback
|
||||
|
||||
URLLIB3_IMP_ERR = None
|
||||
try:
|
||||
import urllib3
|
||||
HAS_URLLIB3 = True
|
||||
except ImportError:
|
||||
URLLIB3_IMP_ER = traceback.format_exc()
|
||||
HAS_URLLIB3 = False
|
||||
|
||||
REQUESTS_IMP_ERR = None
|
||||
try:
|
||||
import requests
|
||||
@ -290,7 +297,7 @@ class Connection(ConnectionBase):
|
||||
if self.validate_certs:
|
||||
connect = SmartConnect
|
||||
else:
|
||||
if self.get_option("silence_tls_warnings"):
|
||||
if HAS_URLLIB3 and self.get_option("silence_tls_warnings"):
|
||||
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
|
||||
connect = SmartConnectNoSSL
|
||||
|
||||
@ -298,7 +305,7 @@ class Connection(ConnectionBase):
|
||||
self._si = connect(**connection_kwargs)
|
||||
except SSLError:
|
||||
raise AnsibleError("SSL Error: Certificate verification failed.")
|
||||
except (gaierror, SSLEOFError):
|
||||
except (gaierror):
|
||||
raise AnsibleError("Connection Error: Unable to connect to '%s'." % to_native(connection_kwargs["host"]))
|
||||
except vim.fault.InvalidLogin as e:
|
||||
raise AnsibleError("Connection Login Error: %s" % to_native(e.msg))
|
||||
|
||||
@ -19,6 +19,6 @@
|
||||
from __future__ import (absolute_import, division, print_function)
|
||||
__metaclass__ = type
|
||||
|
||||
__version__ = '2.8.0a1.post0'
|
||||
__version__ = '2.8.0b1'
|
||||
__author__ = 'Ansible, Inc.'
|
||||
__codename__ = 'How Many More Times'
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
cloud/azure
|
||||
shippable/azure/group5
|
||||
shippable/azure/group2
|
||||
destructive
|
||||
azure_rm_autoscale
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
cloud/azure
|
||||
shippable/azure/group4
|
||||
shippable/azure/group2
|
||||
destructive
|
||||
azure_rm_cdnprofile_facts
|
||||
azure_rm_cdnendpoint
|
||||
azure_rm_cdnendpoint
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
cloud/azure
|
||||
destructive
|
||||
shippable/azure/group8
|
||||
shippable/azure/group3
|
||||
azure_rm_mariadbserver_facts
|
||||
azure_rm_mariadbdatabase
|
||||
azure_rm_mariadbdatabase_facts
|
||||
|
||||
@ -1,3 +1,3 @@
|
||||
cloud/azure
|
||||
shippable/azure/group4
|
||||
shippable/azure/group3
|
||||
destructive
|
||||
|
||||
@ -1,3 +1,3 @@
|
||||
cloud/azure
|
||||
shippable/azure/group4
|
||||
shippable/azure/group6
|
||||
destructive
|
||||
|
||||
@ -1,82 +1,120 @@
|
||||
# FIXME: needs minimal tests (check mode?) that can run quickly, VNG creation takes > 20min
|
||||
|
||||
- name: Prepare random number
|
||||
set_fact:
|
||||
vnetname: "vnet{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
|
||||
vngname: "vng{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
|
||||
|
||||
- name: Create virtual network
|
||||
azure_rm_virtualnetwork:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vnetname }}"
|
||||
address_prefixes: "10.0.0.0/16"
|
||||
- name: Create virtual network gateway without bgp settings (check mode)
|
||||
check_mode: yes
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vngname }}"
|
||||
ip_configurations:
|
||||
- name: testipconfig
|
||||
private_ip_allocation_method: Dynamic
|
||||
public_ip_address_name: testPublicIP
|
||||
virtual_network: "{{ vnetname }}"
|
||||
tags:
|
||||
common: "xyz"
|
||||
register: output
|
||||
|
||||
- name: Add subnet
|
||||
azure_rm_subnet:
|
||||
- assert:
|
||||
that: output.changed
|
||||
|
||||
- name: long-running virtualnetworkgateway tests [run with `--tags long_run,untagged` to enable]
|
||||
tags: [long_run, never]
|
||||
block:
|
||||
- name: Create virtual network
|
||||
azure_rm_virtualnetwork:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vnetname }}"
|
||||
address_prefixes: "10.0.0.0/16"
|
||||
|
||||
- name: Add subnet
|
||||
azure_rm_subnet:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: GatewaySubnet
|
||||
address_prefix: "10.0.2.0/24"
|
||||
virtual_network: "{{ vnetname }}"
|
||||
|
||||
- name: Create public IP address
|
||||
azure_rm_publicipaddress:
|
||||
resource_group: "{{ resource_group }}"
|
||||
allocation_method: Dynamic
|
||||
name: testPublicIP
|
||||
|
||||
- name: Create virtual network gateway without bgp settings
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: GatewaySubnet
|
||||
address_prefix: "10.0.2.0/24"
|
||||
name: "{{ vngname }}"
|
||||
ip_configurations:
|
||||
- name: testipconfig
|
||||
private_ip_allocation_method: Dynamic
|
||||
public_ip_address_name: testPublicIP
|
||||
virtual_network: "{{ vnetname }}"
|
||||
tags:
|
||||
common: "xyz"
|
||||
register: output
|
||||
|
||||
- name: Create public IP address
|
||||
azure_rm_publicipaddress:
|
||||
- assert:
|
||||
that: output.changed
|
||||
|
||||
- name: Create virtual network gateway without bgp settings
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
allocation_method: Dynamic
|
||||
name: testPublicIP
|
||||
name: "{{ vngname }}"
|
||||
ip_configurations:
|
||||
- name: testipconfig
|
||||
private_ip_allocation_method: Dynamic
|
||||
public_ip_address_name: testPublicIP
|
||||
virtual_network: "{{ vnetname }}"
|
||||
tags:
|
||||
common: "xyz"
|
||||
register: output
|
||||
|
||||
- name: Create virtual network gateway without bgp settings
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vngname }}"
|
||||
ip_configurations:
|
||||
- name: testipconfig
|
||||
private_ip_allocation_method: Dynamic
|
||||
public_ip_address_name: testPublicIP
|
||||
virtual_network: "{{ vnetname }}"
|
||||
tags:
|
||||
common: "xyz"
|
||||
register: output
|
||||
- assert:
|
||||
that: output.changed
|
||||
|
||||
- assert:
|
||||
that: output.changed
|
||||
- name: Create virtual network gateway without bgp settings - idempotent
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vngname }}"
|
||||
ip_configurations:
|
||||
- name: testipconfig
|
||||
private_ip_allocation_method: Dynamic
|
||||
public_ip_address_name: testPublicIP
|
||||
virtual_network: "{{ vnetname }}"
|
||||
tags:
|
||||
common: "xyz"
|
||||
register: output
|
||||
|
||||
- name: Create virtual network gateway without bgp settings - idempotent
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vngname }}"
|
||||
ip_configurations:
|
||||
- name: testipconfig
|
||||
private_ip_allocation_method: Dynamic
|
||||
public_ip_address_name: testPublicIP
|
||||
virtual_network: "{{ vnetname }}"
|
||||
tags:
|
||||
common: "xyz"
|
||||
register: output
|
||||
- assert:
|
||||
that: not output.changed
|
||||
|
||||
- assert:
|
||||
that: not output.changed
|
||||
- name: Update virtual network gateway
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vngname }}"
|
||||
ip_configurations:
|
||||
- name: testipconfig
|
||||
private_ip_allocation_method: Dynamic
|
||||
public_ip_address_name: testPublicIP
|
||||
virtual_network: "{{ vnetname }}"
|
||||
tags:
|
||||
common: "mno"
|
||||
register: output
|
||||
- assert:
|
||||
that: output.changed
|
||||
|
||||
- name: Update virtual network gateway
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vngname }}"
|
||||
ip_configurations:
|
||||
- name: testipconfig
|
||||
private_ip_allocation_method: Dynamic
|
||||
public_ip_address_name: testPublicIP
|
||||
virtual_network: "{{ vnetname }}"
|
||||
tags:
|
||||
common: "mno"
|
||||
register: output
|
||||
- assert:
|
||||
that: output.changed
|
||||
|
||||
- name: Delete virtual network gateway
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vngname }}"
|
||||
state: absent
|
||||
register: output
|
||||
- assert:
|
||||
that: output.changed
|
||||
- name: Delete virtual network gateway
|
||||
azure_rm_virtualnetworkgateway:
|
||||
resource_group: "{{ resource_group }}"
|
||||
name: "{{ vngname }}"
|
||||
state: absent
|
||||
register: output
|
||||
- assert:
|
||||
that: output.changed
|
||||
|
||||
- name: Delete virtual network gateway - idempotent
|
||||
azure_rm_virtualnetworkgateway:
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
cloud/hcloud
|
||||
shippable/hcloud/group1
|
||||
disabled
|
||||
|
||||
@ -301,7 +301,7 @@ class AnsibleCoreCI(object):
|
||||
)
|
||||
|
||||
if self.connection.password:
|
||||
display.sensitive.add(self.connection.password)
|
||||
display.sensitive.add(str(self.connection.password))
|
||||
|
||||
status = 'running' if self.connection.running else 'starting'
|
||||
|
||||
@ -453,7 +453,7 @@ class AnsibleCoreCI(object):
|
||||
:type config: dict[str, str]
|
||||
:rtype: bool
|
||||
"""
|
||||
self.instance_id = config['instance_id']
|
||||
self.instance_id = str(config['instance_id'])
|
||||
self.endpoint = config['endpoint']
|
||||
self.started = True
|
||||
|
||||
|
||||
@ -321,7 +321,8 @@ def get_merged_commit(args, commit):
|
||||
# This should only fail for pull requests where the commit does not exist.
|
||||
# Merge runs would fail much earlier when attempting to checkout the commit.
|
||||
raise ApplicationError('Commit %s was not found:\n\n%s\n\n'
|
||||
'The commit was likely removed by a force push between job creation and execution.\n'
|
||||
'GitHub may not have fully replicated the commit across their infrastructure.\n'
|
||||
'It is also possible the commit was removed by a force push between job creation and execution.\n'
|
||||
'Find the latest run for the pull request and restart failed jobs as needed.'
|
||||
% (commit, ex.stderr.strip()))
|
||||
|
||||
|
||||
@ -1241,7 +1241,7 @@ def command_integration_role(args, target, start_at_task, test_dir, inventory_pa
|
||||
hosts=hosts,
|
||||
gather_facts=gather_facts,
|
||||
vars_files=[
|
||||
test_env.vars_file,
|
||||
os.path.relpath(test_env.vars_file, test_env.integration_dir),
|
||||
],
|
||||
roles=[
|
||||
target.name,
|
||||
@ -1262,7 +1262,7 @@ def command_integration_role(args, target, start_at_task, test_dir, inventory_pa
|
||||
|
||||
display.info('>>> Playbook: %s\n%s' % (filename, playbook.strip()), verbosity=3)
|
||||
|
||||
cmd = ['ansible-playbook', filename, '-i', test_env.inventory_path]
|
||||
cmd = ['ansible-playbook', filename, '-i', os.path.relpath(test_env.inventory_path, test_env.integration_dir)]
|
||||
|
||||
if start_at_task:
|
||||
cmd += ['--start-at-task', start_at_task]
|
||||
|
||||
@ -125,15 +125,12 @@ def integration_test_environment(args, target, inventory_path):
|
||||
if args.no_temp_workdir or 'no/temp_workdir/' in target.aliases:
|
||||
display.warning('Disabling the temp work dir is a temporary debugging feature that may be removed in the future without notice.')
|
||||
|
||||
integration_dir = 'test/integration'
|
||||
integration_dir = os.path.abspath('test/integration')
|
||||
inventory_path = os.path.abspath(inventory_path)
|
||||
ansible_config = os.path.join(integration_dir, '%s.cfg' % args.command)
|
||||
vars_file = os.path.join(integration_dir, vars_file)
|
||||
|
||||
inventory_name = os.path.relpath(inventory_path, integration_dir)
|
||||
|
||||
if '/' in inventory_name:
|
||||
inventory_name = inventory_path
|
||||
|
||||
yield IntegrationEnvironment(integration_dir, inventory_name, ansible_config, vars_file)
|
||||
yield IntegrationEnvironment(integration_dir, inventory_path, ansible_config, vars_file)
|
||||
return
|
||||
|
||||
root_temp_dir = os.path.expanduser('~/.ansible/test/tmp')
|
||||
@ -216,7 +213,10 @@ def integration_test_environment(args, target, inventory_path):
|
||||
make_dirs(os.path.dirname(file_dst))
|
||||
shutil.copy2(file_src, file_dst)
|
||||
|
||||
yield IntegrationEnvironment(integration_dir, inventory_name, ansible_config, vars_file)
|
||||
inventory_path = os.path.join(integration_dir, inventory_name)
|
||||
vars_file = os.path.join(integration_dir, vars_file)
|
||||
|
||||
yield IntegrationEnvironment(integration_dir, inventory_path, ansible_config, vars_file)
|
||||
finally:
|
||||
if not args.explain:
|
||||
shutil.rmtree(temp_dir)
|
||||
|
||||
Reference in New Issue
Block a user