52 lines
2.6 KiB
Markdown
52 lines
2.6 KiB
Markdown
## Examples
|
|
|
|
In order for new users to get up and running with the packer builder, a few examples of building a machine image with popular distros have been created.
|
|
|
|
In order to see an exhaustive list of configuration options for the packer builder please see the [following documentation](../docs/builders/xenserver-iso.html.markdown). This doc will focus on the details relevant to the particular distro.
|
|
|
|
### Running the examples
|
|
|
|
In order to run this example you will need to perform the following steps:
|
|
1. Export those vars:
|
|
```
|
|
PKR_VAR_remote_host
|
|
PKR_VAR_remote_password
|
|
PKR_VAR_remote_username
|
|
PKR_VAR_sr_name
|
|
PKR_VAR_sr_iso_name
|
|
```
|
|
`PKR_VAR_remote_host` must be the resource pool primary.
|
|
|
|
|
|
2. Run `packer build path/to/defenition.pkr.hcl`
|
|
so for example:
|
|
`packer build examples/centos/centos8-netinstall.pkr.hcl`
|
|
|
|
|
|
### Ubuntu
|
|
|
|
This example has not yet updated to HCL.
|
|
|
|
In order to run this example you will need to perform the following steps:
|
|
1. Export the `XAPI_HOST`, `XAPI_USERNAME` and `XAPI_PASSWORD` environment variables to the current shell. Note: The `XAPI_HOST` must be the resource pool primary.
|
|
2. Run the `packer build` command specifying the storage repositories to use for the ISO upload and for the VM created during the build.
|
|
|
|
```
|
|
# Replace sr_name and sr_iso_name with your storage repositories names
|
|
packer build -debug --var sr_name='Local storage' --var sr_iso_name=LocalISO examples/centos8.json
|
|
|
|
# Do the same variable replacement for the ubuntu example as well.
|
|
packer build -debug --var sr_name='Local storage' --var sr_iso_name=LocalISO examples/ubuntu-2004.json
|
|
```
|
|
|
|
|
|
The Ubuntu example uses the [autoinstall tool](https://ubuntu.com/server/docs/install/autoinstallhttps://ubuntu.com/server/docs/install/autoinstall) to configure the VM template. Please see the [autoinstall docs](https://ubuntu.com/server/docs/install/autoinstall-reference) for an exhaustive list of what is supported.
|
|
|
|
Packer will create a http server to serve the files as specified from the `http_directory` specified in the builder configuration. This is where the [user-data](http/ubuntu-2004/user-data) and [meta-data](http/ubuntu-2004/meta-data) for autoinstall must be present.
|
|
|
|
### Centos
|
|
|
|
The Centos examples use kickstart files to configure the VM template. Please see the [kickstart documentation](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/installation_guide/sect-kickstart-syntax) for the options that are supported.
|
|
|
|
Packer will create a http server to serve the files as specified from the `http_directory` specified in the builder configuration. This is where the [kickstart config](http/centos8/ks-centos8.cfg) file must be present.
|