Project: Chef InSpec (Provisioning / Security & Compliance)
File: google_redis_instance.md

+++ title = "googleredisinstance resource" draft = false gh_repo = "inspec" platform = "gcp" [menu] [menu.inspec] title = "googleredisinstance" identifier = "inspec/resources/gcp/googleredisinstance.md googleredisinstance resource" parent = "inspec/resources/gcp" +++ A `googleredisinstance` is used to test a Google Instance resource This resource has beta fields available. To retrieve these fields, include `beta: true` in the constructor for the resource ```ruby describe googleredisinstance(project: 'chef-gcp-inspec', region: 'us-central1', name: 'my-redis-cache') do it { should exist } its('tier') { should cmp 'STANDARD_HA' } its('memorysizegb') { should cmp '1' } its('alternativelocationid') { should cmp 'us-central1-f' } its('redisversion') { should cmp 'REDIS3_2' } its('display_name') { should cmp 'InSpec test instance' } its('reservediprange') { should cmp '192.168.0.0/29' } its('labels') { should include('key' => 'value') } end describe googleredisinstance(project: 'chef-gcp-inspec', region: 'us-central1', name: 'nonexistent') do it { should_not exist } end ``` Properties that can be accessed from the `googleredisinstance` resource: `alternativelocationid` : 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]. `authorized_network` : The full name of the Google Compute Engine network to which the instance is connected. If left unspecified, the default network will be used. `connect_mode` : The connection mode of the Redis instance. Possible values: DIRECT_PEERING PRIVATESERVICEACCESS `create_time` : The time the instance was created in RFC3339 UTC"Zulu" format, accurate to nanoseconds. `currentlocationid` : 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. `display_name` : An arbitrary and optional user-provided name for the instance. `host` : Hostname or IP address of the exposed Redis endpoint used by clients to connect to the service. `labels` : Resource labels to represent user provided metadata. `redis_configs` : Redis configuration parameters, according to http://redis.io/topics/config. Please check Memorystore documentation for the list of supported parameters: https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs `location_id` : 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]. `name` : The ID of the instance or a fully qualified identifier for the instance. `memorysizegb` : Redis memory size in GiB. `port` : The port number of the exposed Redis endpoint. `redis_version` : The version of Redis software. If not provided, latest supported version will be used. Currently, the supported values are: - REDIS40 for Redis 4.0 compatibility - REDIS32 for Redis 3.2 compatibility `reservediprange` : 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. `tier` : The service tier of the instance. Must be one of these values: - BASIC: standalone instance - STANDARD_HA: highly available primary/replica instances Possible values: BASIC STANDARD_HA `region` : The name of the Redis region of the instance.