2016-05-15 01:49:10 +02:00
|
|
|
---
|
|
|
|
layout: "random"
|
|
|
|
page_title: "Random: random_shuffle"
|
|
|
|
sidebar_current: "docs-random-resource-shuffle"
|
|
|
|
description: |-
|
|
|
|
Produces a random permutation of a given list.
|
|
|
|
---
|
|
|
|
|
|
|
|
# random\_shuffle
|
|
|
|
|
|
|
|
The resource `random_shuffle` generates a random permutation of a list
|
|
|
|
of strings given as an argument.
|
|
|
|
|
|
|
|
## Example Usage
|
|
|
|
|
2017-04-08 01:48:08 +02:00
|
|
|
```hcl
|
2016-05-15 01:49:10 +02:00
|
|
|
resource "random_shuffle" "az" {
|
|
|
|
input = ["us-west-1a", "us-west-1c", "us-west-1d", "us-west-1e"]
|
|
|
|
result_count = 2
|
|
|
|
}
|
|
|
|
|
|
|
|
resource "aws_elb" "example" {
|
|
|
|
# Place the ELB in any two of the given availability zones, selected
|
|
|
|
# at random.
|
|
|
|
availability_zones = ["${random_shuffle.az.result}"]
|
|
|
|
|
|
|
|
# ... and other aws_elb arguments ...
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
## Argument Reference
|
|
|
|
|
|
|
|
The following arguments are supported:
|
|
|
|
|
|
|
|
* `input` - (Required) The list of strings to shuffle.
|
|
|
|
|
|
|
|
* `result_count` - (Optional) The number of results to return. Defaults to
|
|
|
|
the number of items in the `input` list. If fewer items are requested,
|
|
|
|
some elements will be excluded from the result. If more items are requested,
|
|
|
|
items will be repeated in the result but not more frequently than the number
|
|
|
|
of items in the input list.
|
|
|
|
|
|
|
|
* `keepers` - (Optional) Arbitrary map of values that, when changed, will
|
|
|
|
trigger a new id to be generated. See
|
|
|
|
[the main provider documentation](../index.html) for more information.
|
|
|
|
|
|
|
|
* `seed` - (Optional) Arbitrary string with which to seed the random number
|
|
|
|
generator, in order to produce less-volatile permutations of the list.
|
|
|
|
**Important:** Even with an identical seed, it is not guaranteed that the
|
|
|
|
same permutation will be produced across different versions of Terraform.
|
|
|
|
This argument causes the result to be *less volatile*, but not fixed for
|
|
|
|
all time.
|
|
|
|
|
|
|
|
## Attributes Reference
|
|
|
|
|
|
|
|
The following attributes are exported:
|
|
|
|
|
|
|
|
* `result` - Random permutation of the list of strings given in `input`.
|
|
|
|
|