Skip to content

Commit 911fbdb

Browse files
release-v1.0.28
1 parent 665700a commit 911fbdb

34 files changed

Lines changed: 1245 additions & 212 deletions

‎docs/data-sources/image_version.md‎

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ data "citrix_image_version" "example_image_version_by_version_number" {
3535

3636
### Optional
3737

38+
- `aws_ec2_image_specs` (Attributes) Image configuration for AWS EC2 image version. (see [below for nested schema](#nestedatt--aws_ec2_image_specs))
3839
- `id` (String) The id of the image version.
3940
- `timeout` (Attributes) Timeout in minutes for the long-running jobs in image definition resource's create, delete operation(s). (see [below for nested schema](#nestedatt--timeout))
4041
- `version_number` (Number) The version number of the image version.
@@ -51,6 +52,30 @@ data "citrix_image_version" "example_image_version_by_version_number" {
5152
- `session_support` (String) Session support for the image version.
5253
- `vsphere_image_specs` (Attributes) Image configuration for vSphere image version. (see [below for nested schema](#nestedatt--vsphere_image_specs))
5354

55+
<a id="nestedatt--aws_ec2_image_specs"></a>
56+
### Nested Schema for `aws_ec2_image_specs`
57+
58+
Read-Only:
59+
60+
- `image_ami` (String) AMI of the AWS image to be used as the template image for the machine catalog.
61+
- `image_name` (String) The name of the virtual machine image that will be used.
62+
- `machine_profile` (Attributes) The name of the virtual machine that will be used to identify the default value for the tags, virtual machine size, boot diagnostics, host cache property of OS disk, accelerated networking and availability zone. (see [below for nested schema](#nestedatt--aws_ec2_image_specs--machine_profile))
63+
- `service_offering` (String) The AWS VM Sku to use when creating machines.
64+
65+
<a id="nestedatt--aws_ec2_image_specs--machine_profile"></a>
66+
### Nested Schema for `aws_ec2_image_specs.machine_profile`
67+
68+
Read-Only:
69+
70+
- `launch_template_id` (String) The launch template ID of the machine profile.
71+
- `launch_template_name` (String) The launch template name of the machine profile.
72+
- `launch_template_version` (String) The launch template version of the machine profile.
73+
- `vm_id` (String) The instance ID of the machine profile virtual machine.
74+
- `vm_name` (String) The name of the machine profile virtual machine.
75+
- `vm_region_az` (String) The region and availability zone of the machine profile virtual machine.
76+
77+
78+
5479
<a id="nestedatt--timeout"></a>
5580
### Nested Schema for `timeout`
5681

‎docs/resources/amazon_workspaces_core_hypervisor.md‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,14 @@ resource "citrix_amazon_workspaces_core_hypervisor" "example-amazon-workspaces-c
2828
use_iam_role = true
2929
region = "us-east-1"
3030
}
31+
32+
resource "citrix_amazon_workspaces_core_hypervisor" "example-amazon-workspaces-core-hypervisor-using-connector-proxy" {
33+
name = "example-amazon-workspaces-core-hypervisor"
34+
zone = "<Zone Id>"
35+
use_iam_role = true
36+
region = "us-east-1"
37+
use_system_proxy_for_hypervisor_traffic_on_connectors = true
38+
}
3139
```
3240

3341
<!-- schema generated by tfplugindocs -->
@@ -46,6 +54,7 @@ resource "citrix_amazon_workspaces_core_hypervisor" "example-amazon-workspaces-c
4654
- `scopes` (Set of String) The IDs of the scopes for the hypervisor to be a part of.
4755
- `secret_key` (String, Sensitive) The secret key used to authenticate with the AWS APIs.
4856
- `use_iam_role` (Boolean) When set to `true`, the provider will use the IAM role configured on the Citrix Cloud Connector or Delivery Controller instead of the `api_key` and `secret_key` for authentication. Omit this attribute if you want to use `api_key` and `secret_key` for authentication. Default value is `false`.
57+
- `use_system_proxy_for_hypervisor_traffic_on_connectors` (Boolean) When set to `true`, the hypervisor connection will be setup with the proxy configured during connector installation. Default value is `false`.
4958

5059
### Read-Only
5160

‎docs/resources/application_group.md‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,11 @@ resource "citrix_application_group" "example-application-group" {
3434
- `application_group_folder_path` (String) The path of the folder in which the application group is located.
3535
- `description` (String) Description of the application group.
3636
- `enabled` (Boolean) Whether the application group is enabled or not. Defaults to `true`.
37-
- `included_users` (Set of String) Users who can use this application group.
37+
- `included_users` (Set of String) Restrict access to applications in this application group to only users included in this list.
3838

3939
-> **Note** User must be in SID, SAM account name (`DOMAIN\UserOrGroupName`) or UPN (`user@domain.com`) format
40+
41+
~> **Please Note** If `included_users` attribute is omitted or set to `null`, all users in the specified delivery groups will have access to applications in this application group. If attribute is specified as an empty list i.e. `[]`, then no user will have access to the applications in this application group.
4042
- `metadata` (Attributes List) Metadata for the Application Group. (see [below for nested schema](#nestedatt--metadata))
4143
- `restrict_to_tag` (String) The tag to restrict the application group to.
4244
- `scopes` (Set of String) The IDs of the scopes for the application group to be a part of.

‎docs/resources/image_definition.md‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,15 @@ resource "citrix_image_definition" "example_azure_image_definition" {
2727
}
2828
}
2929
30+
resource "citrix_image_definition" "example_aws_ec2_image_definition" {
31+
name = "Example AWS EC2 Image Definition"
32+
description = "Example AWS EC2 Image Definition Description"
33+
os_type = "Windows"
34+
session_support = "MultiSession"
35+
hypervisor = citrix_aws_hypervisor.example_aws_hypervisor.id
36+
hypervisor_resource_pool = citrix_aws_hypervisor_resource_pool.example_aws_hypervisor_resource_pool.id
37+
}
38+
3039
resource "citrix_image_definition" "example_vsphere_image_definition" {
3140
name = "Example vSphere Image Definition"
3241
description = "Example vSphere Image Definition Description"

‎docs/resources/image_version.md‎

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,28 @@ resource "citrix_image_version" "example_vsphere_image_version" {
6565
}
6666
}
6767
68+
resource "citrix_image_version" "example_aws_ec2_image_version" {
69+
image_definition = citrix_image_definition.example_aws_ec2_image_definition.id
70+
hypervisor = citrix_aws_hypervisor.example-aws-hypervisor.id
71+
hypervisor_resource_pool = citrix_aws_hypervisor_resource_pool.example-aws-hypervisor-resource-pool.id
72+
description = "Example image version for AWS EC2"
73+
74+
aws_ec2_image_specs = {
75+
service_offering = "t3.medium"
76+
ami_name = "example_master_image"
77+
ami_id = "ami-00000000000000000"
78+
machine_profile = {
79+
vm_name = "example-vm-name"
80+
vm_id = "i-xxxxxxxxx"
81+
vm_region_az = "us-east-1c" # Example. Chose the region and availability zone where your VM is located.
82+
# For machine profile, you can either provide VM related details or launch template related details, but not both.
83+
# launch_template_name = "example_launch_template"
84+
# launch_template_id = "lt-example"
85+
# launch_template_version = "1"
86+
}
87+
}
88+
}
89+
6890
resource "citrix_image_version" "example_workspaces_core_image_version" {
6991
image_definition = citrix_image_definition.example_workspaces_core_image_definition.id
7092
hypervisor = citrix_amazon_workspaces_core_hypervisor.example-amazon-workspaces-core-hypervisor.id
@@ -96,6 +118,7 @@ resource "citrix_image_version" "example_workspaces_core_image_version" {
96118
### Optional
97119

98120
- `amazon_workspaces_core_image_specs` (Attributes) Image configuration for Amazon Workspaces Core image version. (see [below for nested schema](#nestedatt--amazon_workspaces_core_image_specs))
121+
- `aws_ec2_image_specs` (Attributes) Image configuration for AWS EC2 image version. (see [below for nested schema](#nestedatt--aws_ec2_image_specs))
99122
- `azure_image_specs` (Attributes) Image configuration for Azure image version. (see [below for nested schema](#nestedatt--azure_image_specs))
100123
- `description` (String) Description of the image version.
101124
- `network_mapping` (Attributes List) Specifies how the attached NICs are mapped to networks. (see [below for nested schema](#nestedatt--network_mapping))
@@ -133,6 +156,30 @@ Optional:
133156

134157

135158

159+
<a id="nestedatt--aws_ec2_image_specs"></a>
160+
### Nested Schema for `aws_ec2_image_specs`
161+
162+
Required:
163+
164+
- `ami_id` (String) ID of AWS EC2 image to be used as the template image for the machine catalog.
165+
- `ami_name` (String) The name of the AWS EC2 image that will be used.
166+
- `machine_profile` (Attributes) The name of the virtual machine that will be used to identify the default value for the tags, virtual machine size, boot diagnostics, host cache property of OS disk, accelerated networking and availability zone.<br />While providing machine profile, specify either `vm_name + vm_region_az + vm_id` or `launch_template_name + launch_template_version + launch_template_id`, but not both. (see [below for nested schema](#nestedatt--aws_ec2_image_specs--machine_profile))
167+
- `service_offering` (String) The AWS VM Sku to use when creating machines.
168+
169+
<a id="nestedatt--aws_ec2_image_specs--machine_profile"></a>
170+
### Nested Schema for `aws_ec2_image_specs.machine_profile`
171+
172+
Optional:
173+
174+
- `launch_template_id` (String) The launch template ID of the machine profile.
175+
- `launch_template_name` (String) The launch template name of the machine profile.
176+
- `launch_template_version` (String) The launch template version of the machine profile.
177+
- `vm_id` (String) The instance ID of the machine profile virtual machine.
178+
- `vm_name` (String) The name of the machine profile virtual machine.
179+
- `vm_region_az` (String) The region and availability zone of the machine profile virtual machine.
180+
181+
182+
136183
<a id="nestedatt--azure_image_specs"></a>
137184
### Nested Schema for `azure_image_specs`
138185

‎docs/resources/machine_catalog.md‎

Lines changed: 91 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ resource "citrix_machine_catalog" "example-azure-mtsession" {
6060
persist_vm = true
6161
writeback_cache_disk_size_gb = 127
6262
writeback_cache_memory_size_mb = 256
63+
writeback_cache_drive_letter = "E"
6364
storage_cost_saving = true
6465
}
6566
}
@@ -104,6 +105,7 @@ resource "citrix_machine_catalog" "example_azure_prepared_image_mtsession" {
104105
persist_vm = true
105106
writeback_cache_disk_size_gb = 127
106107
writeback_cache_memory_size_mb = 256
108+
writeback_cache_drive_letter = "E"
107109
storage_cost_saving = true
108110
}
109111
}
@@ -180,7 +182,13 @@ resource "citrix_machine_catalog" "example-aws-mtsession" {
180182
security_groups = [
181183
"default"
182184
]
183-
tenancy_type = "Shared"
185+
tenancy_type = "Shared"
186+
secondary_vm_sizes = [
187+
{
188+
vm_size = "t2.micro"
189+
use_spot_pricing_if_available = false
190+
}
191+
]
184192
}
185193
number_of_total_machines = 1
186194
machine_account_creation_rules ={
@@ -234,6 +242,57 @@ resource "citrix_machine_catalog" "example-aws-with-machine-profile" {
234242
}
235243
}
236244
245+
resource "citrix_machine_catalog" "example-aws-mtsession-with-prepared-image" {
246+
name = "example-aws-mtsession-with-prepared-image"
247+
description = "Example multi-session catalog on AWS hypervisor using Prepared Image"
248+
zone = "<zone Id>"
249+
allocation_type = "Random"
250+
session_support = "MultiSession"
251+
provisioning_type = "MCS"
252+
provisioning_scheme = {
253+
hypervisor = citrix_aws_hypervisor.example-aws-hypervisor.id
254+
hypervisor_resource_pool = citrix_aws_hypervisor_resource_pool.example-aws-hypervisor-resource-pool.id
255+
identity_type = "ActiveDirectory"
256+
machine_domain_identity = {
257+
domain = "<DomainFQDN>"
258+
domain_ou = "<DomainOU>"
259+
service_account = "<Admin Username>"
260+
service_account_password = "<Admin Password>"
261+
}
262+
aws_machine_config = {
263+
prepared_image = {
264+
image_definition = citrix_image_definition.example_aws_ec2_image_definition.id
265+
image_version = citrix_image_version.example_aws_ec2_image_version.id
266+
}
267+
service_offering = "t2.small"
268+
security_groups = [
269+
"default"
270+
]
271+
tenancy_type = "Shared"
272+
secondary_vm_sizes = [
273+
{
274+
vm_size = "t2.micro"
275+
use_spot_pricing_if_available = false
276+
}
277+
]
278+
machine_profile = {
279+
vm_name = "example-vm-name"
280+
vm_id = "i-xxxxxxxxx"
281+
vm_region_az = "us-east-1c" # Example. Chose the region and availability zone where your VM is located.
282+
# For machine profile, you can either provide VM related details or launch template related details, but not both.
283+
# launch_template_name = "example_launch_template"
284+
# launch_template_id = "lt-example"
285+
# launch_template_version = "1"
286+
}
287+
}
288+
number_of_total_machines = 1
289+
machine_account_creation_rules ={
290+
naming_scheme = "aws-multi-##"
291+
naming_scheme_type = "Numeric"
292+
}
293+
}
294+
}
295+
237296
resource "citrix_machine_catalog" "example-amazon-workspaces-core-mtsession" {
238297
name = "example-amazon-workspaces-core-mtsession"
239298
description = "Example multi-session catalog on Amazon WorkSpaces Core hypervisor"
@@ -879,16 +938,20 @@ Required:
879938

880939
Required:
881940

882-
- `image_ami` (String) AMI of the AWS image to be used as the template image for the machine catalog.
883-
- `master_image` (String) The name of the virtual machine image that will be used.
884941
- `service_offering` (String) The AWS VM Sku to use when creating machines.
885942
- `tenancy_type` (String) Tenancy type of the machine. Choose between `Shared`, `Instance` and `Host`.
886943

887944
Optional:
888945

946+
- `image_ami` (String) AMI of the AWS image to be used as the template image for the machine catalog.
889947
- `image_update_reboot_options` (Attributes) The options for how rebooting is performed for image update. When omitted, image update on the VDAs will be performed on next shutdown. (see [below for nested schema](#nestedatt--provisioning_scheme--aws_machine_config--image_update_reboot_options))
890948
- `machine_profile` (Attributes) The name of the virtual machine that will be used to identify the default value for the tags, virtual machine size, boot diagnostics, host cache property of OS disk, accelerated networking and availability zone.<br />While providing machine profile, specify either `vm_name + vm_region_az + vm_id` or `launch_template_name + launch_template_version + launch_template_id`, but not both. (see [below for nested schema](#nestedatt--provisioning_scheme--aws_machine_config--machine_profile))
949+
- `master_image` (String) The name of the virtual machine image that will be used.
891950
- `master_image_note` (String) The note for the master image.
951+
- `prepared_image` (Attributes) Specifying the prepared master image to be used for machine catalog. (see [below for nested schema](#nestedatt--provisioning_scheme--aws_machine_config--prepared_image))
952+
- `secondary_vm_sizes` (Attributes List) Secondary VM sizes to be used when the primary machine size (service_offering) reaches full capacity. A maximum of 10 VM sizes can be specified. The priority of the VM sizes is determined by the order in which they are specified with the first VM size having the highest priority.
953+
954+
~> **Please Note** The `secondary_vm_sizes` cannot contain the value of `service_offering` (see [below for nested schema](#nestedatt--provisioning_scheme--aws_machine_config--secondary_vm_sizes))
892955
- `security_groups` (List of String) Security groups to associate with the machine. If omitted, the VPC's default security group is used.<br />Do not specify this value if a machine_profile is provided, as the security groups will be derived from the machine profile instead.
893956

894957
<a id="nestedatt--provisioning_scheme--aws_machine_config--image_update_reboot_options"></a>
@@ -918,6 +981,27 @@ Optional:
918981
- `vm_region_az` (String) The region and availability zone of the machine profile virtual machine.
919982

920983

984+
<a id="nestedatt--provisioning_scheme--aws_machine_config--prepared_image"></a>
985+
### Nested Schema for `provisioning_scheme.aws_machine_config.prepared_image`
986+
987+
Required:
988+
989+
- `image_definition` (String) ID of the image definition.
990+
- `image_version` (String) ID of the image version.
991+
992+
993+
<a id="nestedatt--provisioning_scheme--aws_machine_config--secondary_vm_sizes"></a>
994+
### Nested Schema for `provisioning_scheme.aws_machine_config.secondary_vm_sizes`
995+
996+
Required:
997+
998+
- `vm_size` (String) The name of the VM SKU.
999+
1000+
Optional:
1001+
1002+
- `use_spot_pricing_if_available` (Boolean) The cloud provider supports two types of VMs: regular and spot. Regular VMs are standard VMs with pay-as-you-go prices. Spot is offered at a discounted rate, utilizing unused cloud provider capacity. Set this to `true` to use spot pricing if it's available for the specified VM SKU.
1003+
1004+
9211005

9221006
<a id="nestedatt--provisioning_scheme--azure_machine_config"></a>
9231007
### Nested Schema for `provisioning_scheme.azure_machine_config`
@@ -938,7 +1022,7 @@ Optional:
9381022
- `machine_profile` (Attributes) The name of the virtual machine or template spec that will be used to identify the default value for the tags, virtual machine size, boot diagnostics, host cache property of OS disk, accelerated networking and availability zone.<br />Required when provisioning_type is set to PVSStreaming or when identity_type is set to `AzureAD` (see [below for nested schema](#nestedatt--provisioning_scheme--azure_machine_config--machine_profile))
9391023
- `master_image_note` (String) The note for the master image.
9401024
- `prepared_image` (Attributes) Specifying the prepared master image to be used for machine catalog. (see [below for nested schema](#nestedatt--provisioning_scheme--azure_machine_config--prepared_image))
941-
- `secondary_vm_sizes` (Attributes List) Secondary VM sizes to be used when the primary machine size (service_offering) reaches full capacity. A maxiumum of 10 VM sizes can be specified. The priority of the VM sizes is determined by the order in which they are specified with the first VM size having the highest priority.
1025+
- `secondary_vm_sizes` (Attributes List) Secondary VM sizes to be used when the primary machine size (service_offering) reaches full capacity. A maximum of 10 VM sizes can be specified. The priority of the VM sizes is determined by the order in which they are specified with the first VM size having the highest priority.
9421026

9431027
~> **Please Note** This field can only be used when `machine_profile` is specified. (see [below for nested schema](#nestedatt--provisioning_scheme--azure_machine_config--secondary_vm_sizes))
9441028
- `use_azure_compute_gallery` (Attributes) Use this to place prepared image in Azure Compute Gallery. Required when `storage_type = Azure_Ephemeral_OS_Disk`.
@@ -1034,11 +1118,11 @@ Required:
10341118

10351119
Required:
10361120

1037-
- `vm_size` (String) The name of the Azure VM SKU.
1121+
- `vm_size` (String) The name of the VM SKU.
10381122

10391123
Optional:
10401124

1041-
- `use_spot_pricing_if_available` (Boolean) Azure supports two types of VMs: regular and spot. Regular VMs are standard VMs with pay-as-you-go prices. Spot is offered by Azure at a discounted rate, utilizing unused Azure capacity. Set this to `true` to use spot pricing if it's available for the specified VM SKU.
1125+
- `use_spot_pricing_if_available` (Boolean) The cloud provider supports two types of VMs: regular and spot. Regular VMs are standard VMs with pay-as-you-go prices. Spot is offered at a discounted rate, utilizing unused cloud provider capacity. Set this to `true` to use spot pricing if it's available for the specified VM SKU.
10421126

10431127

10441128
<a id="nestedatt--provisioning_scheme--azure_machine_config--use_azure_compute_gallery"></a>
@@ -1064,6 +1148,7 @@ Optional:
10641148

10651149
- `persist_wbc` (Boolean) Persist Write-back Cache
10661150
- `storage_cost_saving` (Boolean) Save storage cost by downgrading the storage type of the disk to Standard HDD when VM shut down.
1151+
- `writeback_cache_drive_letter` (String) The drive letter for the write back cache.
10671152
- `writeback_cache_memory_size_mb` (Number) The size of the in-memory write back cache in MB.
10681153

10691154

0 commit comments

Comments
 (0)