0% found this document useful (0 votes)
70 views

Archive - File: Example Usage

The archive_file data source generates an archive file from a file or directory of files. It supports zip archives and allows specifying a single file, multiple files, or entire directory as the source. The output is written to the specified output_path. Source can be specified via source_file, source_dir, or individually via source blocks. The data source exports attributes about the output archive file like size and checksums.

Uploaded by

justin jazz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
70 views

Archive - File: Example Usage

The archive_file data source generates an archive file from a file or directory of files. It supports zip archives and allows specifying a single file, multiple files, or entire directory as the source. The output is written to the specified output_path. Source can be specified via source_file, source_dir, or individually via source blocks. The data source exports attributes about the output archive file like size and checksums.

Uploaded by

justin jazz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

» archive_file

Generates an archive from content, a file, or directory of files.

» Example Usage

# Archive a single file.

data "archive_file" "init" {


type = "zip"
source_file = "${path.module}/init.tpl"
output_path = "${path.module}/files/init.zip"
}

# Archive multiple files.

data "archive_file" "dotfiles" {


type = "zip"
output_path = "${path.module}/files/dotfiles.zip"

source {
content = "${data.template_file.vimrc.rendered}"
filename = ".vimrc"
}

source {
content = "${data.template_file.ssh_config.rendered}"
filename = ".ssh/config"
}
}
Note regarding symbolic links: Due to a bug, the archive_file data source
does not currently create proper zip archives when the source includes symbolic
links (also known as ”symlinks”). Please see GitHub Issue #6 for more details
and workaround options. This message will be removed when the bug is fixed.

» Argument Reference

The following arguments are supported:


NOTE: One of source, source_content_filename (with source_content),
source_file, or source_dir must be specified.
• type - (Required) The type of archive to generate. NOTE: zip is sup-
ported.

1
• output_path - (Required) The output of the archive file.
• source_content - (Optional) Add only this content to the archive with
source_content_filename as the filename.
• source_content_filename - (Optional) Set this as the filename when
using source_content.
• source_file - (Optional) Package this file into the archive.
• source_dir - (Optional) Package entire contents of this directory into the
archive.
• source - (Optional) Specifies attributes of a single source file to include
into the archive.
The source block supports the following:
• content - (Required) Add this content to the archive with filename as
the filename.
• filename - (Required) Set this as the filename when declaring a source.

» Attributes Reference

The following attributes are exported:


• output_size - The size of the output archive file.
• output_sha - The SHA1 checksum of output archive file.
• output_base64sha256 - The base64-encoded SHA256 checksum of output
archive file.
• output_md5 - The MD5 checksum of output archive file.

You might also like