delowan.googlecloud.gcp_spanner_database (1.0.2) — module

Creates a GCP Database

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 Cloud Spanner Database which is hosted on a Spanner instance.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create a instance
  google.cloud.gcp_spanner_instance:
    name: instance-database
    display_name: My Spanner Instance
    node_count: 2
    labels:
      cost_center: ti-1700004
    config: regional-us-central1
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: instance
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create a database
  google.cloud.gcp_spanner_database:
    name: webstore
    instance: "{{ instance }}"
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Inputs

    
name:
    description:
    - A unique identifier for the database, which cannot be changed after the instance
      is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
    required: true
    type: str

state:
    choices:
    - present
    - absent
    default: present
    description:
    - Whether the given object should exist in GCP
    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

instance:
    description:
    - The instance to create the database on.
    - 'This field represents a link to a Instance resource in GCP. It can be specified
      in two ways. First, you can place a dictionary with key ''name'' and value of your
      resource''s name Alternatively, you can add `register: name-of-resource` to a gcp_spanner_instance
      task and then set this instance field to "{{ name-of-resource }}"'
    required: true
    type: dict

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

extra_statements:
    description:
    - 'An optional list of DDL statements to run inside the newly created database. Statements
      can create tables, indexes, etc. These statements execute atomically with the creation
      of the database: if there is an error in any statement, the database is not created.'
    elements: str
    required: false
    type: list

encryption_config:
    description:
    - Encryption configuration for the database .
    required: false
    suboptions:
      kms_key_name:
        description:
        - Fully qualified name of the KMS key to use to encrypt this database. This key
          must exist in the same location as the Spanner Database.
        required: true
        type: str
    type: dict

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

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

encryptionConfig:
  contains:
    kmsKeyName:
      description:
      - Fully qualified name of the KMS key to use to encrypt this database. This
        key must exist in the same location as the Spanner Database.
      returned: success
      type: str
  description:
  - Encryption configuration for the database .
  returned: success
  type: complex
extraStatements:
  description:
  - 'An optional list of DDL statements to run inside the newly created database.
    Statements can create tables, indexes, etc. These statements execute atomically
    with the creation of the database: if there is an error in any statement, the
    database is not created.'
  returned: success
  type: list
instance:
  description:
  - The instance to create the database on.
  returned: success
  type: dict
name:
  description:
  - A unique identifier for the database, which cannot be changed after the instance
    is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
  returned: success
  type: str