From 18511bab05de494a5a9c4db9b2dd7adc4d2ce0fa Mon Sep 17 00:00:00 2001 From: Jeff Escalante Date: Wed, 1 Apr 2020 17:12:30 -0400 Subject: [PATCH] bunch more broken link fixes --- website/_redirects | 2 ++ website/pages/docs/builders/outscale/bsu.mdx | 2 +- website/pages/docs/builders/outscale/bsusurrogate.mdx | 6 +++--- website/pages/docs/builders/outscale/bsuvolume.mdx | 6 +++--- website/pages/docs/builders/outscale/chroot.mdx | 4 ++-- website/pages/docs/builders/vagrant.mdx | 2 +- website/pages/docs/environment-variables.mdx | 2 +- .../pages/docs/from-1.5/functions/collection/flatten.mdx | 4 ++-- .../pages/docs/from-1.5/functions/collection/setproduct.mdx | 4 ++-- .../pages/docs/from-1.5/functions/encoding/base64decode.mdx | 2 -- .../pages/docs/from-1.5/functions/encoding/base64encode.mdx | 2 -- .../pages/docs/from-1.5/functions/encoding/csvdecode.mdx | 2 +- website/pages/docs/from-1.5/functions/file/abspath.mdx | 2 +- website/pages/docs/from-1.5/functions/file/file.mdx | 2 +- website/pages/docs/from-1.5/functions/file/fileset.mdx | 2 +- website/pages/docs/from-1.5/functions/ipnet/cidrsubnets.mdx | 2 +- website/pages/docs/from-1.5/functions/string/format.mdx | 2 +- website/pages/docs/from-1.5/syntax-json.mdx | 4 +--- website/pages/docs/from-1.5/variables.mdx | 4 ++-- website/pages/docs/post-processors/vagrant.mdx | 2 +- website/pages/docs/provisioners/chef-client.mdx | 2 +- website/pages/docs/provisioners/file.mdx | 2 +- website/pages/docs/templates/builders.mdx | 2 +- website/pages/docs/templates/communicator.mdx | 2 +- 24 files changed, 31 insertions(+), 35 deletions(-) diff --git a/website/_redirects b/website/_redirects index 90ed463a2..794e5a884 100644 --- a/website/_redirects +++ b/website/_redirects @@ -30,6 +30,8 @@ /docs/basics/terminology /docs/terminology 301! /docs/basics/terminology.html /docs/terminology 301! +/docs/other/* /docs/:splat 200 + /docs/configuration/from-1.5/* /docs/from-1.5/:splat 200 /docs/configuration/from-1.5/*/overview /docs/from-1.5/:splat 200 /docs/configuration/from-1.5/*/overview.html /docs/from-1.5/:splat 200 diff --git a/website/pages/docs/builders/outscale/bsu.mdx b/website/pages/docs/builders/outscale/bsu.mdx index 90a3d1967..f19f54fd5 100644 --- a/website/pages/docs/builders/outscale/bsu.mdx +++ b/website/pages/docs/builders/outscale/bsu.mdx @@ -198,7 +198,7 @@ builder. This will fail unless _exactly_ one OMIS is returned. In the above example, `most_recent` will cause this to succeed by selecting the newest image. -- `ssh_keypair_name` (string) - If specified, this is the key that will be used for SSH with the machine. The key must match a key pair name loaded up into Outscale. By default, this is blank, and Packer will generate a temporary keypair unless [`ssh_password`](/docs/templates/communicator#ssh_password) is used. [`ssh_private_key_file`](/docs/templates/communicator#ssh_private_key_file) or `ssh_agent_auth` must be specified when `ssh_keypair_name` is utilized. +- `ssh_keypair_name` (string) - If specified, this is the key that will be used for SSH with the machine. The key must match a key pair name loaded up into Outscale. By default, this is blank, and Packer will generate a temporary keypair unless [`ssh_password`](/docs/communicators/ssh#ssh_password) is used. [`ssh_private_key_file`](/docs/communicators/ssh#ssh_private_key_file) or `ssh_agent_auth` must be specified when `ssh_keypair_name` is utilized. - `ssh_agent_auth` (boolean) - If true, the local SSH agent will be used to authenticate connections to the source VM. No temporary keypair will be created, and the values of `ssh_password` and `ssh_private_key_file` will be ignored. To use this option with a key pair already configured in the source OMI, leave the `ssh_keypair_name` blank. To associate an existing key pair in Outscale with the source VM, set the `ssh_keypair_name` field to the name of the key pair. diff --git a/website/pages/docs/builders/outscale/bsusurrogate.mdx b/website/pages/docs/builders/outscale/bsusurrogate.mdx index ce8176c36..c06cf0203 100644 --- a/website/pages/docs/builders/outscale/bsusurrogate.mdx +++ b/website/pages/docs/builders/outscale/bsusurrogate.mdx @@ -36,7 +36,7 @@ builder. ### Required: -- `access_key` (string) - The access key used to communicate with OUTSCALE. [Learn how to set this](outscale#authentication) +- `access_key` (string) - The access key used to communicate with OUTSCALE. [Learn how to set this](/docs/builders/outscale#authentication) - `omi_name` (string) - The name of the resulting OMIS that will appear when managing OMIs in the Outscale console or via APIs. This must be unique. To help make this unique, use a function like `timestamp` (see [template engine](/docs/templates/engine) for more info). @@ -44,7 +44,7 @@ builder. - `region` (string) - The name of the region, such as `us-east-1`, in which to launch the Outscale VM to create the OMI. -- `secret_key` (string) - The secret key used to communicate with Outscale. [Learn how to set this](outscale#authentication) +- `secret_key` (string) - The secret key used to communicate with Outscale. [Learn how to set this](/docs/builders/outscale#authentication) - `source_omi` (string) - The initial OMI used as a base for the newly created machine. `source_omi_filter` may be used instead to populate this automatically. @@ -206,7 +206,7 @@ builder. This will fail unless _exactly_ one OMIS is returned. In the above example, `most_recent` will cause this to succeed by selecting the newest image. -- `ssh_keypair_name` (string) - If specified, this is the key that will be used for SSH with the machine. The key must match a key pair name loaded up into Outscale. By default, this is blank, and Packer will generate a temporary keypair unless [`ssh_password`](/docs/templates/communicator#ssh_password) is used. [`ssh_private_key_file`](/docs/templates/communicator#ssh_private_key_file) or `ssh_agent_auth` must be specified when `ssh_keypair_name` is utilized. +- `ssh_keypair_name` (string) - If specified, this is the key that will be used for SSH with the machine. The key must match a key pair name loaded up into Outscale. By default, this is blank, and Packer will generate a temporary keypair unless [`ssh_password`](/docs/communicators/ssh#ssh_password) is used. [`ssh_private_key_file`](/docs/communicators/ssh#ssh_private_key_file) or `ssh_agent_auth` must be specified when `ssh_keypair_name` is utilized. - `ssh_agent_auth` (boolean) - If true, the local SSH agent will be used to authenticate connections to the source VM. No temporary keypair will be created, and the values of `ssh_password` and `ssh_private_key_file` will be ignored. To use this option with a key pair already configured in the source OMI, leave the `ssh_keypair_name` blank. To associate an existing key pair in Outscale with the source VM, set the `ssh_keypair_name` field to the name of the key pair. diff --git a/website/pages/docs/builders/outscale/bsuvolume.mdx b/website/pages/docs/builders/outscale/bsuvolume.mdx index 121af7fc7..b55715639 100644 --- a/website/pages/docs/builders/outscale/bsuvolume.mdx +++ b/website/pages/docs/builders/outscale/bsuvolume.mdx @@ -42,13 +42,13 @@ builder. ### Required: -- `access_key` (string) - The access key used to communicate with OUTSCALE. [Learn how to set this](outscale#authentication) +- `access_key` (string) - The access key used to communicate with OUTSCALE. [Learn how to set this](/docs/builders/outscale#authentication) - `vm_type` (string) - The Outscale VM type to use while building the OMI, such as `t2.small`. - `region` (string) - The name of the region, such as `us-east-1`, in which to launch the Outscale VM to create the OMI. -- `secret_key` (string) - The secret key used to communicate with Outscale. [Learn how to set this](outscale#authentication) +- `secret_key` (string) - The secret key used to communicate with Outscale. [Learn how to set this](/docs/builders/outscale#authentication) - `source_omi` (string) - The initial OMI used as a base for the newly created machine. `source_omi_filter` may be used instead to populate this automatically. @@ -161,7 +161,7 @@ builder. This will fail unless _exactly_ one OMIS is returned. In the above example, `most_recent` will cause this to succeed by selecting the newest image. -- `ssh_keypair_name` (string) - If specified, this is the key that will be used for SSH with the machine. The key must match a key pair name loaded up into Outscale. By default, this is blank, and Packer will generate a temporary keypair unless [`ssh_password`](/docs/templates/communicator#ssh_password) is used. [`ssh_private_key_file`](/docs/templates/communicator#ssh_private_key_file) or `ssh_agent_auth` must be specified when `ssh_keypair_name` is utilized. +- `ssh_keypair_name` (string) - If specified, this is the key that will be used for SSH with the machine. The key must match a key pair name loaded up into Outscale. By default, this is blank, and Packer will generate a temporary keypair unless [`ssh_password`](/docs/communicators/ssh#ssh_password) is used. [`ssh_private_key_file`](/docs/communicators/ssh#ssh_private_key_file) or `ssh_agent_auth` must be specified when `ssh_keypair_name` is utilized. - `ssh_interface` (string) - One of `public_ip`, `private_ip`, `public_dns`, or `private_dns`. If set, either the public IP address, private IP address, public DNS name or private DNS name will used as the host for SSH. The default behaviour if inside a Net is to use the public IP address if available, otherwise the private IP address will be used. If not in a Net the public DNS name will be used. Also works for WinRM. diff --git a/website/pages/docs/builders/outscale/chroot.mdx b/website/pages/docs/builders/outscale/chroot.mdx index 392a6242a..363701e79 100644 --- a/website/pages/docs/builders/outscale/chroot.mdx +++ b/website/pages/docs/builders/outscale/chroot.mdx @@ -62,11 +62,11 @@ each category, the available configuration keys are alphabetized. ### Required: -- `access_key` (string) - The access key used to communicate with OUTSCALE. [Learn how to set this](outscale#authentication) +- `access_key` (string) - The access key used to communicate with OUTSCALE. [Learn how to set this](/docs/builders/outscale#authentication) - `omi_name` (string) - The name of the resulting OMIS that will appear when managing OMIs in the Outscale console or via APIs. This must be unique. To help make this unique, use a function like `timestamp` (see [template engine](/docs/templates/engine) for more info). -- `secret_key` (string) - The secret key used to communicate with Outscale. [Learn how to set this](outscale#authentication) +- `secret_key` (string) - The secret key used to communicate with Outscale. [Learn how to set this](/docs/builders/outscale#authentication) - `source_omi` (string) - The initial OMI used as a base for the newly created machine. `source_omi_filter` may be used instead to populate this automatically. diff --git a/website/pages/docs/builders/vagrant.mdx b/website/pages/docs/builders/vagrant.mdx index b87e14b70..e3d278d83 100644 --- a/website/pages/docs/builders/vagrant.mdx +++ b/website/pages/docs/builders/vagrant.mdx @@ -69,7 +69,7 @@ the Compress post-processor will not work with this builder. to Vagrant, this is the name to give it. If left blank, will default to "packer\_" plus your buildname. -- `provider` (string) - The vagrant [provider](docs/post-processors/vagrant). +- `provider` (string) - The vagrant [provider](/docs/post-processors/vagrant). This parameter is required when `source_path` have more than one provider, or when using `vagrant-cloud` post-processor. Defaults to unset. diff --git a/website/pages/docs/environment-variables.mdx b/website/pages/docs/environment-variables.mdx index b1b35547e..35113b074 100644 --- a/website/pages/docs/environment-variables.mdx +++ b/website/pages/docs/environment-variables.mdx @@ -15,7 +15,7 @@ each can be found below: - `PACKER_CONFIG` - The location of the core configuration file. The format of the configuration file is basic JSON. See the [core configuration - page](/docs/other/core-configuration). + page](/docs/core-configuration). - `PACKER_CONFIG_DIR` - The location of the `.packer.d` config directory diff --git a/website/pages/docs/from-1.5/functions/collection/flatten.mdx b/website/pages/docs/from-1.5/functions/collection/flatten.mdx index 75de28f7f..0dbb024b7 100644 --- a/website/pages/docs/from-1.5/functions/collection/flatten.mdx +++ b/website/pages/docs/from-1.5/functions/collection/flatten.mdx @@ -31,9 +31,9 @@ Indirectly-nested lists, such as those in maps, are _not_ flattened. ## Flattening nested structures for `for_each` The -[resource `for_each`](/docs/configuration/resources#for_each-multiple-resource-instances-defined-by-a-map-or-set-of-strings) +[resource `for_each`](https://www.terraform.io/docs/configuration/resources.html#for_each-multiple-resource-instances-defined-by-a-map-or-set-of-strings) and -[`dynamic` block](/docs/configuration/expressions#dynamic-blocks) +[`dynamic` block](/docs/from-1.5/expressions#dynamic-blocks) language features both require a collection value that has one element for each repetition. diff --git a/website/pages/docs/from-1.5/functions/collection/setproduct.mdx b/website/pages/docs/from-1.5/functions/collection/setproduct.mdx index c4a7010ca..4297027fb 100644 --- a/website/pages/docs/from-1.5/functions/collection/setproduct.mdx +++ b/website/pages/docs/from-1.5/functions/collection/setproduct.mdx @@ -118,9 +118,9 @@ elements all have a consistent type: ## Finding combinations for `for_each` The -[resource `for_each`](/docs/configuration/resources#for_each-multiple-resource-instances-defined-by-a-map-or-set-of-strings) +[resource `for_each`](https://www.terraform.io/docs/configuration/resources.html#for_each-multiple-resource-instances-defined-by-a-map-or-set-of-strings) and -[`dynamic` block](/docs/configuration/expressions#dynamic-blocks) +[`dynamic` block](/docs/from-1.5/expressions/#dynamic-blocks) language features both require a collection value that has one element for each repetition. diff --git a/website/pages/docs/from-1.5/functions/encoding/base64decode.mdx b/website/pages/docs/from-1.5/functions/encoding/base64decode.mdx index 7a6ecafc0..cb8b4f60e 100644 --- a/website/pages/docs/from-1.5/functions/encoding/base64decode.mdx +++ b/website/pages/docs/from-1.5/functions/encoding/base64decode.mdx @@ -37,5 +37,3 @@ Hello World - [`base64encode`](/docs/from-1.5/functions/encoding/base64encode) performs the opposite operation, encoding the UTF-8 bytes for a string as Base64. -- [`base64gzip`](/docs/from-1.5/functions/encoding/base64gzip) applies gzip compression to a string - and returns the result with Base64 encoding. diff --git a/website/pages/docs/from-1.5/functions/encoding/base64encode.mdx b/website/pages/docs/from-1.5/functions/encoding/base64encode.mdx index fc5f50baa..b5464b3ca 100644 --- a/website/pages/docs/from-1.5/functions/encoding/base64encode.mdx +++ b/website/pages/docs/from-1.5/functions/encoding/base64encode.mdx @@ -38,5 +38,3 @@ SGVsbG8gV29ybGQ= - [`base64decode`](/docs/from-1.5/functions/encoding/base64decode) performs the opposite operation, decoding Base64 data and interpreting it as a UTF-8 string. -- [`base64gzip`](/docs/from-1.5/functions/encoding/base64gzip) applies gzip compression to a string - and returns the result with Base64 encoding all in one operation. diff --git a/website/pages/docs/from-1.5/functions/encoding/csvdecode.mdx b/website/pages/docs/from-1.5/functions/encoding/csvdecode.mdx index ec1c5be85..34209fce8 100644 --- a/website/pages/docs/from-1.5/functions/encoding/csvdecode.mdx +++ b/website/pages/docs/from-1.5/functions/encoding/csvdecode.mdx @@ -42,7 +42,7 @@ number of fields, or this function will produce an error. ## Use with the `for_each` meta-argument You can use the result of `csvdecode` with -[the `for_each` meta-argument](/docs/configuration/resources#for_each-multiple-resource-instances-defined-by-a-map-or-set-of-strings) +[the `for_each` meta-argument](https://www.terraform.io/docs/configuration/resources.html#for_each-multiple-resource-instances-defined-by-a-map-or-set-of-strings) to describe a collection of similar objects whose differences are described by the rows in the given CSV file. diff --git a/website/pages/docs/from-1.5/functions/file/abspath.mdx b/website/pages/docs/from-1.5/functions/file/abspath.mdx index 006222b9e..11ba89444 100644 --- a/website/pages/docs/from-1.5/functions/file/abspath.mdx +++ b/website/pages/docs/from-1.5/functions/file/abspath.mdx @@ -15,7 +15,7 @@ with the current working directory. Referring directly to filesystem paths in resource arguments may cause spurious diffs if the same configuration is applied from multiple systems or on different host operating systems. We recommend using filesystem paths only -for transient values, such as the argument to [`file`](./file) (where +for transient values, such as the argument to [`file`](/docs/from-1.5/functions/file) (where only the contents are then stored) or in `connection` and `provisioner` blocks. ## Examples diff --git a/website/pages/docs/from-1.5/functions/file/file.mdx b/website/pages/docs/from-1.5/functions/file/file.mdx index e98b56487..e87a18959 100644 --- a/website/pages/docs/from-1.5/functions/file/file.mdx +++ b/website/pages/docs/from-1.5/functions/file/file.mdx @@ -28,7 +28,7 @@ dependency graph, so this function cannot be used with files that are generated dynamically during a Packer operation. We do not recommend using dynamic local files in Packer configurations, but in rare situations where this is necessary you can use -[the `local_file` data source](/docs/providers/local/d/file) +[the `local_file` data source](https://www.terraform.io/docs/providers/local/d/file.html) to read files while respecting resource dependencies. ## Examples diff --git a/website/pages/docs/from-1.5/functions/file/fileset.mdx b/website/pages/docs/from-1.5/functions/file/fileset.mdx index a8a870016..7c401b45d 100644 --- a/website/pages/docs/from-1.5/functions/file/fileset.mdx +++ b/website/pages/docs/from-1.5/functions/file/fileset.mdx @@ -65,7 +65,7 @@ before Packer takes any actions. ``` A common use of `fileset` is to create one resource instance per matched file, using -[the `for_each` meta-argument](/docs/configuration/resources#for_each-multiple-resource-instances-defined-by-a-map-or-set-of-strings): +[the `for_each` meta-argument](https://www.terraform.io/docs/configuration/resources.html#for_each-multiple-resource-instances-defined-by-a-map-or-set-of-strings): ```hcl resource "example_thing" "example" { diff --git a/website/pages/docs/from-1.5/functions/ipnet/cidrsubnets.mdx b/website/pages/docs/from-1.5/functions/ipnet/cidrsubnets.mdx index e05a32ef3..cea721a6c 100644 --- a/website/pages/docs/from-1.5/functions/ipnet/cidrsubnets.mdx +++ b/website/pages/docs/from-1.5/functions/ipnet/cidrsubnets.mdx @@ -60,7 +60,7 @@ the same addressing scheme as the given prefix. ``` You can use nested `cidrsubnets` calls with -[`for` expressions](/docs/configuration/expressions#for-expressions) +[`for` expressions](/docs/from-1.5/expressions#for-expressions) to concisely allocate groups of network address blocks: ```text diff --git a/website/pages/docs/from-1.5/functions/string/format.mdx b/website/pages/docs/from-1.5/functions/string/format.mdx index 742045e95..27b0455b6 100644 --- a/website/pages/docs/from-1.5/functions/string/format.mdx +++ b/website/pages/docs/from-1.5/functions/string/format.mdx @@ -118,5 +118,5 @@ for an unsupported format verb. - [`formatdate`](/docs/from-1.5/functions/datetime/formatdate) is a specialized formatting function for human-readable timestamps. -- [`formatlist`](/docs/from-1.5/functions/datetime/formatlist) uses the same specification syntax to +- [`formatlist`](/docs/from-1.5/functions/string/formatlist) uses the same specification syntax to produce a list of strings. diff --git a/website/pages/docs/from-1.5/syntax-json.mdx b/website/pages/docs/from-1.5/syntax-json.mdx index 151e779b0..fe1973da9 100644 --- a/website/pages/docs/from-1.5/syntax-json.mdx +++ b/website/pages/docs/from-1.5/syntax-json.mdx @@ -86,9 +86,7 @@ source "amazon-ebs" "example" { ``` Within each top-level block type the rules for mapping to JSON are slightly -different (see the [block-type-specific -exceptions](#block-type-specific-exceptions) below), but the following general -rules apply in most cases: +different (see [block-type-specific exceptions](#block-type-specific-exceptions) below), but the following general rules apply in most cases: - The JSON object representing the block body contains properties that correspond either to argument names or to nested block type names. diff --git a/website/pages/docs/from-1.5/variables.mdx b/website/pages/docs/from-1.5/variables.mdx index 39091a631..fc687e849 100644 --- a/website/pages/docs/from-1.5/variables.mdx +++ b/website/pages/docs/from-1.5/variables.mdx @@ -126,7 +126,7 @@ The type constructors allow you to specify complex types such as collections: The keyword `any` may be used to indicate that any type is acceptable. For more information on the meaning and behavior of these different types, as well as detailed information about automatic conversion of complex types, see [Type -Constraints](/docs/from-1.5/types). +Constraints](https://www.terraform.io/docs/configuration/types.html). If both the `type` and `default` arguments are specified, the given default value must be convertible to the specified type. @@ -236,7 +236,7 @@ case letters as in the above example. ### Complex-typed Values When variable values are provided in a variable definitions file, Packer's -[usual syntax](/docs/from-1.5/expressions#structural-types) can be used to assign +[usual syntax](/docs/from-1.5/expressions) can be used to assign complex-typed values, like lists and maps. Some special rules apply to the `-var` command line option and to environment diff --git a/website/pages/docs/post-processors/vagrant.mdx b/website/pages/docs/post-processors/vagrant.mdx index 254f4e3a2..dbf5bd523 100644 --- a/website/pages/docs/post-processors/vagrant.mdx +++ b/website/pages/docs/post-processors/vagrant.mdx @@ -155,7 +155,7 @@ artifact (the raw virtual machine, for example), then you must configure Packer to keep it. Please see the [documentation on input -artifacts](/docs/templates/post-processors#toc_2) for more information. +artifacts](/docs/templates/post-processors#input-artifacts) for more information. ### Docker diff --git a/website/pages/docs/provisioners/chef-client.mdx b/website/pages/docs/provisioners/chef-client.mdx index 7b3330505..800b90457 100644 --- a/website/pages/docs/provisioners/chef-client.mdx +++ b/website/pages/docs/provisioners/chef-client.mdx @@ -67,7 +67,7 @@ configuration is actually required. - `elevated_user` and `elevated_password` (string) - If specified, Chef will be run with elevated privileges using the given Windows user. See the - [powershell](/docs/provisionders/powershell) provisioner for the full + [powershell](/docs/provisioners/powershell) provisioner for the full details. - `encrypted_data_bag_secret_path` (string) - The path to the file containing diff --git a/website/pages/docs/provisioners/file.mdx b/website/pages/docs/provisioners/file.mdx index b2ab829b6..2c1936f21 100644 --- a/website/pages/docs/provisioners/file.mdx +++ b/website/pages/docs/provisioners/file.mdx @@ -161,7 +161,7 @@ Because of the way our WinRM transfers works, it can take a very long time to upload and download even moderately sized files. If you're experiencing slowness using the file provisioner on Windows, it's suggested that you set up an SSH server and use the [ssh -communicator](/docs/templates/communicator#ssh-communicator). If you only +communicator](/docs/communicators/ssh). If you only want to transfer files to your guest, and if your builder supports it, you may also use the `http_directory` directive. This will cause that directory to be available to the guest over http, and set the environment variable diff --git a/website/pages/docs/templates/builders.mdx b/website/pages/docs/templates/builders.mdx index 910e94dda..9b23eda6b 100644 --- a/website/pages/docs/templates/builders.mdx +++ b/website/pages/docs/templates/builders.mdx @@ -37,7 +37,7 @@ Within a template, a section of builder definitions looks like this: ## Builder Definition A single builder definition maps to exactly one -[build](/docs/basics/terminology#term-build). A builder definition is a +[build](/docs/basics/terminology#builds). A builder definition is a JSON object that requires at least a `type` key. The `type` is the name of the builder that will be used to create a machine image for the build. diff --git a/website/pages/docs/templates/communicator.mdx b/website/pages/docs/templates/communicator.mdx index a1fc95c50..4164a51bc 100644 --- a/website/pages/docs/templates/communicator.mdx +++ b/website/pages/docs/templates/communicator.mdx @@ -33,7 +33,7 @@ the Packer template. However, if you are building from a brand-new and unconfigured operating system image, you will almost always have to perform some extra work to configure SSH on the guest machine. For most operating system distributions, this work will -be performed by a [boot_command](/docs/builders/vmware-iso#boot-command) that references a file which +be performed by a [boot_command](/docs/builders/vmware/iso#boot-configuration) that references a file which provides answers to the normally-interactive questions you get asked when installing an operating system. The name of this file varies by operating system; some common examples are the "preseed" file required by Debian, the