terraform/website/source/docs/providers/atlas/r/artifact.html.markdown

69 lines
1.9 KiB
Markdown
Raw Normal View History

2014-12-08 03:42:27 +01:00
---
layout: "atlas"
page_title: "Atlas: atlas_artifact"
sidebar_current: "docs-atlas-resource-artifact"
description: |-
Provides access to deployment artifacts managed by Atlas. This can
be used to dynamically configure instantiation and provisioning
of resources.
---
# atlas\_artifact
Provides access to deployment artifacts managed by Atlas. This can
be used to dynamically configure instantiation and provisioning
of resources.
## Example Usage
```
# Read the AMI
resource "atlas_artifact" "web" {
name = "hashicorp/web"
type = "aws.ami"
metadata {
arch = "386"
}
}
# Start our instance with the dynamic ami value
resource "aws_instance" "app" {
ami = "${atlas_artifact.web.id}"
...
}
```
## Argument Reference
The following arguments are supported:
* `name` - (Required) Name of the artifact in Atlas. This is given
in slug format like "organization/artifact".
* `type` - (Required) The type of artifact to query for.
* `version` - (Optional) By default, if no version is provided the
latest version of the artifact is used. Providing a version can
be used to pin a dependency.
* `metadata_keys` - (Optional) If given, only an artifact containing
the given keys will be returned. This is used to disambiguate when
multiple potential artifacts match. An example is "aws" to filter
on an AMI.
* `metadata` - (Optional) If given, only an artifact matching the
metadata filters will be returned. This is used to disambiguate when
multiple potential artifacts match. An example is "arch" = "386" to
filter on architecture.
## Attributes Reference
The following attributes are exported:
* `version` - The matching version of the artifact
* `id` - The ID of the artifact. This could be an AMI ID, GCE Image ID, etc.
* `file_url` - For artifacts that are binaries, this is a download path.
* `metadata_full` - Contains the full metadata of the artifact.