-
Notifications
You must be signed in to change notification settings - Fork 0
/
variables.pkr.hcl
169 lines (138 loc) · 4.74 KB
/
variables.pkr.hcl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
####################
# Common variables #
####################
variable tags {
description = "Additional tags to apply to the build resources, including the image version"
type = map(string)
default = {}
}
############################
# Authentication variables #
############################
# The following 4 variables are for access via Service Principal
variable subscription_id {
description = "ID of the subscription where the VM image would be built"
type = string
default = null
}
variable tenant_id {
description = "Microsoft Entra tenant ID for the subscription_id"
type = string
default = null
}
variable client_id {
description = "Client ID of the service principle"
type = string
default = null
}
variable client_secret {
description = "Client secret of the service principal"
type = string
default = null
}
# Or you can use an existing auth session from Azure CLI
variable use_azure_cli_auth {
description = "CLI auth will use the information from an active az login session to connect to Azure and set the subscription id and tenant id associated to the signed in account."
type = bool
default = true
}
#####################
# GraphDB variables #
#####################
variable graphdb_version {
description = "Version of GraphDB which will be installed and packaged as VM image"
type = string
}
###################
# Build variables #
###################
variable build_location {
description = "The Azure region where the VM image will be built with Packer"
type = string
default = null
}
variable build_temp_resource_group_name {
description = "Name of the temporary resource group created by Packer during the build. The default is a random generated name."
type = string
default = null
}
variable build_resource_group_name {
description = "Name of a resource group to be used by Packer during the build. Cannot specify this together with build_location or build_temp_resource_group_name."
type = string
default = null
}
variable build_allowed_inbound_ip_addresses {
description = "List of IP addresses and CIDR blocks that should be allowed access to the VM during the building"
type = list(string)
}
// Note: Architecture specific
variable build_vm_size {
description = "Size of the VM used for building"
type = string
default = "Standard_B1ls"
}
variable build_os_type {
description = "Type of the OS, this configures the SSH authorized key"
type = string
default = "Linux"
}
variable build_os_disk_size_gb {
description = "Size of the OS disk in GB (gigabytes). Values of zero or less than zero are ignored."
type = number
default = 30
}
########################
# Base image variables #
########################
// Note: Architecture specific
variable base_image_offer {
description = "Name of the publisher's offer to use for your base image"
type = string
default = "0001-com-ubuntu-server-jammy"
}
variable base_image_publisher {
description = "Name of the publisher to use for your base image (Azure Marketplace Images only)"
type = string
default = "canonical"
}
// Note: Architecture specific
variable base_image_sku {
description = "SKU of the image offer to use for your base image (Azure Marketplace Images only)."
type = string
default = "22_04-lts-gen2"
}
########################################
# Shared Image Gallery (SIG) variables #
########################################
variable gallery_subscription_id {
description = "ID of the subscription where the Shared Image Gallery is located. Can be the same as subscription_id."
type = string
}
variable gallery_resource_group {
description = "Name of the resource group where the Shared Image Gallery is located"
type = string
}
variable gallery_name {
description = "Name of the Shared Image Gallery"
type = string
}
// Note: Architecture specific
variable gallery_image_definition {
description = "Name of the gallery definition for the built images of particular GraphDB version"
type = string
}
variable gallery_image_replication_regions {
description = "A list of regions to replicate the image version in"
type = list(string)
default = []
}
variable gallery_image_replica_count {
description = "The number of replicas of the Image Version to be created per region. Replica count must be between 1 and 100"
type = number
default = 1
}
variable gallery_image_version_exclude_from_latest {
description = "If set to true, Virtual Machines deployed from the latest version of the Image Definition won't use this Image Version"
type = bool
default = false
}