Skip to content

Commit c566798

Browse files
authored
Update report
1 parent 0a98944 commit c566798

8 files changed

Lines changed: 2333 additions & 657 deletions

File tree

FortiGate/A-Single-VM/azuredeploy.json

Lines changed: 137 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,34 @@
2727
"description": "Custom naming for the deployed FortiGate resources. This will override the automatic generation based on the prefix for the FortiGate name."
2828
}
2929
},
30-
"fortiGateLicenseType": {
30+
"fortiGateImageSKU_x64": {
3131
"type": "string",
32-
"defaultValue": "fortinet_fg-vm_byol",
32+
"defaultValue": "fortinet_fg-vm",
3333
"allowedValues": [
34-
"fortinet_fg-vm_byol",
35-
"fortinet_fg-vm_payg"
34+
"fortinet_fg-vm",
35+
"fortinet_fg-vm_payg_2023"
36+
],
37+
"metadata": {
38+
"description": "Identifies whether to to use PAYG (on demand licensing) or BYOL license model (where license is purchased separately"
39+
}
40+
},
41+
"fortiGateImageSKU_x64_g2": {
42+
"type": "string",
43+
"defaultValue": "fortinet_fg-vm_g2",
44+
"allowedValues": [
45+
"fortinet_fg-vm_g2",
46+
"fortinet_fg-vm_payg_2023_g2"
47+
],
48+
"metadata": {
49+
"description": "Identifies whether to to use PAYG (on demand licensing) or BYOL license model (where license is purchased separately"
50+
}
51+
},
52+
"fortiGateImageSKU_arm64": {
53+
"type": "string",
54+
"defaultValue": "fortinet_fg-vm_arm64",
55+
"allowedValues": [
56+
"fortinet_fg-vm_arm64",
57+
"fortinet_fg-vm_payg_2023_arm64"
3658
],
3759
"metadata": {
3860
"description": "Identifies whether to to use PAYG (on demand licensing) or BYOL license model (where license is purchased separately"
@@ -43,45 +65,122 @@
4365
"defaultValue": "x64",
4466
"allowedValues": [
4567
"x64",
46-
"_g2",
47-
"_arm64"
68+
"x64_g2",
69+
"arm64"
4870
],
4971
"metadata": {
5072
"description": "Indicates the instance Architecture of the VM deployment. Intel/AMD, Intel/AMD gen2 VM or ARM"
5173
}
5274
},
5375
"fortiGateImageVersion_x64": {
5476
"type": "string",
55-
"defaultValue": "7.4.11",
77+
"defaultValue": "7.4.7",
5678
"allowedValues": [
57-
"7.4.11",
58-
"7.2.13",
59-
"7.0.19"
79+
"latest",
80+
"7.6.0",
81+
"7.4.9",
82+
"7.4.8",
83+
"7.4.7",
84+
"7.4.6",
85+
"7.4.5",
86+
"7.4.4",
87+
"7.4.3",
88+
"7.4.2",
89+
"7.4.1",
90+
"7.4.0",
91+
"7.2.12",
92+
"7.2.11",
93+
"7.2.10",
94+
"7.2.9",
95+
"7.2.8",
96+
"7.2.7",
97+
"7.2.6",
98+
"7.2.5",
99+
"7.2.4",
100+
"7.2.3",
101+
"7.2.2",
102+
"7.2.1",
103+
"7.2.0",
104+
"7.0.17",
105+
"7.0.15",
106+
"7.0.14",
107+
"7.0.13",
108+
"7.0.12",
109+
"7.0.11",
110+
"7.0.10",
111+
"7.0.9",
112+
"7.0.8",
113+
"7.0.6",
114+
"7.0.5",
115+
"7.0.4",
116+
"7.0.3",
117+
"7.0.2",
118+
"7.0.1",
119+
"7.0.0",
120+
"6.4.16",
121+
"6.4.15",
122+
"6.4.13",
123+
"6.4.12",
124+
"6.4.11",
125+
"6.4.10",
126+
"6.4.9",
127+
"6.4.8",
128+
"6.4.7",
129+
"6.4.6",
130+
"6.4.5",
131+
"6.4.3",
132+
"6.4.2",
133+
"6.4.0",
134+
"6.2.5",
135+
"6.2.4",
136+
"6.2.2",
137+
"6.2.0"
60138
],
61139
"metadata": {
62-
"description": "Select the image version supporting Generation 1 VMs"
140+
"description": "Select the image version"
63141
}
64142
},
65143
"fortiGateImageVersion_x64_g2": {
66144
"type": "string",
67-
"defaultValue": "7.6.6",
145+
"defaultValue": "7.6.200",
68146
"allowedValues": [
69-
"7.6.6"
147+
"latest",
148+
"7.6.200",
149+
"7.6.100",
150+
"7.6.4",
151+
"7.6.3"
70152
],
71153
"metadata": {
72154
"description": "Select the image version supporting Generation 2 VMs"
73155
}
74156
},
75157
"fortiGateImageVersion_arm64": {
76158
"type": "string",
77-
"defaultValue": "7.6.6",
159+
"defaultValue": "7.6.2",
78160
"allowedValues": [
79-
"7.6.6",
161+
"latest",
162+
"7.6.5",
163+
"7.6.4",
164+
"7.6.3",
165+
"7.6.2",
166+
"7.6.1",
167+
"7.6.0",
80168
"7.4.11",
81-
"7.2.13"
169+
"7.4.9",
170+
"7.4.8",
171+
"7.4.7",
172+
"7.4.6",
173+
"7.4.5",
174+
"7.4.4",
175+
"7.4.3",
176+
"7.2.12",
177+
"7.2.11",
178+
"7.2.10",
179+
"7.2.9",
180+
"7.2.8"
82181
],
83182
"metadata": {
84-
"description": "Select the image version supporting ARM64 VMs"
183+
"description": "Select the image version"
85184
}
86185
},
87186
"fortiGateAdditionalCustomData": {
@@ -93,7 +192,7 @@
93192
},
94193
"instanceType_x64": {
95194
"type": "string",
96-
"defaultValue": "Standard_D4s_v4",
195+
"defaultValue": "Standard_D2s_v3",
97196
"allowedValues": [
98197
"Standard_F2s",
99198
"Standard_F4s",
@@ -165,7 +264,7 @@
165264
},
166265
"instanceType_x64_g2": {
167266
"type": "string",
168-
"defaultValue": "Standard_D4s_v5",
267+
"defaultValue": "Standard_D2s_v6",
169268
"allowedValues": [
170269
"Standard_D2_v4",
171270
"Standard_D4_v4",
@@ -254,7 +353,7 @@
254353
},
255354
"instanceType_arm64": {
256355
"type": "string",
257-
"defaultValue": "Standard_D4ps_v6",
356+
"defaultValue": "Standard_D2ps_v6",
258357
"allowedValues": [
259358
"Standard_D2ps_v6",
260359
"Standard_D4ps_v6",
@@ -534,17 +633,6 @@
534633
"description": "By default, the deployment will use Azure Marketplace images. In specific cases, using BYOL custom FortiGate images can be deployed from support.fortinet.com."
535634
}
536635
},
537-
"customVHDSource": {
538-
"type": "string",
539-
"defaultValue": "fortinetsite",
540-
"allowedValues": [
541-
"fortinetsite",
542-
"marketplace"
543-
],
544-
"metadata": {
545-
"description": "Select fortinetsite if the BYOL FortiGate image was downloaded from support.fortinet.com. Select marketplace if the image originates from the Azure Marketplace."
546-
}
547-
},
548636
"location": {
549637
"type": "string",
550638
"defaultValue": "[resourceGroup().location]",
@@ -567,12 +655,11 @@
567655
},
568656
"variables": {
569657
"imagePublisher": "fortinet",
570-
"imageOffer": "fortinet_fortigate-vm",
571-
"VMInstanceArchitecture": "[if(equals(parameters('fortiGateInstanceArchitecture'),'x64'),'',parameters('fortiGateInstanceArchitecture'))]",
572-
"fortiGateImageVersion": "[if(equals(parameters('fortiGateInstanceArchitecture'), '_arm64'), parameters('fortiGateImageVersion_arm64'), if(equals(parameters('fortiGateInstanceArchitecture'), '_g2'),parameters('fortiGateImageVersion_x64_g2'),parameters('fortiGateImageVersion_x64')))]",
573-
"fortiGateImageSKU": "[concat(parameters('fortiGateLicenseType'),'_',take(replace(variables('fortiGateImageVersion'), '.',''), 2),variables('VMInstanceArchitecture'))]",
574-
"instanceType": "[if(equals(parameters('fortiGateInstanceArchitecture'), '_arm64'), parameters('instanceType_arm64'), if(equals(parameters('fortiGateInstanceArchitecture'), '_g2'),parameters('instanceType_x64_g2'),parameters('instanceType_x64')))]",
575-
"diskControllerType": "[if(and(equals(parameters('fortiGateInstanceArchitecture'), '_g2'),contains(parameters('instanceType_x64_g2'), '_v6')),'NVMe',json('null'))]",
658+
"imageOffer": "fortinet_fortigate-vm_v5",
659+
"fortiGateImageSKU": "[if(equals(parameters('fortiGateInstanceArchitecture'), 'arm64'), parameters('fortiGateImageSKU_arm64'), if(equals(parameters('fortiGateInstanceArchitecture'), 'x64_g2'),parameters('fortiGateImageSKU_x64_g2'),parameters('fortiGateImageSKU_x64')))]",
660+
"fortiGateImageVersion": "[if(equals(parameters('fortiGateInstanceArchitecture'), 'arm64'), parameters('fortiGateImageVersion_arm64'), if(equals(parameters('fortiGateInstanceArchitecture'), 'x64_g2'),parameters('fortiGateImageVersion_x64_g2'),parameters('fortiGateImageVersion_x64')))]",
661+
"instanceType": "[if(equals(parameters('fortiGateInstanceArchitecture'), 'arm64'), parameters('instanceType_arm64'), if(equals(parameters('fortiGateInstanceArchitecture'), 'x64_g2'),parameters('instanceType_x64_g2'),parameters('instanceType_x64')))]",
662+
"diskControllerType": "[if(and(equals(parameters('fortiGateInstanceArchitecture'), 'x64_g2'),contains(parameters('instanceType_x64_g2'), '_v6'),contains(parameters('fortiGateImageSKU_x64_g2'), '_g2')),'NVMe',json('null'))]",
576663
"availabilitySetName": "[if(equals(parameters('existingAvailabilitySetName'),''),concat(parameters('fortiGateNamePrefix'),'-AvailabilitySet'),parameters('existingAvailabilitySetName'))]",
577664
"availabilitySetId": {
578665
"id": "[resourceId('Microsoft.Compute/availabilitySets', variables('availabilitySetName'))]"
@@ -651,7 +738,7 @@
651738
},
652739
"resources": [
653740
{
654-
"apiVersion": "2025-04-01",
741+
"apiVersion": "2023-07-01",
655742
"name": "[concat(parameters('fortiGateNamePrefix'), '-fortinetdeployment-', uniquestring(resourceGroup().id))]",
656743
"type": "Microsoft.Resources/deployments",
657744
"properties": {
@@ -667,7 +754,7 @@
667754
"condition": "[and(variables('useAS'),equals(parameters('existingAvailabilitySetName'),''))]",
668755
"name": "[variables('availabilitySetName')]",
669756
"type": "Microsoft.Compute/availabilitySets",
670-
"apiVersion": "2025-04-01",
757+
"apiVersion": "2023-03-01",
671758
"location": "[parameters('location')]",
672759
"tags": "[ if(contains(parameters('tagsByResource'), 'Microsoft.Compute/availabilitySets'), union(parameters('fortinetTags'),parameters('tagsByResource')['Microsoft.Compute/availabilitySets']), parameters('fortinetTags')) ]",
673760
"properties": {
@@ -682,7 +769,7 @@
682769
"condition": "[equals(parameters('vnetNewOrExisting'), 'new')]",
683770
"name": "[variables('vnetName')]",
684771
"type": "Microsoft.Network/virtualNetworks",
685-
"apiVersion": "2025-05-01",
772+
"apiVersion": "2023-06-01",
686773
"location": "[parameters('location')]",
687774
"tags": "[ if(contains(parameters('tagsByResource'), 'Microsoft.Network/virtualNetworks'), union(parameters('fortinetTags'),parameters('tagsByResource')['Microsoft.Network/virtualNetworks']), parameters('fortinetTags')) ]",
688775
"dependsOn": [
@@ -723,7 +810,7 @@
723810
"condition": "[equals(parameters('vnetNewOrExisting'), 'new')]",
724811
"type": "Microsoft.Network/routeTables",
725812
"name": "[variables('routeTableProtectedName')]",
726-
"apiVersion": "2025-05-01",
813+
"apiVersion": "2023-06-01",
727814
"location": "[parameters('location')]",
728815
"tags": "[ if(contains(parameters('tagsByResource'), 'Microsoft.Network/routeTables'), union(parameters('fortinetTags'),parameters('tagsByResource')['Microsoft.Network/routeTables']), parameters('fortinetTags')) ]",
729816
"properties": {
@@ -757,7 +844,7 @@
757844
{
758845
"name": "[variables('nsgName')]",
759846
"type": "Microsoft.Network/networkSecurityGroups",
760-
"apiVersion": "2025-05-01",
847+
"apiVersion": "2023-06-01",
761848
"location": "[parameters('location')]",
762849
"tags": "[ if(contains(parameters('tagsByResource'), 'Microsoft.Network/networkSecurityGroups'), union(parameters('fortinetTags'),parameters('tagsByResource')['Microsoft.Network/networkSecurityGroups']), parameters('fortinetTags')) ]",
763850
"properties": {
@@ -797,7 +884,7 @@
797884
"condition": "[equals(parameters('publicIP1NewOrExisting'), 'new')]",
798885
"name": "[variables('publicIP1Name')]",
799886
"type": "Microsoft.Network/publicIPAddresses",
800-
"apiVersion": "2025-05-01",
887+
"apiVersion": "2023-06-01",
801888
"location": "[parameters('location')]",
802889
"tags": "[ if(contains(parameters('tagsByResource'), 'Microsoft.Network/publicIPAddresses'), union(parameters('fortinetTags'),parameters('tagsByResource')['Microsoft.Network/publicIPAddresses']), parameters('fortinetTags')) ]",
803890
"sku": {
@@ -814,7 +901,7 @@
814901
{
815902
"name": "[variables('fgtNic1Name')]",
816903
"type": "Microsoft.Network/networkInterfaces",
817-
"apiVersion": "2025-05-01",
904+
"apiVersion": "2023-06-01",
818905
"location": "[parameters('location')]",
819906
"tags": "[ if(contains(parameters('tagsByResource'), 'Microsoft.Network/networkInterfaces'), union(parameters('fortinetTags'),parameters('tagsByResource')['Microsoft.Network/networkInterfaces'],variables('fastpathtag')), union(parameters('fortinetTags'),variables('fastpathtag'))) ]",
820907
"dependsOn": [
@@ -847,7 +934,7 @@
847934
{
848935
"type": "Microsoft.Network/networkInterfaces",
849936
"name": "[variables('fgtNic2Name')]",
850-
"apiVersion": "2025-05-01",
937+
"apiVersion": "2023-06-01",
851938
"location": "[parameters('location')]",
852939
"tags": "[ if(contains(parameters('tagsByResource'), 'Microsoft.Network/networkInterfaces'), union(parameters('fortinetTags'),parameters('tagsByResource')['Microsoft.Network/networkInterfaces'],variables('fastpathtag')), union(parameters('fortinetTags'),variables('fastpathtag'))) ]",
853940
"dependsOn": [
@@ -879,14 +966,14 @@
879966
{
880967
"type": "Microsoft.Compute/virtualMachines",
881968
"name": "[variables('fgtVmName')]",
882-
"apiVersion": "2025-04-01",
969+
"apiVersion": "2023-03-01",
883970
"tags": "[ if(contains(parameters('tagsByResource'), 'Microsoft.Compute/virtualMachines'), union(parameters('fortinetTags'),parameters('tagsByResource')['Microsoft.Compute/virtualMachines']), parameters('fortinetTags')) ]",
884971
"location": "[parameters('location')]",
885972
"identity": {
886973
"type": "SystemAssigned"
887974
},
888975
"zones": "[if(variables('useAZ'), variables('zone1'), json('null'))]",
889-
"plan": "[if(and(or(equals(parameters('fortiGateLicenseType'),'fortinet_fg-vm_byol'),equals(variables('fortiGateImageSKU'),'fortinet_fg-vm_arm64')),not(equals(parameters('customImageReference'),'')),equals(parameters('customVHDSource'),'fortinetsite')), json('null'), variables('virtualMachinePlan'))]",
976+
"plan": "[if(and(or(equals(variables('fortiGateImageSKU'),'fortinet_fg-vm'),equals(variables('fortiGateImageSKU'),'fortinet_fg-vm_arm64')),not(equals(parameters('customImageReference'),''))), json('null'), variables('virtualMachinePlan'))]",
890977
"dependsOn": [
891978
"[variables('fgtNic1Id')]",
892979
"[variables('fgtNic2Id')]"
@@ -903,7 +990,7 @@
903990
"customData": "[variables('fgtCustomData')]"
904991
},
905992
"storageProfile": {
906-
"imageReference": "[if(and(equals(parameters('fortiGateLicenseType'),'fortinet_fg-vm_byol'),not(equals(parameters('customImageReference'),''))), variables('imageReferenceCustomImage'), variables('imageReferenceMarketplace'))]",
993+
"imageReference": "[if(and(or(equals(variables('fortiGateImageSKU'),'fortinet_fg-vm'),equals(variables('fortiGateImageSKU'),'fortinet_fg-vm_arm64')),not(equals(parameters('customImageReference'),''))), variables('imageReferenceCustomImage'), variables('imageReferenceMarketplace'))]",
907994
"diskControllerType": "[variables('diskControllerType')]",
908995
"osDisk": {
909996
"createOption": "FromImage"
@@ -943,11 +1030,11 @@
9431030
"outputs": {
9441031
"fortiGatePublicIP": {
9451032
"type": "string",
946-
"value": "[if(not(equals(parameters('publicIP1NewOrExisting'), 'none')), reference(variables('publicIP1Id'), '2025-05-01').ipAddress, '')]"
1033+
"value": "[if(not(equals(parameters('publicIP1NewOrExisting'), 'none')), reference(variables('publicIP1Id')).ipAddress, '')]"
9471034
},
9481035
"fortiGateFQDN": {
9491036
"type": "string",
950-
"value": "[if(not(equals(parameters('publicIP1NewOrExisting'), 'none')), reference(variables('publicIP1Id'), '2025-05-01').dnsSettings.fqdn, '' )]"
1037+
"value": "[if(not(equals(parameters('publicIP1NewOrExisting'), 'none')), reference(variables('publicIP1Id')).dnsSettings.fqdn, '' )]"
9511038
}
9521039
}
9531040
}

0 commit comments

Comments
 (0)