Merge pull request #10442 from hashicorp/d-broken-link-check
Add GitHub action to check for broken markdown links
This commit is contained in:
commit
9adeb989c6
|
@ -0,0 +1,14 @@
|
|||
on: [pull_request]
|
||||
name: Check Markdown links for modified files
|
||||
jobs:
|
||||
markdown-link-check:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@master
|
||||
- uses: gaurav-nelson/github-action-markdown-link-check@v1
|
||||
with:
|
||||
use-quiet-mode: 'yes'
|
||||
file-extension: 'mdx'
|
||||
check-modified-files-only: 'yes'
|
||||
folder-path: 'website/content'
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
on:
|
||||
schedule:
|
||||
- cron: "45 0 * * *"
|
||||
name: Check Markdown links on main branch
|
||||
jobs:
|
||||
markdown-link-check:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@master
|
||||
- uses: gaurav-nelson/github-action-markdown-link-check@v1
|
||||
with:
|
||||
use-quiet-mode: 'yes'
|
||||
file-extension: 'mdx'
|
||||
folder-path: 'website/content'
|
|
@ -85,7 +85,7 @@ type RunConfig struct {
|
|||
BlockDurationMinutes int64 `mapstructure:"block_duration_minutes" required:"false"`
|
||||
// Packer normally stops the build instance after all provisioners have
|
||||
// run. For Windows instances, it is sometimes desirable to [run
|
||||
// Sysprep](http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ami-create-standard.html)
|
||||
// Sysprep](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/Creating_EBSbacked_WinAMI.html)
|
||||
// which will stop the instance for you. If this is set to `true`, Packer
|
||||
// *will not* stop the instance but will assume that you will send the stop
|
||||
// signal yourself through your final provisioner. You can do this with a
|
||||
|
|
|
@ -196,20 +196,20 @@ type Config struct {
|
|||
// Image Definition won't use this Image Version.
|
||||
SharedGalleryImageVersionExcludeFromLatest bool `mapstructure:"shared_gallery_image_version_exclude_from_latest" required:"false"`
|
||||
// Name of the publisher to use for your base image (Azure Marketplace Images only). See
|
||||
// [documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
// [documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
// for details.
|
||||
//
|
||||
// CLI example `az vm image list-publishers --location westus`
|
||||
ImagePublisher string `mapstructure:"image_publisher" required:"true"`
|
||||
// Name of the publisher's offer to use for your base image (Azure Marketplace Images only). See
|
||||
// [documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
// [documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
// for details.
|
||||
//
|
||||
// CLI example
|
||||
// `az vm image list-offers --location westus --publisher Canonical`
|
||||
ImageOffer string `mapstructure:"image_offer" required:"true"`
|
||||
// SKU of the image offer to use for your base image (Azure Marketplace Images only). See
|
||||
// [documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
// [documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
// for details.
|
||||
//
|
||||
// CLI example
|
||||
|
|
|
@ -143,20 +143,20 @@ type Config struct {
|
|||
SharedGalleryTimeout time.Duration `mapstructure:"shared_image_gallery_timeout"`
|
||||
|
||||
// PublisherName for your base image. See
|
||||
// [documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
// [documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
// for details.
|
||||
//
|
||||
// CLI example `az vm image list-publishers --location westus`
|
||||
ImagePublisher string `mapstructure:"image_publisher"`
|
||||
// Offer for your base image. See
|
||||
// [documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
// [documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
// for details.
|
||||
//
|
||||
// CLI example
|
||||
// `az vm image list-offers --location westus --publisher Canonical`
|
||||
ImageOffer string `mapstructure:"image_offer"`
|
||||
// SKU for your base image. See
|
||||
// [documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
// [documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
// for details.
|
||||
//
|
||||
// CLI example
|
||||
|
|
|
@ -71,7 +71,7 @@ type Config struct {
|
|||
// * ebfb681885ddf1234c18094a45bbeafd91467911
|
||||
// * sha256:ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93
|
||||
// * ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93
|
||||
// * file:http://releases.ubuntu.com/20.04/MD5SUMS
|
||||
// * file:http://releases.ubuntu.com/20.04/SHA256SUMS
|
||||
// * file:file://./local/path/file.sum
|
||||
// * file:./local/path/file.sum
|
||||
// * none
|
||||
|
|
|
@ -43,7 +43,7 @@ type Config struct {
|
|||
// * ebfb681885ddf1234c18094a45bbeafd91467911
|
||||
// * sha256:ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93
|
||||
// * ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93
|
||||
// * file:http://releases.ubuntu.com/20.04/MD5SUMS
|
||||
// * file:http://releases.ubuntu.com/20.04/SHA256SUMS
|
||||
// * file:file://./local/path/file.sum
|
||||
// * file:./local/path/file.sum
|
||||
// * none
|
||||
|
|
|
@ -16,7 +16,7 @@ import (
|
|||
|
||||
type ConfigParamsConfig struct {
|
||||
// configuration_parameters is a direct passthrough to the VSphere API's
|
||||
// ConfigSpec: https://pubs.vmware.com/vi3/sdk/ReferenceGuide/vim.vm.ConfigSpec.html
|
||||
// ConfigSpec: https://www.vmware.com/support/developer/vc-sdk/visdk41pubs/ApiReference/vim.vm.ConfigSpec.html
|
||||
ConfigParams map[string]string `mapstructure:"configuration_parameters"`
|
||||
|
||||
// Enables time synchronization with the host. Defaults to false.
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"ignorePatterns": [
|
||||
{
|
||||
"pattern": "^https://example.com"
|
||||
},
|
||||
{
|
||||
"pattern": "^https://ec2.custom.endpoint.com"
|
||||
},
|
||||
{
|
||||
"pattern": "^https://www.linode.com"
|
||||
},
|
||||
{
|
||||
"pattern": "^https://github.com/hashicorp/packer-plugin-scaffolding"
|
||||
}
|
||||
],
|
||||
"replacementPatterns": [
|
||||
{
|
||||
"pattern": "^/",
|
||||
"replacement": "https://packer.io/"
|
||||
}
|
||||
],
|
||||
"timeout": "20s",
|
||||
"retryOn429": true
|
||||
}
|
|
@ -20,6 +20,7 @@ This subdirectory contains the entire source for the [Packer Website](https://pa
|
|||
- [Editing Markdown Content](#editing-markdown-content)
|
||||
- [Editing Navigation Sidebars](#editing-navigation-sidebars)
|
||||
- [Changing the Release Version](#changing-the-release-version)
|
||||
- [Link Validation](#link-validation)
|
||||
- [Redirects](#redirects)
|
||||
- [Browser Support](#browser-support)
|
||||
- [Deployment](#deployment)
|
||||
|
@ -148,7 +149,7 @@ $ curl ...
|
|||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
Contined normal markdown content
|
||||
Continued normal markdown content
|
||||
````
|
||||
|
||||
The intentionally skipped line is a limitation of the mdx parser which is being actively worked on. All tabs must have a heading, and there is no limit to the number of tabs, though it is recommended to go for a maximum of three or four.
|
||||
|
@ -376,6 +377,16 @@ You may customize the parameters in any way you'd like. To remove a prerelease f
|
|||
<!-- BEGIN: redirects -->
|
||||
<!-- Generated text, do not edit directly -->
|
||||
|
||||
## Link Validation
|
||||
|
||||
The Packer GitHub repository is configured to run a [Markdown Link Check](https://github.com/gaurav-nelson/github-action-markdown-link-check#github-action---markdown-link-check-%EF%B8%8F) on a nightly basis to check for potential broken links within the Packer documentation. There is also a GitHub action that will check any modified `.mdx` files on new pull-requests.
|
||||
|
||||
The master configuration file for the markdown-link-checker is called `mlc_config.json` and is located under the project's root directory.
|
||||
The configuration helps with relative links in the documentation that will be valid once deployed, and configures a few ignored URLs which are valid but may not return a valid 200 HTTP response code due to permissions or DDoS protection settings on the domain.
|
||||
|
||||
**Potential False Positives**
|
||||
The link checker will prepend the BASEURL `https://packer.io/` to any relative links found within the documentation, which can be an issue when adding new `/docs` or `/guides` documents as the pages have not been deployed. To help mitigate this issue check the site preview to ensure newly added documentation pages work as expected.
|
||||
|
||||
## Redirects
|
||||
|
||||
This website structures URLs based on the filesystem layout. This means that if a file is moved, removed, or a folder is re-organized, links will break. If a path change is necessary, it can be mitigated using redirects.
|
||||
|
|
|
@ -132,11 +132,11 @@ build {
|
|||
~> Note: Since WinRM is closed by default in the system image. If you are
|
||||
planning to use Windows as the base image, you need enable it by userdata in
|
||||
order to connect to the instance, check
|
||||
[alicloud_windows.json](https://github.com/hashicorp/packer/tree/master/examples/alicloud/basic/alicloud_windows.json)
|
||||
[alicloud_windows.json](https://github.com/hashicorp/packer/tree/master/builder/alicloud/examples/basic/alicloud_windows.json)
|
||||
and
|
||||
[winrm_enable_userdata.ps1](https://github.com/hashicorp/packer/tree/master/examples/alicloud/basic/winrm_enable_userdata.ps1)
|
||||
[winrm_enable_userdata.ps1](https://github.com/hashicorp/packer/tree/master/builder/alicloud/examples/basic/winrm_enable_userdata.ps1)
|
||||
for details.
|
||||
|
||||
See the
|
||||
[examples/alicloud](https://github.com/hashicorp/packer/tree/master/examples/alicloud)
|
||||
[examples/alicloud](https://github.com/hashicorp/packer/tree/master/builder/alicloud/examples)
|
||||
folder in the packer project for more examples.
|
||||
|
|
|
@ -234,7 +234,7 @@ means executing sysprep, and for Linux this means executing the waagent
|
|||
deprovision process.
|
||||
|
||||
Please refer to the Azure
|
||||
[examples](https://github.com/hashicorp/packer/tree/master/examples/azure) for
|
||||
[examples](https://github.com/hashicorp/packer/tree/master/builder/azure/examples) for
|
||||
complete examples showing the deprovision process.
|
||||
|
||||
### Windows
|
||||
|
@ -489,5 +489,5 @@ templates and deployments. The time required to deploy a KeyVault template is
|
|||
minimal, so overall impact is small.
|
||||
|
||||
See the
|
||||
[examples/azure](https://github.com/hashicorp/packer/tree/master/examples/azure)
|
||||
[examples/azure](https://github.com/hashicorp/packer/tree/master/builder/azure/examples)
|
||||
folder in the packer project for more examples.
|
||||
|
|
|
@ -85,4 +85,4 @@ Here is a basic example for JDCloud.
|
|||
}
|
||||
```
|
||||
|
||||
[Find more examples](https://github.com/hashicorp/packer/tree/master/examples/jdcloud)
|
||||
[Find more examples](https://github.com/hashicorp/packer/tree/master/builder/jdcloud/examples)
|
||||
|
|
|
@ -41,6 +41,12 @@ can also be supplied to override the typical auto-generated key:
|
|||
|
||||
@include 'packer-plugin-sdk/communicator/SSH-Private-Key-File-not-required.mdx'
|
||||
|
||||
<!--
|
||||
Linode.com has DDOS protection that returns 403 for the markdown link checker
|
||||
so the domain has been added to the ignorepatterns in mlc_config.json
|
||||
|
||||
See https://github.com/tcort/markdown-link-check/issues/109
|
||||
-->
|
||||
### Required
|
||||
|
||||
- `linode_token` (string) - The client TOKEN to use to access your account.
|
||||
|
|
|
@ -45,8 +45,10 @@ can also be supplied to override the typical auto-generated key:
|
|||
- `retries` (number) - Number of retries Packer will make status requests
|
||||
while waiting for the build to complete. Default value "600".
|
||||
|
||||
<!-- markdown-link-check-disable -->
|
||||
- `url` (string) - Endpoint for the 1&1 REST API. Default URL
|
||||
"<https://cloudpanel-api.1and1.com/v1>"
|
||||
<!-- markdown-link-check-enable -->
|
||||
|
||||
## Example
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ image, runs any provisioning necessary on the base image after launching it,
|
|||
and finally snapshots it creating a reusable custom image.
|
||||
|
||||
It is recommended that you familiarise yourself with the [Key Concepts and
|
||||
Terminology](https://docs.oracle.com/en/cloud/iaas/compute-iaas-cloud/stcsg/terminology.html)
|
||||
Terminology](https://docs.oracle.com/en/cloud/iaas-classic/compute-iaas-cloud/stcsg/getting-started-oracle-compute-cloud-service.html#GUID-6CB9D494-4F3C-4B78-BD03-127983FEC357)
|
||||
prior to using this builder if you have not done so already.
|
||||
|
||||
The builder _does not_ manage images. Once it creates an image, it is up to you
|
||||
|
@ -52,7 +52,7 @@ builder. This builder currently only works with the SSH communicator.
|
|||
|
||||
- `source_image_list` (string) - This is what image you want to use as your
|
||||
base image. See the
|
||||
[documentation](https://docs.oracle.com/en/cloud/iaas/compute-iaas-cloud/stcsg/listing-machine-images.html)
|
||||
[documentation](https://docs.oracle.com/en/cloud/iaas-classic/compute-iaas-cloud/stcsg/managing-machine-images.html#GUID-652E6797-A5B8-40A7-860F-F27FF3E42471)
|
||||
for more details. You may use either a public image list, or a private
|
||||
image list. To see what public image lists are available, you can use the
|
||||
CLI, as described
|
||||
|
@ -66,7 +66,7 @@ builder. This builder currently only works with the SSH communicator.
|
|||
- `shape` (string) - The template that determines the number of CPUs, amount
|
||||
of memory, and other resources allocated to a newly created instance. For
|
||||
more information about shapes, see the documentation
|
||||
[here](https://docs.oracle.com/en/cloud/iaas/compute-iaas-cloud/stcsg/machine-images-and-shapes.html).
|
||||
[here](https://docs.oracle.com/en/cloud/iaas-classic/compute-iaas-cloud/stcsg/creating-instances.html#GUID-1DD0FA71-AC7B-461C-B8C1-14892725AA69).
|
||||
|
||||
- `username` (string) - Your account username.
|
||||
|
||||
|
@ -133,10 +133,6 @@ size of the original. We connect to this instance and copy the contents of the
|
|||
first volume into a tarball file on the second volume. We then upload this file
|
||||
to Object Storage Classic, and create a new machine image with it.
|
||||
|
||||
For more details, see this [blog
|
||||
post](https://blogs.oracle.com/cloudmarketplace/creating-an-oracle-compute-machine-image-from-an-instance-with-persistent-boot-storage),
|
||||
which discusses the strategy used here.
|
||||
|
||||
If this is set, a few more options become available.
|
||||
|
||||
- `builder_communicator` (communicator) - This represents an
|
||||
|
|
|
@ -186,12 +186,14 @@ can also be supplied to override the typical auto-generated key:
|
|||
- `use_private_ip` (boolean) - Use private ip addresses to connect to the
|
||||
instance via ssh.
|
||||
|
||||
<!-- markdown-link-check-disable -->
|
||||
- `metadata` (map of strings) - Metadata optionally contains custom metadata
|
||||
key/value pairs provided in the configuration. While this can be used to
|
||||
set metadata\["user_data"\] the explicit "user_data" and
|
||||
"user_data_file" values will have precedence. An instance's metadata can
|
||||
be obtained from at [http://169.254.169.254](http://169.254.169.254) on
|
||||
the launched instance.
|
||||
<!-- markdown-link-check-enable -->
|
||||
|
||||
- `user_data` (string) - User data to be used by cloud-init. See [the Oracle
|
||||
docs](https://docs.us-phoenix-1.oraclecloud.com/api/#/en/iaas/20160918/LaunchInstanceDetails)
|
||||
|
|
|
@ -158,7 +158,7 @@ each category, the available configuration keys are alphabetized.
|
|||
when mounting devices. Each option will be prefixed with `-o` and supplied
|
||||
to the `mount` command ran by Packer. Because this command is ran in a
|
||||
shell, user discretion is advised. See [this manual page for the mount
|
||||
command](http://linuxcommand.org/man_pages/mount8.html) for valid file
|
||||
command](https://linux.die.net/man/8/mount) for valid file
|
||||
system specific options.
|
||||
|
||||
- `nvme_device_path` (string) - When we call the mount command (by default
|
||||
|
|
|
@ -105,13 +105,13 @@ export OUTSCALE_X509KEY="the/path/to/your/x509key"
|
|||
### Checking that system time is current
|
||||
|
||||
Outscale uses the current time as part of the [request signing
|
||||
process](http://docs.aws.osc.com/general/latest/gr/sigv4_signing.html). If
|
||||
process](https://wiki.outscale.net/display/EN/About+Signatures+of+API+Requests). If
|
||||
your system clock is too skewed from the current time, your requests might
|
||||
fail. If that's the case, you might see an error like this:
|
||||
|
||||
==> osc-bsu: Error querying OMI: AuthFailure: OUTSCALE was not able to validate the provided access credentials
|
||||
|
||||
If you suspect your system's date is wrong, you can compare it against
|
||||
<http://www.time.gov/>. On Linux/OS X, you can run the `date` command to get
|
||||
<https://www.time.gov/>. On Linux/OS X, you can run the `date` command to get
|
||||
the current time. If you're on Linux, you can try setting the time with ntp by
|
||||
running `sudo ntpd -q`.
|
||||
|
|
|
@ -60,9 +60,10 @@ can also be supplied to override the typical auto-generated key:
|
|||
generate it
|
||||
|
||||
- `snapshot_password` (string) - Password for the snapshot.
|
||||
|
||||
<!-- markdown-link-check-disable -->
|
||||
- `url` (string) - Endpoint for the ProfitBricks REST API. Default URL
|
||||
"<https://api.profitbricks.com/rest/v2>"
|
||||
<!-- markdown-link-check-enable -->
|
||||
|
||||
## Example
|
||||
|
||||
|
|
|
@ -182,5 +182,5 @@ Here is a basic example for Tencentcloud.
|
|||
```
|
||||
|
||||
See the
|
||||
[examples/tencentcloud](https://github.com/hashicorp/packer/tree/master/examples/tencentcloud)
|
||||
[examples/tencentcloud](https://github.com/hashicorp/packer/tree/master/builder/tencentcloud/examples)
|
||||
folder in the packer project for more examples.
|
||||
|
|
|
@ -56,7 +56,7 @@ configuration, with later parameters overwriting any previous configuration.
|
|||
The exact semantics of the merge are left to the builder author.
|
||||
|
||||
For decoding the `interface{}` into a meaningful structure, the
|
||||
[mapstructure](https://github.com/mitchellh/mapstructure) library is
|
||||
[mapstructure](https://godoc.org/github.com/mitchellh/mapstructure) library is
|
||||
recommended. Mapstructure will take an `interface{}` and decode it into an
|
||||
arbitrarily complex struct. If there are any errors, it generates very human
|
||||
friendly errors that can be returned directly from the prepare method.
|
||||
|
@ -88,8 +88,8 @@ And `packer.Cache` is used to store files between multiple Packer runs, and is
|
|||
covered in more detail in the cache section below.
|
||||
|
||||
Because builder runs are typically a complex set of many steps, the
|
||||
[multistep](https://github.com/hashicorp/packer/blob/master/helper/multistep)
|
||||
helper is recommended to bring order to the complexity. Multistep is a library
|
||||
[multistep](https://godoc.org/github.com/hashicorp/packer-plugin-sdk/multistep)
|
||||
package is recommended to bring order to the complexity. Multistep is a library
|
||||
which allows you to separate your logic into multiple distinct "steps" and
|
||||
string them together. It fully supports cancellation mid-step and so on. Please
|
||||
check it out, it is how the built-in builders are all implemented.
|
||||
|
@ -137,7 +137,7 @@ about the artifact results, so it is important it never changes.
|
|||
|
||||
Other than the builder ID, the rest should be self-explanatory by reading the
|
||||
[packer.Artifact interface
|
||||
documentation](https://github.com/hashicorp/packer/blob/master/packer/artifact.go).
|
||||
documentation](https://godoc.org/github.com/hashicorp/packer-plugin-sdk/packer#Artifact).
|
||||
|
||||
## Provisioning
|
||||
|
||||
|
|
|
@ -101,7 +101,7 @@ some sort) or it may be remote (in a cloud). The communicator interface
|
|||
abstracts this away so that communication is the same overall.
|
||||
|
||||
The documentation around the [code
|
||||
itself](https://github.com/hashicorp/packer/blob/master/packer/communicator.go)
|
||||
itself](https://godoc.org/github.com/hashicorp/packer-plugin-sdk/packer#Communicator)
|
||||
is really great as an overview of how to use the interface. You should begin by
|
||||
reading this. Once you have read it, you can see some example usage below:
|
||||
|
||||
|
|
|
@ -135,7 +135,7 @@ Packer makes one named values available.
|
|||
The following named values are available:
|
||||
|
||||
- `source.<SOURCE TYPE>.<NAME>` is an object representing a
|
||||
[source](/docs/from-1.5/sources) of the given type
|
||||
[source](/docs/from-1.5/blocks/source) of the given type
|
||||
and name.
|
||||
|
||||
### Available Functions
|
||||
|
|
|
@ -388,7 +388,7 @@ class Connection(SSHConnection):
|
|||
Newer versions of Ansible require all plugins to have a documentation string.
|
||||
You can see if there is a plugin available for the version of Ansible you are
|
||||
using
|
||||
[here](https://github.com/hashicorp/packer/tree/master/examples/ansible/connection-plugin).
|
||||
[here](https://github.com/hashicorp/packer/tree/master/provisioner/ansible/examples/connection-plugin).
|
||||
|
||||
To create the plugin yourself, you will need to copy all of the `options` from
|
||||
the `DOCUMENTATION` string from the [ssh.py Ansible connection
|
||||
|
|
|
@ -109,7 +109,7 @@ configuration is actually required.
|
|||
windows.
|
||||
|
||||
- `run_list` (array of strings) - The [run
|
||||
list](http://docs.chef.io/essentials_node_object_run_lists) for Chef.
|
||||
list](https://docs.chef.io/run_lists) for Chef.
|
||||
By default this is empty, and will use the run list sent down by the Chef
|
||||
Server.
|
||||
|
||||
|
|
|
@ -84,7 +84,7 @@ listed below:
|
|||
```
|
||||
|
||||
* `facter` (object of key/value strings) - Additional
|
||||
[facts](https://puppetlabs.com/facter) to make available to the Puppet run.
|
||||
[facts](https://puppet.com/docs/puppet/latest/facter.html) to make available to the Puppet run.
|
||||
|
||||
* `guest_os_type` (string) - The remote host's OS type ('windows' or 'unix')
|
||||
to tailor command-line and path separators. (default: unix).
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
- `disable_stop_instance` (bool) - Packer normally stops the build instance after all provisioners have
|
||||
run. For Windows instances, it is sometimes desirable to [run
|
||||
Sysprep](http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ami-create-standard.html)
|
||||
Sysprep](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/Creating_EBSbacked_WinAMI.html)
|
||||
which will stop the instance for you. If this is set to `true`, Packer
|
||||
*will not* stop the instance but will assume that you will send the stop
|
||||
signal yourself through your final provisioner. You can do this with a
|
||||
|
|
|
@ -1,20 +1,20 @@
|
|||
<!-- Code generated from the comments of the Config struct in builder/azure/arm/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `image_publisher` (string) - Name of the publisher to use for your base image (Azure Marketplace Images only). See
|
||||
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
[documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
for details.
|
||||
|
||||
CLI example `az vm image list-publishers --location westus`
|
||||
|
||||
- `image_offer` (string) - Name of the publisher's offer to use for your base image (Azure Marketplace Images only). See
|
||||
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
[documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
for details.
|
||||
|
||||
CLI example
|
||||
`az vm image list-offers --location westus --publisher Canonical`
|
||||
|
||||
- `image_sku` (string) - SKU of the image offer to use for your base image (Azure Marketplace Images only). See
|
||||
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
[documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
for details.
|
||||
|
||||
CLI example
|
||||
|
|
|
@ -46,20 +46,20 @@
|
|||
minutes, and `h` for hours.)
|
||||
|
||||
- `image_publisher` (string) - PublisherName for your base image. See
|
||||
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
[documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
for details.
|
||||
|
||||
CLI example `az vm image list-publishers --location westus`
|
||||
|
||||
- `image_offer` (string) - Offer for your base image. See
|
||||
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
[documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
for details.
|
||||
|
||||
CLI example
|
||||
`az vm image list-offers --location westus --publisher Canonical`
|
||||
|
||||
- `image_sku` (string) - SKU for your base image. See
|
||||
[documentation](https://azure.microsoft.com/en-us/documentation/articles/resource-groups-vm-searching/)
|
||||
[documentation](https://docs.microsoft.com/en-us/cli/azure/vm/image)
|
||||
for details.
|
||||
|
||||
CLI example
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
* ebfb681885ddf1234c18094a45bbeafd91467911
|
||||
* sha256:ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93
|
||||
* ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93
|
||||
* file:http://releases.ubuntu.com/20.04/MD5SUMS
|
||||
* file:http://releases.ubuntu.com/20.04/SHA256SUMS
|
||||
* file:file://./local/path/file.sum
|
||||
* file:./local/path/file.sum
|
||||
* none
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
* ebfb681885ddf1234c18094a45bbeafd91467911
|
||||
* sha256:ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93
|
||||
* ed363350696a726b7932db864dda019bd2017365c9e299627830f06954643f93
|
||||
* file:http://releases.ubuntu.com/20.04/MD5SUMS
|
||||
* file:http://releases.ubuntu.com/20.04/SHA256SUMS
|
||||
* file:file://./local/path/file.sum
|
||||
* file:./local/path/file.sum
|
||||
* none
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<!-- Code generated from the comments of the ConfigParamsConfig struct in builder/vsphere/common/step_config_params.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `configuration_parameters` (map[string]string) - configuration_parameters is a direct passthrough to the VSphere API's
|
||||
ConfigSpec: https://pubs.vmware.com/vi3/sdk/ReferenceGuide/vim.vm.ConfigSpec.html
|
||||
ConfigSpec: https://www.vmware.com/support/developer/vc-sdk/visdk41pubs/ApiReference/vim.vm.ConfigSpec.html
|
||||
|
||||
- `tools_sync_time` (bool) - Enables time synchronization with the host. Defaults to false.
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the BootConfig struct in packer-plugin-sdk/bootcommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the BootConfig struct in bootcommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the BootConfig struct in packer-plugin-sdk/bootcommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the BootConfig struct in bootcommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the VNCConfig struct in packer-plugin-sdk/bootcommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the VNCConfig struct in bootcommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `disable_vnc` (bool) - Whether to create a VNC connection or not. A boot_command cannot be used
|
||||
when this is true. Defaults to false.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the VNCConfig struct in packer-plugin-sdk/bootcommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the VNCConfig struct in bootcommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
The boot command "typed" character for character over a VNC connection to
|
||||
the machine, simulating a human actually typing the keyboard.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the Config struct in packer-plugin-sdk/communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the Config struct in communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `communicator` (string) - Packer currently supports three kinds of communicators:
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<!-- Code generated from the comments of the Config struct in packer-plugin-sdk/communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the Config struct in communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
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.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the SSH struct in packer-plugin-sdk/communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the SSH struct in communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `ssh_host` (string) - The address to SSH to. This usually is automatically configured by the
|
||||
builder.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the SSHInterface struct in packer-plugin-sdk/communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the SSHInterface struct in communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the SSHTemporaryKeyPair struct in packer-plugin-sdk/communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the SSHTemporaryKeyPair struct in communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `temporary_key_pair_type` (string) - `dsa` | `ecdsa` | `ed25519` | `rsa` ( the default )
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the SSHTemporaryKeyPair struct in packer-plugin-sdk/communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the SSHTemporaryKeyPair struct in communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
When no ssh credentials are specified, Packer will generate a temporary SSH
|
||||
keypair for the instance. You can change the algorithm type and bits
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the WinRM struct in packer-plugin-sdk/communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the WinRM struct in communicator/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `winrm_username` (string) - The username to use to connect to WinRM.
|
||||
|
||||
|
@ -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](<https://msdn.microsoft.com/en-us/library/aa384295(v=vs.85).aspx>).
|
||||
[here](https://msdn.microsoft.com/en-us/library/aa384295(v=vs.85).aspx).
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the CDConfig struct in packer-plugin-sdk/multistep/commonsteps/extra_iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the CDConfig struct in multistep/commonsteps/extra_iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `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
|
||||
|
@ -39,9 +39,9 @@
|
|||
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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the CDConfig struct in packer-plugin-sdk/multistep/commonsteps/extra_iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the CDConfig struct in multistep/commonsteps/extra_iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
An iso (CD) containing custom files can be made available for your build.
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!-- Code generated from the comments of the FloppyConfig struct in packer-plugin-sdk/multistep/commonsteps/floppy_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the FloppyConfig struct in multistep/commonsteps/floppy_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the FloppyConfig struct in packer-plugin-sdk/multistep/commonsteps/floppy_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the FloppyConfig struct in multistep/commonsteps/floppy_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the HTTPConfig struct in packer-plugin-sdk/multistep/commonsteps/http_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the HTTPConfig struct in multistep/commonsteps/http_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the HTTPConfig struct in packer-plugin-sdk/multistep/commonsteps/http_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the HTTPConfig struct in multistep/commonsteps/http_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the ISOConfig struct in packer-plugin-sdk/multistep/commonsteps/iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the ISOConfig struct in multistep/commonsteps/iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the ISOConfig struct in packer-plugin-sdk/multistep/commonsteps/iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the ISOConfig struct in multistep/commonsteps/iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `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,17 +7,16 @@
|
|||
"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
|
||||
* 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.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the ISOConfig struct in packer-plugin-sdk/multistep/commonsteps/iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the ISOConfig struct in multistep/commonsteps/iso_config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- Code generated from the comments of the ShutdownConfig struct in packer-plugin-sdk/shutdowncommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the ShutdownConfig struct in shutdowncommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
- `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
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
<!-- Code generated from the comments of the ShutdownConfig struct in packer-plugin-sdk/shutdowncommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
<!-- Code generated from the comments of the ShutdownConfig struct in shutdowncommand/config.go; DO NOT EDIT MANUALLY -->
|
||||
|
||||
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
|
||||
|
|
Loading…
Reference in New Issue