google.cloud.gcp_appengine_firewall_rule module – Creates a GCP FirewallRule
Note
This module is part of the google.cloud collection (version 1.0.2).
You might already have this collection installed if you are using the ansible
package.
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 google.cloud
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: google.cloud.gcp_appengine_firewall_rule
.
Synopsis
A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.
Requirements
The below requirements are needed on the host that executes this module.
python >= 2.6
requests >= 2.18.4
google-auth >= 1.3.0
Parameters
Parameter |
Comments |
---|---|
The action to take if this rule matches. Some valid choices include: “UNSPECIFIED_ACTION”, “ALLOW”, “DENY” |
|
The type of credential used. Choices:
|
|
An optional string description of this rule. |
|
Specifies which Ansible environment you’re running this module within. This should not be set unless you know what you’re doing. This only alters the User Agent string for any API requests. |
|
A positive integer that defines the order of rule evaluation. Rules with the lowest priority are evaluated first. A default rule at priority Int32.MaxValue matches all IPv4 and IPv6 traffic when no previous rule matches. Only the action of this rule can be modified by the user. |
|
The Google Cloud Platform project to use. |
|
Array of scopes to be used |
|
The contents of a Service Account JSON file, either in a dictionary or as a JSON string that represents it. |
|
An optional service account email address if machineaccount is selected and the user does not wish to use the default email. |
|
The path of a Service Account JSON file if serviceaccount is selected as type. |
|
IP address or range, defined using CIDR notation, of requests that this rule applies to. |
|
Whether the given object should exist in GCP Choices:
|
Notes
Note
API Reference: https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.firewall.ingressRules
Official Documentation: https://cloud.google.com/appengine/docs/standard/python/creating-firewalls#creating_firewall_rules
for authentication, you can set service_account_file using the
gcp_service_account_file
env variable.for authentication, you can set service_account_contents using the
GCP_SERVICE_ACCOUNT_CONTENTS
env variable.For authentication, you can set service_account_email using the
GCP_SERVICE_ACCOUNT_EMAIL
env variable.For authentication, you can set auth_kind using the
GCP_AUTH_KIND
env variable.For authentication, you can set scopes using the
GCP_SCOPES
env variable.Environment variables values will only be used if the playbook values are not set.
The service_account_email and service_account_file options are mutually exclusive.
Examples
- name: create a firewall rule
google.cloud.gcp_appengine_firewall_rule:
priority: 1000
source_range: 10.0.0.0
action: ALLOW
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The action to take if this rule matches. Returned: success |
|
An optional string description of this rule. Returned: success |
|
A positive integer that defines the order of rule evaluation. Rules with the lowest priority are evaluated first. A default rule at priority Int32.MaxValue matches all IPv4 and IPv6 traffic when no previous rule matches. Only the action of this rule can be modified by the user. Returned: success |
|
IP address or range, defined using CIDR notation, of requests that this rule applies to. Returned: success |