gcp_forwarding_rule – Create, Update or Destroy a Forwarding_Rule.¶
New in version 2.4.
Synopsis¶
- Create, Update or Destroy a Forwarding_Rule. See https://cloud.google.com/compute/docs/load-balancing/http/target-proxies for an overview. More details on the Global Forwarding_Rule API can be found at https://cloud.google.com/compute/docs/reference/latest/globalForwardingRules More details on the Forwarding Rules API can be found at https://cloud.google.com/compute/docs/reference/latest/forwardingRules
Requirements¶
The below requirements are needed on the host that executes this module.
- python >= 2.6
- google-api-python-client >= 1.6.2
- google-auth >= 0.9.0
- google-auth-httplib2 >= 0.0.2
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
address
-
|
IPv4 or named IP address. Must be of the same scope (regional, global). Reserved addresses can (and probably should) be used for global forwarding rules. You may reserve IPs from the console or via the gce_eip module.
|
|
forwarding_rule_name
-
/ required
|
Name of the Forwarding_Rule.
|
|
port_range
-
|
For global forwarding rules, must be set to 80 or 8080 for TargetHttpProxy, and 443 for TargetHttpsProxy or TargetSslProxy.
|
|
protocol
-
|
For global forwarding rules, TCP, UDP, ESP, AH, SCTP or ICMP. Default is TCP.
|
|
region
-
|
The region for this forwarding rule. Currently, only 'global' is supported.
|
|
state
-
/ required
|
|
The state of the Forwarding Rule. 'present' or 'absent'
|
target
-
|
Target resource for forwarding rule. For global proxy, this is a Global TargetProxy resource. Required for external load balancing (including Global load balancing)
|
Notes¶
Note
- Currently only supports global forwarding rules. As such, Load Balancing Scheme is always EXTERNAL.
Examples¶
- name: Create Minimum GLOBAL Forwarding_Rule
gcp_forwarding_rule:
service_account_email: "{{ service_account_email }}"
credentials_file: "{{ credentials_file }}"
project_id: "{{ project_id }}"
forwarding_rule_name: my-forwarding_rule
protocol: TCP
port_range: 80
region: global
target: my-target-proxy
state: present
- name: Create Forwarding_Rule w/reserved static address
gcp_forwarding_rule:
service_account_email: "{{ service_account_email }}"
credentials_file: "{{ credentials_file }}"
project_id: "{{ project_id }}"
forwarding_rule_name: my-forwarding_rule
protocol: TCP
port_range: 80
address: my-reserved-static-address-name
region: global
target: my-target-proxy
state: present
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
forwarding_rule
dictionary
|
Always. Refer to GCP documentation for detailed field descriptions. |
GCP Forwarding_Rule dictionary
Sample:
{'name': 'my-forwarding_rule', 'target': '...'}
|
forwarding_rule_name
string
|
Always |
Name of the Forwarding_Rule
Sample:
my-target-proxy
|
region
boolean
|
Always |
Region for Forwarding Rule.
Sample:
True
|
state
string
|
Always. |
state of the Forwarding_Rule
Sample:
present
|
Status¶
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors¶
- Tom Melendez (@supertom) <tom@supertom.com>
Hint
If you notice any issues in this documentation you can edit this document to improve it.