0% found this document useful (0 votes)
17 views2 pages

Archive File Creation Guide

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)
17 views2 pages

Archive File Creation Guide

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

» 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 = "${[Link]}/[Link]"
output_path = "${[Link]}/files/[Link]"
}

# Archive multiple files.

data "archive_file" "dotfiles" {


type = "zip"
output_path = "${[Link]}/files/[Link]"

source {
content = "${data.template_file.[Link]}"
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