delowan.googlecloud.gcp_redis_instance (1.0.2) — module

Creates a GCP Instance

Authors: Google Inc. (@googlecloudplatform)

preview | supported by community

Install collection

Install with ansible-galaxy collection install delowan.googlecloud:==1.0.2


Add to requirements.yml

  collections:
    - name: delowan.googlecloud
      version: 1.0.2

Description

A Google Cloud Redis instance.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create a network
  google.cloud.gcp_compute_network:
    name: network-instance
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: network
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create a instance
  google.cloud.gcp_redis_instance:
    name: instance37
    tier: STANDARD_HA
    memory_size_gb: 1
    region: us-central1
    location_id: us-central1-a
    redis_version: REDIS_3_2
    display_name: Ansible Test Instance
    reserved_ip_range: 192.168.0.0/29
    labels:
      my_key: my_val
      other_key: other_val
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Inputs

    
name:
    description:
    - The ID of the instance or a fully qualified identifier for the instance.
    required: true
    type: str

tier:
    default: BASIC
    description:
    - 'The service tier of the instance. Must be one of these values: - BASIC: standalone
      instance - STANDARD_HA: highly available primary/replica instances .'
    - 'Some valid choices include: "BASIC", "STANDARD_HA"'
    required: false
    type: str

state:
    choices:
    - present
    - absent
    default: present
    description:
    - Whether the given object should exist in GCP
    type: str

labels:
    description:
    - Resource labels to represent user provided metadata.
    required: false
    type: dict

region:
    description:
    - The name of the Redis region of the instance.
    required: true
    type: str

scopes:
    description:
    - Array of scopes to be used
    elements: str
    type: list

project:
    description:
    - The Google Cloud Platform project to use.
    type: str

env_type:
    description:
    - 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.
    type: str

auth_kind:
    choices:
    - application
    - machineaccount
    - serviceaccount
    description:
    - The type of credential used.
    required: true
    type: str

location_id:
    description:
    - The zone where the instance will be provisioned. If not provided, the service will
      choose a zone for the instance. For STANDARD_HA tier, instances will be created
      across two zones for protection against zonal failures. If [alternativeLocationId]
      is also provided, it must be different from [locationId].
    required: false
    type: str

auth_enabled:
    default: 'false'
    description:
    - Optional. Indicates whether OSS Redis AUTH is enabled for the instance. If set to
      "true" AUTH is enabled on the instance.
    - Default value is "false" meaning AUTH is disabled.
    required: false
    type: bool

connect_mode:
    default: DIRECT_PEERING
    description:
    - The connection mode of the Redis instance.
    - 'Some valid choices include: "DIRECT_PEERING", "PRIVATE_SERVICE_ACCESS"'
    required: false
    type: str

display_name:
    description:
    - An arbitrary and optional user-provided name for the instance.
    required: false
    type: str

redis_configs:
    description:
    - Redis configuration parameters, according to U(http://redis.io/topics/config).
    - 'Please check Memorystore documentation for the list of supported parameters: U(https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs)
      .'
    required: false
    type: dict

redis_version:
    description:
    - 'The version of Redis software. If not provided, latest supported version will be
      used. Currently, the supported values are: - REDIS_5_0 for Redis 5.0 compatibility
      - REDIS_4_0 for Redis 4.0 compatibility - REDIS_3_2 for Redis 3.2 compatibility
      .'
    required: false
    type: str

memory_size_gb:
    description:
    - Redis memory size in GiB.
    required: true
    type: int

reserved_ip_range:
    description:
    - The CIDR range of internal addresses that are reserved for this instance. If not
      provided, the service will choose an unused /29 block, for example, 10.0.0.0/29
      or 192.168.0.0/29. Ranges must be unique and non-overlapping with existing subnets
      in an authorized network.
    required: false
    type: str

authorized_network:
    description:
    - The full name of the Google Compute Engine network to which the instance is connected.
      If left unspecified, the default network will be used.
    required: false
    type: str

service_account_file:
    description:
    - The path of a Service Account JSON file if serviceaccount is selected as type.
    type: path

service_account_email:
    description:
    - An optional service account email address if machineaccount is selected and the
      user does not wish to use the default email.
    type: str

alternative_location_id:
    description:
    - Only applicable to STANDARD_HA tier which protects the instance against zonal failures
      by provisioning it across two zones.
    - If provided, it must be a different zone from the one provided in [locationId].
    required: false
    type: str

transit_encryption_mode:
    default: DISABLED
    description:
    - The TLS mode of the Redis instance, If not provided, TLS is disabled for the instance.
    - '- SERVER_AUTHENTICATION: Client to Server traffic encryption enabled with server
      authentcation .'
    - 'Some valid choices include: "SERVER_AUTHENTICATION", "DISABLED"'
    required: false
    type: str

service_account_contents:
    description:
    - The contents of a Service Account JSON file, either in a dictionary or as a JSON
      string that represents it.
    type: jsonarg

Outputs

alternativeLocationId:
  description:
  - Only applicable to STANDARD_HA tier which protects the instance against zonal
    failures by provisioning it across two zones.
  - If provided, it must be a different zone from the one provided in [locationId].
  returned: success
  type: str
authEnabled:
  description:
  - Optional. Indicates whether OSS Redis AUTH is enabled for the instance. If set
    to "true" AUTH is enabled on the instance.
  - Default value is "false" meaning AUTH is disabled.
  returned: success
  type: bool
authorizedNetwork:
  description:
  - The full name of the Google Compute Engine network to which the instance is connected.
    If left unspecified, the default network will be used.
  returned: success
  type: str
connectMode:
  description:
  - The connection mode of the Redis instance.
  returned: success
  type: str
createTime:
  description:
  - The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
  returned: success
  type: str
currentLocationId:
  description:
  - The current zone where the Redis endpoint is placed.
  - For Basic Tier instances, this will always be the same as the [locationId] provided
    by the user at creation time. For Standard Tier instances, this can be either
    [locationId] or [alternativeLocationId] and can change after a failover event.
  returned: success
  type: str
displayName:
  description:
  - An arbitrary and optional user-provided name for the instance.
  returned: success
  type: str
host:
  description:
  - Hostname or IP address of the exposed Redis endpoint used by clients to connect
    to the service.
  returned: success
  type: str
labels:
  description:
  - Resource labels to represent user provided metadata.
  returned: success
  type: dict
locationId:
  description:
  - The zone where the instance will be provisioned. If not provided, the service
    will choose a zone for the instance. For STANDARD_HA tier, instances will be created
    across two zones for protection against zonal failures. If [alternativeLocationId]
    is also provided, it must be different from [locationId].
  returned: success
  type: str
memorySizeGb:
  description:
  - Redis memory size in GiB.
  returned: success
  type: int
name:
  description:
  - The ID of the instance or a fully qualified identifier for the instance.
  returned: success
  type: str
persistenceIamIdentity:
  description:
  - Output only. Cloud IAM identity used by import / export operations to transfer
    data to/from Cloud Storage. Format is "serviceAccount:".
  - The value may change over time for a given instance so should be checked before
    each import/export operation.
  returned: success
  type: str
port:
  description:
  - The port number of the exposed Redis endpoint.
  returned: success
  type: int
redisConfigs:
  description:
  - Redis configuration parameters, according to U(http://redis.io/topics/config).
  - 'Please check Memorystore documentation for the list of supported parameters:
    U(https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs)
    .'
  returned: success
  type: dict
redisVersion:
  description:
  - 'The version of Redis software. If not provided, latest supported version will
    be used. Currently, the supported values are: - REDIS_5_0 for Redis 5.0 compatibility
    - REDIS_4_0 for Redis 4.0 compatibility - REDIS_3_2 for Redis 3.2 compatibility
    .'
  returned: success
  type: str
region:
  description:
  - The name of the Redis region of the instance.
  returned: success
  type: str
reservedIpRange:
  description:
  - The CIDR range of internal addresses that are reserved for this instance. If not
    provided, the service will choose an unused /29 block, for example, 10.0.0.0/29
    or 192.168.0.0/29. Ranges must be unique and non-overlapping with existing subnets
    in an authorized network.
  returned: success
  type: str
serverCaCerts:
  contains:
    cert:
      description:
      - Serial number, as extracted from the certificate.
      returned: success
      type: str
    createTime:
      description:
      - The time when the certificate was created.
      returned: success
      type: str
    expireTime:
      description:
      - The time when the certificate expires.
      returned: success
      type: str
    serialNumber:
      description:
      - Serial number, as extracted from the certificate.
      returned: success
      type: str
    sha1Fingerprint:
      description:
      - Sha1 Fingerprint of the certificate.
      returned: success
      type: str
  description:
  - List of server CA certificates for the instance.
  returned: success
  type: complex
tier:
  description:
  - 'The service tier of the instance. Must be one of these values: - BASIC: standalone
    instance - STANDARD_HA: highly available primary/replica instances .'
  returned: success
  type: str
transitEncryptionMode:
  description:
  - The TLS mode of the Redis instance, If not provided, TLS is disabled for the instance.
  - '- SERVER_AUTHENTICATION: Client to Server traffic encryption enabled with server
    authentcation .'
  returned: success
  type: str