diff --git a/website/content/partials/packer-plugin-sdk/bootcommand/BootConfig-not-required.mdx b/website/content/partials/packer-plugin-sdk/bootcommand/BootConfig-not-required.mdx index 1bf92b193..622e739c1 100644 --- a/website/content/partials/packer-plugin-sdk/bootcommand/BootConfig-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/bootcommand/BootConfig-not-required.mdx @@ -1,4 +1,4 @@ - + - `boot_keygroup_interval` (duration string | ex: "1h5m2s") - Time to wait after sending a group of key pressses. The value of this should be a duration. Examples are `5s` and `1m30s` which will cause diff --git a/website/content/partials/packer-plugin-sdk/bootcommand/BootConfig.mdx b/website/content/partials/packer-plugin-sdk/bootcommand/BootConfig.mdx index dc8eda082..52efd6fff 100644 --- a/website/content/partials/packer-plugin-sdk/bootcommand/BootConfig.mdx +++ b/website/content/partials/packer-plugin-sdk/bootcommand/BootConfig.mdx @@ -1,4 +1,4 @@ - + The boot configuration is very important: `boot_command` specifies the keys to type when the virtual machine is first booted in order to start the OS @@ -11,62 +11,62 @@ sequence. It is an array only to improve readability within the template. There are a set of special keys available. If these are in your boot command, they will be replaced by the proper key: -- `` - Backspace +- `` - Backspace -- `` - Delete +- `` - Delete -- ` ` - Simulates an actual "enter" or "return" keypress. +- ` ` - Simulates an actual "enter" or "return" keypress. -- `` - Simulates pressing the escape key. +- `` - Simulates pressing the escape key. -- `` - Simulates pressing the tab key. +- `` - Simulates pressing the tab key. -- ` - ` - Simulates pressing a function key. +- ` - ` - Simulates pressing a function key. -- ` ` - Simulates pressing an arrow key. +- ` ` - Simulates pressing an arrow key. -- `` - Simulates pressing the spacebar. +- `` - Simulates pressing the spacebar. -- `` - Simulates pressing the insert key. +- `` - Simulates pressing the insert key. -- ` ` - Simulates pressing the home and end keys. +- ` ` - Simulates pressing the home and end keys. -- ` ` - Simulates pressing the page up and page down - keys. +- ` ` - Simulates pressing the page up and page down + keys. -- `` - Simulates pressing the Menu key. +- `` - Simulates pressing the Menu key. -- ` ` - Simulates pressing the alt key. +- ` ` - Simulates pressing the alt key. -- ` ` - Simulates pressing the ctrl key. +- ` ` - Simulates pressing the ctrl key. -- ` ` - Simulates pressing the shift key. +- ` ` - Simulates pressing the shift key. -- ` ` - Simulates pressing the ⌘ or Windows key. +- ` ` - Simulates pressing the ⌘ or Windows key. -- ` ` - Adds a 1, 5 or 10 second pause before - sending any additional keys. This is useful if you have to generally - wait for the UI to update before typing more. +- ` ` - Adds a 1, 5 or 10 second pause before + sending any additional keys. This is useful if you have to generally + wait for the UI to update before typing more. -- `` - Add an arbitrary pause before sending any additional keys. - The format of `XX` is a sequence of positive decimal numbers, each with - optional fraction and a unit suffix, such as `300ms`, `1.5h` or `2h45m`. - Valid time units are `ns`, `us` (or `µs`), `ms`, `s`, `m`, `h`. For - example `` or ``. +- `` - Add an arbitrary pause before sending any additional keys. + The format of `XX` is a sequence of positive decimal numbers, each with + optional fraction and a unit suffix, such as `300ms`, `1.5h` or `2h45m`. + Valid time units are `ns`, `us` (or `µs`), `ms`, `s`, `m`, `h`. For + example `` or ``. -- ` ` - Any printable keyboard character, and of these - "special" expressions, with the exception of the `` types, can - also be toggled on or off. For example, to simulate ctrl+c, use - `c`. Be sure to release them, otherwise they - will be held down until the machine reboots. To hold the `c` key down, - you would use ``. Likewise, `` to release. +- ` ` - Any printable keyboard character, and of these + "special" expressions, with the exception of the `` types, can + also be toggled on or off. For example, to simulate ctrl+c, use + `c`. Be sure to release them, otherwise they + will be held down until the machine reboots. To hold the `c` key down, + you would use ``. Likewise, `` to release. -- `{{ .HTTPIP }} {{ .HTTPPort }}` - The IP and port, respectively of an - HTTP server that is started serving the directory specified by the - `http_directory` configuration parameter. If `http_directory` isn't - specified, these will be blank! +- `{{ .HTTPIP }} {{ .HTTPPort }}` - The IP and port, respectively of an + HTTP server that is started serving the directory specified by the + `http_directory` configuration parameter. If `http_directory` isn't + specified, these will be blank! -- `{{ .Name }}` - The name of the VM. +- `{{ .Name }}` - The name of the VM. Example boot command. This is actually a working boot command used to start an CentOS 6.4 installer: diff --git a/website/content/partials/packer-plugin-sdk/bootcommand/VNCConfig-not-required.mdx b/website/content/partials/packer-plugin-sdk/bootcommand/VNCConfig-not-required.mdx index 008fdb54a..0c9b8b381 100644 --- a/website/content/partials/packer-plugin-sdk/bootcommand/VNCConfig-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/bootcommand/VNCConfig-not-required.mdx @@ -1,4 +1,4 @@ - + - `disable_vnc` (bool) - Whether to create a VNC connection or not. A boot_command cannot be used when this is true. Defaults to false. diff --git a/website/content/partials/packer-plugin-sdk/bootcommand/VNCConfig.mdx b/website/content/partials/packer-plugin-sdk/bootcommand/VNCConfig.mdx index f539a6590..0eb6bcd13 100644 --- a/website/content/partials/packer-plugin-sdk/bootcommand/VNCConfig.mdx +++ b/website/content/partials/packer-plugin-sdk/bootcommand/VNCConfig.mdx @@ -1,4 +1,4 @@ - + The boot command "typed" character for character over a VNC connection to the machine, simulating a human actually typing the keyboard. diff --git a/website/content/partials/packer-plugin-sdk/communicator/Config-not-required.mdx b/website/content/partials/packer-plugin-sdk/communicator/Config-not-required.mdx index 28447b102..43413e448 100644 --- a/website/content/partials/packer-plugin-sdk/communicator/Config-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/communicator/Config-not-required.mdx @@ -1,15 +1,15 @@ - + - `communicator` (string) - Packer currently supports three kinds of communicators: - - - `none` - No communicator will be used. If this is set, most - provisioners also can't be used. - - - `ssh` - An SSH connection will be established to the machine. This - is usually the default. - - - `winrm` - A WinRM connection will be established. - + + - `none` - No communicator will be used. If this is set, most + provisioners also can't be used. + + - `ssh` - An SSH connection will be established to the machine. This + is usually the default. + + - `winrm` - A WinRM connection will be established. + In addition to the above, some builders have custom communicators they can use. For example, the Docker builder has a "docker" communicator that uses `docker exec` and `docker cp` to execute scripts and copy @@ -19,7 +19,7 @@ guest's bootstrap script, but sometimes you may have a race condition where you need Packer to wait before attempting to connect to your guest. - + If you end up in this situation, you can use the template option `pause_before_connecting`. By default, there is no pause. For example if you set `pause_before_connecting` to `10m` Packer will check whether it diff --git a/website/content/partials/packer-plugin-sdk/communicator/Config.mdx b/website/content/partials/packer-plugin-sdk/communicator/Config.mdx index 8d268582f..b569865c0 100644 --- a/website/content/partials/packer-plugin-sdk/communicator/Config.mdx +++ b/website/content/partials/packer-plugin-sdk/communicator/Config.mdx @@ -1,5 +1,5 @@ - + -Config is the common a builder uses to define and configure a Packer +Config is the common configuration a builder uses to define and configure a Packer communicator. Embed this struct in your builder config to implement communicator support. diff --git a/website/content/partials/packer-plugin-sdk/communicator/SSH-not-required.mdx b/website/content/partials/packer-plugin-sdk/communicator/SSH-not-required.mdx index 6bb2e51fb..266148a5d 100644 --- a/website/content/partials/packer-plugin-sdk/communicator/SSH-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/communicator/SSH-not-required.mdx @@ -1,4 +1,4 @@ - + - `ssh_host` (string) - The address to SSH to. This usually is automatically configured by the builder. @@ -11,11 +11,11 @@ - `ssh_ciphers` ([]string) - This overrides the value of ciphers supported by default by golang. The default value is [ - "aes128-gcm@openssh.com", - "chacha20-poly1305@openssh.com", - "aes128-ctr", "aes192-ctr", "aes256-ctr", + "aes128-gcm@openssh.com", + "chacha20-poly1305@openssh.com", + "aes128-ctr", "aes192-ctr", "aes256-ctr", ] - + Valid options for ciphers include: "aes128-ctr", "aes192-ctr", "aes256-ctr", "aes128-gcm@openssh.com", "chacha20-poly1305@openssh.com", @@ -89,6 +89,6 @@ useful if, for example, packer hangs on a connection after a reboot. Example: `5m`. Disabled by default. -- `ssh_remote_tunnels` ([]string) - +- `ssh_remote_tunnels` ([]string) - -- `ssh_local_tunnels` ([]string) - +- `ssh_local_tunnels` ([]string) - diff --git a/website/content/partials/packer-plugin-sdk/communicator/SSHInterface-not-required.mdx b/website/content/partials/packer-plugin-sdk/communicator/SSHInterface-not-required.mdx index ecebede07..a62a267c4 100644 --- a/website/content/partials/packer-plugin-sdk/communicator/SSHInterface-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/communicator/SSHInterface-not-required.mdx @@ -1,4 +1,4 @@ - + - `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 @@ -6,7 +6,7 @@ if inside a VPC is to use the public IP address if available, otherwise the private IP address will be used. If not in a VPC the public DNS name will be used. Also works for WinRM. - + Where Packer is configured for an outbound proxy but WinRM traffic should be direct, `ssh_interface` must be set to `private_dns` and `.compute.internal` included in the `NO_PROXY` environment diff --git a/website/content/partials/packer-plugin-sdk/communicator/SSHTemporaryKeyPair-not-required.mdx b/website/content/partials/packer-plugin-sdk/communicator/SSHTemporaryKeyPair-not-required.mdx index 8ba76949c..bc1733650 100644 --- a/website/content/partials/packer-plugin-sdk/communicator/SSHTemporaryKeyPair-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/communicator/SSHTemporaryKeyPair-not-required.mdx @@ -1,7 +1,7 @@ - + - `temporary_key_pair_type` (string) - `dsa` | `ecdsa` | `ed25519` | `rsa` ( the default ) - + Specifies the type of key to create. The possible values are 'dsa', 'ecdsa', 'ed25519', or 'rsa'. diff --git a/website/content/partials/packer-plugin-sdk/communicator/SSHTemporaryKeyPair.mdx b/website/content/partials/packer-plugin-sdk/communicator/SSHTemporaryKeyPair.mdx index da04d8043..32d9cbf3a 100644 --- a/website/content/partials/packer-plugin-sdk/communicator/SSHTemporaryKeyPair.mdx +++ b/website/content/partials/packer-plugin-sdk/communicator/SSHTemporaryKeyPair.mdx @@ -1,4 +1,4 @@ - + When no ssh credentials are specified, Packer will generate a temporary SSH keypair for the instance. You can change the algorithm type and bits diff --git a/website/content/partials/packer-plugin-sdk/communicator/WinRM-not-required.mdx b/website/content/partials/packer-plugin-sdk/communicator/WinRM-not-required.mdx index 86933a635..20b21a1d6 100644 --- a/website/content/partials/packer-plugin-sdk/communicator/WinRM-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/communicator/WinRM-not-required.mdx @@ -1,11 +1,11 @@ - + - `winrm_username` (string) - The username to use to connect to WinRM. - `winrm_password` (string) - The password to use to connect to WinRM. - `winrm_host` (string) - The address for WinRM to connect to. - + NOTE: If using an Amazon EBS builder, you can specify the interface WinRM connects to via [`ssh_interface`](/docs/builders/amazon-ebs#ssh_interface) @@ -30,4 +30,4 @@ for WinRM, rather than default (basic authentication), removing the requirement for basic authentication to be enabled within the target guest. Further reading for remote connection authentication can be found - [here](). + [here](https://msdn.microsoft.com/en-us/library/aa384295(v=vs.85).aspx). diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/CDConfig-not-required.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/CDConfig-not-required.mdx index ccdd39e1e..d07273c70 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/CDConfig-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/CDConfig-not-required.mdx @@ -1,47 +1,47 @@ - + - `cd_files` ([]string) - A list of files to place onto a CD that is attached when the VM is booted. This can include either files or directories; any directories will be copied onto the CD recursively, preserving directory structure hierarchy. Symlinks will have the link's target copied into the directory tree on the CD where the symlink was. File globbing is allowed. - + Usage example (JSON): - + ```json "cd_files": ["./somedirectory/meta-data", "./somedirectory/user-data"], "cd_label": "cidata", ``` - + Usage example (HCL): - + ```hcl cd_files = ["./somedirectory/meta-data", "./somedirectory/user-data"] cd_label = "cidata" ``` - + The above will create a CD with two files, user-data and meta-data in the CD root. This specific example is how you would create a CD that can be used for an Ubuntu 20.04 autoinstall. - + Since globbing is also supported, - + ```hcl cd_files = ["./somedirectory/*"] cd_label = "cidata" ``` - + Would also be an acceptable way to define the above cd. The difference between providing the directory with or without the glob is whether the directory itself or its contents will be at the CD root. - + Use of this option assumes that you have a command line tool installed that can handle the iso creation. Packer will use one of the following tools: - - - xorriso - - mkisofs - - hdiutil (normally found in macOS) - - oscdimg (normally found in Windows as part of the Windows ADK) + + * xorriso + * mkisofs + * hdiutil (normally found in macOS) + * oscdimg (normally found in Windows as part of the Windows ADK) - `cd_label` (string) - CD Label diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/CDConfig.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/CDConfig.mdx index d8778c6ee..5a59e6eaf 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/CDConfig.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/CDConfig.mdx @@ -1,4 +1,4 @@ - + An iso (CD) containing custom files can be made available for your build. diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/FloppyConfig-not-required.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/FloppyConfig-not-required.mdx index 812ebb770..607c68448 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/FloppyConfig-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/FloppyConfig-not-required.mdx @@ -1,8 +1,8 @@ - + - `floppy_files` ([]string) - A list of files to place onto a floppy disk that is attached when the VM is booted. Currently, no support exists for creating sub-directories on - the floppy. Wildcard characters (\\\*, ?, and \[\]) are allowed. Directory + the floppy. Wildcard characters (\\*, ?, and \[\]) are allowed. Directory names are also allowed, which will add all the files found in the directory to the floppy. @@ -10,7 +10,7 @@ similar to the `floppy_files` option except that the directory structure is preserved. This is useful for when your floppy disk includes drivers or if you just want to organize it's contents as a hierarchy. Wildcard - characters (\\\*, ?, and \[\]) are allowed. The maximum summary size of + characters (\\*, ?, and \[\]) are allowed. The maximum summary size of all files in the listed directories are the same as in `floppy_files`. - `floppy_label` (string) - Floppy Label diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/FloppyConfig.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/FloppyConfig.mdx index fe2645506..e906b9ec8 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/FloppyConfig.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/FloppyConfig.mdx @@ -1,4 +1,4 @@ - + A floppy can be made available for your build. This is most useful for unattended Windows installs, which look for an Autounattend.xml file on diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/HTTPConfig-not-required.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/HTTPConfig-not-required.mdx index a44424f45..c8a364003 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/HTTPConfig-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/HTTPConfig-not-required.mdx @@ -1,4 +1,4 @@ - + - `http_directory` (string) - Path to a directory to serve using an HTTP server. The files in this directory will be available over HTTP that will be requestable from the diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/HTTPConfig.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/HTTPConfig.mdx index 448224152..f4efe759b 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/HTTPConfig.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/HTTPConfig.mdx @@ -1,4 +1,4 @@ - + Packer will create an http server serving `http_directory` when it is set, a random free port will be selected and the architecture of the directory @@ -6,4 +6,4 @@ referenced will be available in your builder. Example usage from a builder: -`wget http://{{ .HTTPIP }}:{{ .HTTPPort }}/foo/bar/preseed.cfg` + `wget http://{{ .HTTPIP }}:{{ .HTTPPort }}/foo/bar/preseed.cfg` diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig-not-required.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig-not-required.mdx index a0c584c3a..cd3a59aa2 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig-not-required.mdx @@ -1,4 +1,4 @@ - + - `iso_urls` ([]string) - Multiple URLs for the ISO to download. Packer will try these in order. If anything goes wrong attempting to download or while downloading a diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig-required.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig-required.mdx index 5cf26596e..c2b104b6d 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig-required.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig-required.mdx @@ -1,4 +1,4 @@ - + - `iso_checksum` (string) - The checksum for the ISO file or virtual hard drive file. The type of the checksum is specified within the checksum field as a prefix, ex: @@ -7,20 +7,19 @@ "none", "{$checksum}", "md5:{$checksum}", "sha1:{$checksum}", "sha256:{$checksum}", "sha512:{$checksum}" or "file:{$path}". Here is a list of valid checksum values: - - - md5:090992ba9fd140077b0661cb75f7ce13 - - 090992ba9fd140077b0661cb75f7ce13 - - sha1:ebfb681885ddf1234c18094a45bbeafd91467911 - - ebfb681885ddf1234c18094a45bbeafd91467911 - - sha256:ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93 - - ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93 - - file:http://releases.ubuntu.com/20.04/MD5SUMS - - file:file://./local/path/file.sum - - file:./local/path/file.sum - - none - Although the checksum will not be verified when it is set to "none", - this is not recommended since these files can be very large and - corruption does happen from time to time. + * md5:090992ba9fd140077b0661cb75f7ce13 + * 090992ba9fd140077b0661cb75f7ce13 + * sha1:ebfb681885ddf1234c18094a45bbeafd91467911 + * ebfb681885ddf1234c18094a45bbeafd91467911 + * sha256:ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93 + * ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93 + * file:http://releases.ubuntu.com/20.04/SHA256SUMS + * file:file://./local/path/file.sum + * file:./local/path/file.sum + * none + Although the checksum will not be verified when it is set to "none", + this is not recommended since these files can be very large and + corruption does happen from time to time. - `iso_url` (string) - A URL to the ISO containing the installation image or virtual hard drive (VHD or VHDX) file to clone. diff --git a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig.mdx b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig.mdx index 1f12a1ad5..87e8030d1 100644 --- a/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig.mdx +++ b/website/content/partials/packer-plugin-sdk/multistep/commonsteps/ISOConfig.mdx @@ -1,4 +1,4 @@ - + By default, Packer will symlink, download or copy image files to the Packer cache into a "`hash($iso_url+$iso_checksum).$iso_target_extension`" file. @@ -7,11 +7,11 @@ file mode in order to perform a download. go-getter supports the following protocols: -- Local files -- Git -- Mercurial -- HTTP -- Amazon S3 +* Local files +* Git +* Mercurial +* HTTP +* Amazon S3 Examples: go-getter can guess the checksum type based on `iso_checksum` length, and it is diff --git a/website/content/partials/packer-plugin-sdk/shutdowncommand/ShutdownConfig-not-required.mdx b/website/content/partials/packer-plugin-sdk/shutdowncommand/ShutdownConfig-not-required.mdx index 0cd262f0d..8e83e72a1 100644 --- a/website/content/partials/packer-plugin-sdk/shutdowncommand/ShutdownConfig-not-required.mdx +++ b/website/content/partials/packer-plugin-sdk/shutdowncommand/ShutdownConfig-not-required.mdx @@ -1,4 +1,4 @@ - + - `shutdown_command` (string) - The command to use to gracefully shut down the machine once all provisioning is complete. By default this is an empty string, which diff --git a/website/content/partials/packer-plugin-sdk/shutdowncommand/ShutdownConfig.mdx b/website/content/partials/packer-plugin-sdk/shutdowncommand/ShutdownConfig.mdx index e958c8ca3..2221fc184 100644 --- a/website/content/partials/packer-plugin-sdk/shutdowncommand/ShutdownConfig.mdx +++ b/website/content/partials/packer-plugin-sdk/shutdowncommand/ShutdownConfig.mdx @@ -1,7 +1,8 @@ - + ShutdownConfig defines implementation details for shutting down a VM once it -is done provisioned. +is done being provisioned. + It is provided as a convenience to encourage builder developers to consider implementing these options, which we believe are valuable for all builders. It also helps guarantee that option names for similar options