packet: os_(arch|channel|version), ipxe_script_url for both worker/controller
By error some of the variables were still present for either worker or
controller during the time they were actually absent in Lokomotive.
MODIFY
docs/installer/packet.md
docs/installer/packet.md
@@ -63,8 +63,14 @@ cluster "packet" {
dns_zone_id = "XXX"
# Change Packet server location
facility = "ams1"
+ # Boot via iPXE (optional but currently needed for ARM; 'https://raw.githubusercontent.com/kinvolk/flatcar-ipxe-scripts/arm64-usr/packet.ipxe')
+ # ipxe_script_url = ""
+ # Define the CPU architecture (optional; 'amd64', 'arm64')
+ # os_arch = "amd64"
# Define a Flatcar Container Linux channel ('stable', 'beta', 'alpha' or 'edge')
os_channel = "stable"
+ # Define a Flatcar Container Linux version (optional)
+ # os_version = "current"
# Change Packet project ID
project_id = "aaa-bbb-ccc-ddd"
# Change management SSH public key
@@ -116,6 +122,12 @@ cluster "packet" {
# Define an instance type (optional)
# node_type = "t1.small.x86"
+ # Boot via iPXE (optional but currently needed for ARM; 'https://raw.githubusercontent.com/kinvolk/flatcar-ipxe-scripts/arm64-usr/packet.ipxe')
+ # ipxe_script_url = ""
+
+ # Define the CPU architecture (optional; 'amd64', 'arm64')
+ # os_arch = "amd64"
+
# Define a Flatcar Container Linux channel (optional; 'stable', 'beta', 'alpha' or 'edge')
# os_channel = "stable"

MODIFY
pkg/install/packet/packet.go
pkg/install/packet/packet.go
@@ -20,6 +20,8 @@ import (
type workerPool struct {
Name string `hcl:"pool_name,label"`
Count int `hcl:"count"`
+ IPXEScriptURL string `hcl:"ipxe_script_url,optional"`
+ OSArch string `hcl:"os_arch,optional"`
OSChannel string `hcl:"os_channel,optional"`
OSVersion string `hcl:"os_version,optional"`
NodeType string `hcl:"node_type,optional"`
@@ -44,7 +46,9 @@ type config struct {
Facility string `hcl:"facility"`
ProjectID string `hcl:"project_id"`
SSHPubKeys []string `hcl:"ssh_pubkeys"`
+ OSArch string `hcl:"os_arch,optional"`
OSChannel string `hcl:"os_channel,optional"`
+ OSVersion string `hcl:"os_version,optional"`
IPXEScriptURL string `hcl:"ipxe_script_url,optional"`
ManagementCIDRs []string `hcl:"management_cidrs"`
NodePrivateCIDR string `hcl:"node_private_cidr"`

MODIFY
pkg/install/packet/template.go
pkg/install/packet/template.go
@@ -32,9 +32,15 @@ module "packet-{{.Config.ClusterName}}" {
controller_type = "{{ .Config.ControllerType }}"
{{- end }}
+ {{- if .Config.OSArch }}
+ os_arch = "{{ .Config.OSArch }}"
+ {{- end }}
{{- if .Config.OSChannel }}
os_channel = "{{ .Config.OSChannel }}"
{{- end }}
+ {{- if .Config.OSVersion }}
+ os_version = "{{ .Config.OSVersion }}"
+ {{- end }}
{{- if .Config.IPXEScriptURL }}
ipxe_script_url = "{{ .Config.IPXEScriptURL }}"
@@ -107,6 +113,9 @@ module "worker-pool-{{ $index }}" {
ipxe_script_url = "{{ $.Config.IPXEScriptURL }}"
{{- end }}
+ {{- if $pool.OSArch }}
+ os_arch = "{{ $pool.OSArch }}"
+ {{- end }}
{{- if $pool.OSChannel }}
os_channel = "{{ $pool.OSChannel }}"
{{- end }}

packet: os_(arch|channel|version), ipxe_script_url for both worker/controller

By error some of the variables were still present for either worker or
controller during the time they were actually absent in Lokomotive.