gcp_spanner_instance – Creates a GCP Instance

From Get docs
Ansible/docs/2.8/modules/gcp spanner instance module


gcp_spanner_instance – Creates a GCP Instance

New in version 2.7.


Synopsis

  • An isolated set of Cloud Spanner resources on which databases can be hosted.

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 Choices/Defaults Comments

auth_kind

string / required

  • application
  • machineaccount
  • serviceaccount

The type of credential used.

config

- / required

The name of the instance's configuration (similar but not quite the same as a region) which defines defines the geographic placement and replication of your databases in this instance. It determines where your data is stored. Values are typically of the form `regional-europe-west1` , `us-central` etc.

In order to obtain a valid list please consult the [Configuration section of the docs](https://cloud.google.com/spanner/docs/instances.)

display_name

- / required

The descriptive name for this instance as it appears in UIs. Must be unique per project and between 4 and 30 characters in length.

labels

-

An object containing a list of "key": value pairs.

Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

name

- / required

A unique identifier for the instance, which cannot be changed after the instance is created. The name must be between 6 and 30 characters in length.

node_count

-

Default:

"1"

The number of nodes allocated to this instance.

project

string

The Google Cloud Platform project to use.

scopes

list

Array of scopes to be used.

service_account_contents

string

A string representing the contents of a Service Account JSON file.

This should not be passed in as a dictionary, but a string that has the exact contents of a service account json file (valid JSON)

service_account_email

string

An optional service account email address if machineaccount is selected and the user does not wish to use the default email.

service_account_file

path

The path of a Service Account JSON file if serviceaccount is selected as type.

state

-

  • present

  • absent

Whether the given object should exist in GCP



Notes

Note

  • API Reference: https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances
  • Official Documentation: https://cloud.google.com/spanner/
  • For authentication, you can set service_account_file using the GCP_SERVICE_ACCOUNT_FILE env variable.
  • For authentication, you can set service_account_email using the GCP_SERVICE_ACCOUNT_EMAIL env variable.
  • For authentication, you can set service_account_contents using the GCP_SERVICE_ACCOUNT_CONTENTS 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 instance
  gcp_spanner_instance:
    name: testinstance
    display_name: My Spanner Instance
    node_count: 2
    labels:
      cost_center: ti-1700004
    config: regional-us-central1
    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 Returned Description

config

string

success

The name of the instance's configuration (similar but not quite the same as a region) which defines defines the geographic placement and replication of your databases in this instance. It determines where your data is stored. Values are typically of the form `regional-europe-west1` , `us-central` etc.

In order to obtain a valid list please consult the [Configuration section of the docs](https://cloud.google.com/spanner/docs/instances.)


displayName

string

success

The descriptive name for this instance as it appears in UIs. Must be unique per project and between 4 and 30 characters in length.


labels

dictionary

success

An object containing a list of "key": value pairs.

Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.


name

string

success

A unique identifier for the instance, which cannot be changed after the instance is created. The name must be between 6 and 30 characters in length.


nodeCount

integer

success

The number of nodes allocated to this instance.





Status

Authors

  • Google Inc. (@googlecloudplatform)

Hint

If you notice any issues in this documentation you can edit this document to improve it.


© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/gcp_spanner_instance_module.html