community.general.hwc_vpc_private_ip module – Creates a resource of Vpc/PrivateIP in Huawei Cloud

Note

This module is part of the community.general collection (version 9.4.0).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: community.general.hwc_vpc_private_ip.

New in community.general 0.2.0

Synopsis

  • vpc private ip management.

Requirements

The below requirements are needed on the host that executes this module.

  • keystoneauth1 >= 3.6.0

Parameters

Parameter

Comments

domain

string / required

The name of the Domain to scope to (Identity v3).

Currently only domain names are supported, and not domain IDs.

id

string

The ID of resource to be managed.

identity_endpoint

string / required

The Identity authentication URL.

ip_address

string

Specifies the target IP address. The value can be an available IP address in the subnet. If it is not specified, the system automatically assigns an IP address. Cannot be changed after creating the private ip.

password

string / required

The password to login with.

project

string / required

The name of the Tenant (Identity v2) or Project (Identity v3).

Currently only project names are supported, and not project IDs.

region

string

The region to which the project belongs.

state

string

Whether the given object should exist in Huawei Cloud.

Choices:

  • "present" ← (default)

  • "absent"

subnet_id

string / required

Specifies the ID of the subnet from which IP addresses are assigned. Cannot be changed after creating the private ip.

user

string / required

The user name to login with.

Currently only user names are supported, and not user IDs.

Attributes

Attribute

Support

Description

check_mode

Support: full

Can run in check_mode and return changed status prediction without modifying target.

diff_mode

Support: none

Will return details on what has changed (or possibly needs changing in check_mode), when in diff mode.

Notes

Note

  • If id option is provided, it takes precedence over subnet_id, ip_address for private ip selection.

  • subnet_id, ip_address are used for private ip selection. If more than one private ip with this options exists, execution is aborted.

  • No parameter support updating. If one of option is changed, the module will create a new resource.

  • For authentication, you can set identity_endpoint using the ANSIBLE_HWC_IDENTITY_ENDPOINT environment variable.

  • For authentication, you can set user using the ANSIBLE_HWC_USER environment variable.

  • For authentication, you can set password using the ANSIBLE_HWC_PASSWORD environment variable.

  • For authentication, you can set domain using the ANSIBLE_HWC_DOMAIN environment variable.

  • For authentication, you can set project using the ANSIBLE_HWC_PROJECT environment variable.

  • For authentication, you can set region using the ANSIBLE_HWC_REGION environment variable.

  • Environment variables values will only be used if the playbook values are not set.

Examples

# create a private ip
- name: Create vpc
  hwc_network_vpc:
    cidr: "192.168.100.0/24"
    name: "ansible_network_vpc_test"
  register: vpc
- name: Create subnet
  hwc_vpc_subnet:
    gateway_ip: "192.168.100.32"
    name: "ansible_network_subnet_test"
    dhcp_enable: true
    vpc_id: "{{ vpc.id }}"
    cidr: "192.168.100.0/26"
  register: subnet
- name: Create a private ip
  community.general.hwc_vpc_private_ip:
    subnet_id: "{{ subnet.id }}"
    ip_address: "192.168.100.33"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

ip_address

string

Specifies the target IP address. The value can be an available IP address in the subnet. If it is not specified, the system automatically assigns an IP address.

Returned: success

subnet_id

string

Specifies the ID of the subnet from which IP addresses are assigned.

Returned: success

Authors

  • Huawei Inc. (@huaweicloud)