-
-
Notifications
You must be signed in to change notification settings - Fork 8
/
README.yaml
82 lines (62 loc) · 3.21 KB
/
README.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#
# This is the canonical configuration for the `README.md`
# Run `make readme` to rebuild the `README.md`
#
# Name of this project
name: terraform-external-module-artifact
# License of this project
license: "APACHE2"
# Canonical GitHub repo
github_repo: cloudposse/terraform-external-module-artifact
# Badges to display
badges:
- name: Latest Release
image: https://img.shields.io/github/release/cloudposse/terraform-external-module-artifact.svg?style=for-the-badge
url: https://github.com/cloudposse/terraform-external-module-artifact/releases/latest
- name: Last Updated
image: https://img.shields.io/github/last-commit/cloudposse/terraform-external-module-artifact.svg?style=for-the-badge
url: https://github.com/cloudposse/terraform-external-module-artifact/commits
- name: Slack Community
image: https://slack.cloudposse.com/for-the-badge.svg
url: https://slack.cloudposse.com
# List any related terraform modules that this module may be used with or that this module depends on.
related:
- name: "terraform-null-smtp-mail"
description: "Terraform module to send transactional emails via an SMTP server (e.g. mailgun)"
url: "https://github.com/cloudposse/terraform-null-smtp-mail"
references:
- name: "curl"
description: "command line tool and library for transferring data with URLs"
url: "https://curl.haxx.se/"
# Short description of this project
description: |-
Terraform Module to fetch remote build artifacts via http(s) using `curl`.
introduction: |-
This terraform module uses the [`external`](https://www.terraform.io/docs/providers/external/data_source.html) data provider to execute `curl`, which downloads the file locally to the modules cache folder.
It's ideally suited for downloading public build artifacts (e.g. for use with Lambdas) associated with terraform modules.
We recommend using this pattern to avoid adding binary artifacts like `.zip` files to Git repositories.
**NOTE:** The term `external` refers to the primary Terraform [provider](https://www.terraform.io/docs/providers/external/data_source.html) used in this module.
## Dependencies
First make sure you have `curl` installed and that it exists in your `PATH` (E.g. `/usr/bin`).
# How to use this project
usage: |2-
For a complete example, see [examples/complete](examples/complete).
For automated tests of the complete example using [bats](https://github.com/bats-core/bats-core) and [Terratest](https://github.com/gruntwork-io/terratest) (which tests and deploys the example on AWS), see [test](test).
```hcl
module "external_module_artifact" {
source = "cloudposse/module-artifact/external"
# Cloud Posse recommends pinning every module to a specific version
# version = "x.x.x"
filename = "test.zip"
git_ref = "example"
module_name = "terraform-external-module-artifact"
module_path = path.module
}
```
__NOTE:__ Leave `git_ref` blank and it will be automatically computed from the `module_path`
__NOTE:__ We've published [an artifact](https://artifacts.cloudposse.com/terraform-external-module-artifact/example/test.zip) for purpose of testing this module
include:
- "docs/targets.md"
- "docs/terraform.md"
# Contributors to this project
contributors: []