Skip to content

Commit

Permalink
release v1.0.9
Browse files Browse the repository at this point in the history
add fix
  • Loading branch information
xinghengl-citrix committed Jan 10, 2025
1 parent 444de6b commit 5518782
Show file tree
Hide file tree
Showing 48 changed files with 1,736 additions and 338 deletions.
51 changes: 51 additions & 0 deletions docs/data-sources/admin_permissions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "citrix_admin_permissions Data Source - citrix"
subcategory: "CVAD"
description: |-
Data source for a list of administrator permissions.
---

# citrix_admin_permissions (Data Source)

Data source for a list of administrator permissions.

## Example Usage

```terraform
# Get all predefined admin permissions
data "citrix_admin_permissions" "all-permissions" { }
# The permissions can then be viewed via:
# terraform apply
# terraform state show data.citrix_admin_permissions.all-permissions
# Example using the data source to create a new custom role
data "citrix_admin_role" "desktop_group_admin_role" {
name = "Desktop Group Custom Admin Role"
description = "Role for managing delivery groups"
permissions = [
// all permissions from the data source that start with "DesktopGroup_"
for permission in data.citrix_admin_permissions.all-permissions.permissions :
permission.id if startswith(permission.id, "DesktopGroup_")
]
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Read-Only

- `permissions` (Attributes List) The list of administrator permissions. (see [below for nested schema](#nestedatt--permissions))

<a id="nestedatt--permissions"></a>
### Nested Schema for `permissions`

Read-Only:

- `description` (String) Description of the admin permission.
- `group_id` (String) ID of the group to which the permission belongs.
- `group_name` (String) Name of the group to which the permission belongs.
- `id` (String) ID of the admin permission.
- `name` (String) Name of the admin permission.
78 changes: 78 additions & 0 deletions docs/data-sources/image_version.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "citrix_image_version Data Source - citrix"
subcategory: "CVAD"
description: |-
Data source an image version. Note that this feature is in Tech Preview.
---

# citrix_image_version (Data Source)

Data source an image version. **Note that this feature is in Tech Preview.**

## Example Usage

```terraform
# Define Image Version data source by id
data "citrix_image_version" "example_image_version_by_id" {
id = "00000000-0000-0000-0000-000000000000"
image_definition = "00000000-0000-0000-0000-000000000000"
}
# Define Image Version data source by version number
data "citrix_image_version" "example_image_version_by_version_number" {
version_number = 1
image_definition = "00000000-0000-0000-0000-000000000000"
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `image_definition` (String) Id of the image definition to associate this image version with.

### Optional

- `id` (String) The id of the image version.
- `version_number` (Number) The version number of the image version.

### Read-Only

- `azure_image_specs` (Attributes) Image configuration for Azure image version. (see [below for nested schema](#nestedatt--azure_image_specs))
- `description` (String) Description of the image version.
- `hypervisor` (String) Id of the hypervisor to use for creating this image version.
- `hypervisor_resource_pool` (String) Id of the hypervisor resource pool to use for creating this image version.
- `os_type` (String) The OS type of the image version.
- `session_support` (String) Session support for the image version.

<a id="nestedatt--azure_image_specs"></a>
### Nested Schema for `azure_image_specs`

Read-Only:

- `disk_encryption_set` (Attributes) The configuration for Disk Encryption Set (DES). The DES must be in the same subscription and region as your resources. If your master image is encrypted with a DES, use the same DES when creating this machine catalog. When using a DES, if you later disable the key with which the corresponding DES is associated in Azure, you can no longer power on the machines in this catalog or add machines to it. (see [below for nested schema](#nestedatt--azure_image_specs--disk_encryption_set))
- `license_type` (String) Windows license type used to provision virtual machines in Azure at the base compute rate. License types include: `Windows_Client` and `Windows_Server`.
- `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. (see [below for nested schema](#nestedatt--azure_image_specs--machine_profile))
- `service_offering` (String) The Azure VM Sku to use when creating machines.
- `storage_type` (String) Storage account type used for provisioned virtual machine disks on Azure. Storage types include: `Standard_LRS`, `StandardSSD_LRS` and `Premium_LRS`.

<a id="nestedatt--azure_image_specs--disk_encryption_set"></a>
### Nested Schema for `azure_image_specs.disk_encryption_set`

Read-Only:

- `disk_encryption_set_name` (String) The name of the disk encryption set.
- `disk_encryption_set_resource_group` (String) The name of the resource group in which the disk encryption set resides.


<a id="nestedatt--azure_image_specs--machine_profile"></a>
### Nested Schema for `azure_image_specs.machine_profile`

Read-Only:

- `machine_profile_resource_group` (String) The name of the resource group where the machine profile VM or template spec is located.
- `machine_profile_template_spec_name` (String) The name of the machine profile template spec.
- `machine_profile_template_spec_version` (String) The version of the machine profile template spec.
- `machine_profile_vm_name` (String) The name of the machine profile virtual machine.
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Please refer to [Citrix Tech Zone](https://community.citrix.com/tech-zone/automa
- [Citrix policies](https://community.citrix.com/tech-zone/automation/cvad-terraform-policies/)

### Demo video
[![alt text](../images/techzone-youtube-thumbnail.png)](https://www.youtube.com/watch?v=c33sMLaCVjY)
[![alt text](https://raw.githubusercontent.com/citrix/terraform-provider-citrix/refs/heads/main/images/techzone-youtube-thumbnail.png)](https://www.youtube.com/watch?v=c33sMLaCVjY)
https://www.youtube.com/watch?v=c33sMLaCVjY

### (On-Premises Only) Enable Web Studio
Expand Down
2 changes: 1 addition & 1 deletion docs/resources/admin_role.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ resource "citrix_admin_role" "cloud_example_role" {
- `name` (String) Name of the admin role.
- `permissions` (Set of String) Permissions to be associated with the admin role.

-> **Note** To get a list of supported permissions, please refer to [Admin Predefined Permissions for Cloud](https://developer-docs.citrix.com/en-us/citrix-daas-service-apis/citrix-daas-rest-apis/apis/#/Admin-APIs/Admin-GetPredefinedPermissions) and [Admin Predefined Permissions for On-Premise](https://developer-docs.citrix.com/en-us/citrix-virtual-apps-desktops/citrix-cvad-rest-apis/apis/#/Admin-APIs/Admin-GetPredefinedPermissions).
-> **Note** To get a list of supported permissions, please refer to [Admin Predefined Permissions for Cloud](https://developer-docs.citrix.com/en-us/citrix-daas-service-apis/citrix-daas-rest-apis/apis/#/Admin-APIs/Admin-GetPredefinedPermissions) and [Admin Predefined Permissions for On-Premise](https://developer-docs.citrix.com/en-us/citrix-virtual-apps-desktops/citrix-cvad-rest-apis/apis/#/Admin-APIs/Admin-GetPredefinedPermissions), or use the `citrix_admin_permissions` data source.

### Optional

Expand Down
8 changes: 6 additions & 2 deletions docs/resources/delivery_group.md
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,9 @@ resource "citrix_delivery_group" "example-delivery-group" {
- `metadata` (Attributes List) Metadata for the Delivery Group. (see [below for nested schema](#nestedatt--metadata))
- `minimum_functional_level` (String) Specifies the minimum functional level for the VDA machines in the delivery group. Defaults to `L7_20`.
- `reboot_schedules` (Attributes List) The reboot schedule for the delivery group. (see [below for nested schema](#nestedatt--reboot_schedules))
- `restricted_access_users` (Attributes) Restrict access to this Delivery Group by specifying users and groups in the allow and block list. If no value is specified, all authenticated users will have access to this Delivery Group. To give access to unauthenticated users, use the `allow_anonymous_access` property. (see [below for nested schema](#nestedatt--restricted_access_users))
- `restricted_access_users` (Attributes) Restrict access to this Delivery Group by specifying users and groups in the allow and block list. To give access to unauthenticated users, use the `allow_anonymous_access` property.

~> **Please Note** If `restricted_access_users` attribute is omitted or set to `null`, all authenticated users will have access to this Delivery Group. If attribute is specified as an empty object i.e. `{}`, then no user will have access to the delivery group because `allow_list` and `block_list` will be set as empty sets by default. (see [below for nested schema](#nestedatt--restricted_access_users))
- `scopes` (Set of String) The IDs of the scopes for the delivery group to be a part of.
- `session_support` (String) The session support for the delivery group. Can only be set to `SingleSession` or `MultiSession`. Specify only if you want to create a Delivery Group without any `associated_machine_catalogs`. Ensure session support is same as that of the prospective Machine Catalogs you will associate this Delivery Group with.
- `sharing_kind` (String) The sharing kind for the delivery group. Can only be set to `Shared` or `Private`. Specify only if you want to create a Delivery Group wthout any `associated_machine_catalogs`.
Expand Down Expand Up @@ -447,7 +449,9 @@ Optional:
~> **Please Note** Session roaming should be set to `false` for Remote PC Delivery Group.
- `enabled` (Boolean) Specify whether to enable the delivery of this desktop. Default is `true`.
- `restrict_to_tag` (String) Restrict session launch to machines with tag specified in GUID.
- `restricted_access_users` (Attributes) Restrict access to this Desktop by specifying users and groups in the allow and block list. If no value is specified, all users that have access to this Delivery Group will have access to the Desktop.
- `restricted_access_users` (Attributes) Restrict access to this Desktop by specifying users and groups in the allow and block list.

~> **Please Note** If `restricted_access_users` attribute is omitted or set to `null`, all authenticated users will have access to this Desktop. If attribute is specified as an empty object i.e. `{}`, then no user will have access to the desktop because `allow_list` and `block_list` will be set as empty sets by default.

~> **Please Note** For Remote PC Delivery Groups desktops, `restricted_access_users` has to be set. (see [below for nested schema](#nestedatt--desktops--restricted_access_users))

Expand Down
10 changes: 10 additions & 0 deletions docs/resources/desktop_icon.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,14 @@ Import is supported using the following syntax:
```shell
# Desktop icon can be imported by specifying the ID
terraform import citrix_desktop_icon.example-desktop-icon 1
```

## Generating Raw Data of an icon
To generate in Linux/Mac terminal use the command:
```
base64 fileName.ico
```
To generate in Powershell:
```
[System.Convert]::ToBase64String(Get-Content fileName.ico -Encoding Byte)
```
24 changes: 12 additions & 12 deletions docs/resources/gac_settings.md
Original file line number Diff line number Diff line change
Expand Up @@ -309,7 +309,7 @@ Optional:
- `value_string` (String) String value (if any) associated with the setting.

<a id="nestedatt--app_settings--linux--settings--auto_launch_protocols_from_origins"></a>
### Nested Schema for `app_settings.linux.settings.value_string`
### Nested Schema for `app_settings.linux.settings.auto_launch_protocols_from_origins`

Required:

Expand All @@ -321,7 +321,7 @@ Optional:


<a id="nestedatt--app_settings--linux--settings--extension_install_allow_list"></a>
### Nested Schema for `app_settings.linux.settings.value_string`
### Nested Schema for `app_settings.linux.settings.extension_install_allow_list`

Required:

Expand All @@ -331,7 +331,7 @@ Required:


<a id="nestedatt--app_settings--linux--settings--managed_bookmarks"></a>
### Nested Schema for `app_settings.linux.settings.value_string`
### Nested Schema for `app_settings.linux.settings.managed_bookmarks`

Required:

Expand Down Expand Up @@ -367,7 +367,7 @@ Optional:
- `value_string` (String) String value (if any) associated with the setting.

<a id="nestedatt--app_settings--macos--settings--auto_launch_protocols_from_origins"></a>
### Nested Schema for `app_settings.macos.settings.value_string`
### Nested Schema for `app_settings.macos.settings.auto_launch_protocols_from_origins`

Required:

Expand All @@ -379,7 +379,7 @@ Optional:


<a id="nestedatt--app_settings--macos--settings--enterprise_browser_sso"></a>
### Nested Schema for `app_settings.macos.settings.value_string`
### Nested Schema for `app_settings.macos.settings.enterprise_browser_sso`

Required:

Expand All @@ -388,7 +388,7 @@ Required:


<a id="nestedatt--app_settings--macos--settings--extension_install_allow_list"></a>
### Nested Schema for `app_settings.macos.settings.value_string`
### Nested Schema for `app_settings.macos.settings.extension_install_allow_list`

Required:

Expand All @@ -398,7 +398,7 @@ Required:


<a id="nestedatt--app_settings--macos--settings--managed_bookmarks"></a>
### Nested Schema for `app_settings.macos.settings.value_string`
### Nested Schema for `app_settings.macos.settings.managed_bookmarks`

Required:

Expand Down Expand Up @@ -435,7 +435,7 @@ Optional:
- `value_string` (String) String value (if any) associated with the setting.

<a id="nestedatt--app_settings--windows--settings--auto_launch_protocols_from_origins"></a>
### Nested Schema for `app_settings.windows.settings.value_string`
### Nested Schema for `app_settings.windows.settings.auto_launch_protocols_from_origins`

Required:

Expand All @@ -447,7 +447,7 @@ Optional:


<a id="nestedatt--app_settings--windows--settings--enterprise_browser_sso"></a>
### Nested Schema for `app_settings.windows.settings.value_string`
### Nested Schema for `app_settings.windows.settings.enterprise_browser_sso`

Required:

Expand All @@ -456,7 +456,7 @@ Required:


<a id="nestedatt--app_settings--windows--settings--extension_install_allow_list"></a>
### Nested Schema for `app_settings.windows.settings.value_string`
### Nested Schema for `app_settings.windows.settings.extension_install_allow_list`

Required:

Expand All @@ -466,7 +466,7 @@ Required:


<a id="nestedatt--app_settings--windows--settings--local_app_allow_list"></a>
### Nested Schema for `app_settings.windows.settings.value_string`
### Nested Schema for `app_settings.windows.settings.local_app_allow_list`

Required:

Expand All @@ -476,7 +476,7 @@ Required:


<a id="nestedatt--app_settings--windows--settings--managed_bookmarks"></a>
### Nested Schema for `app_settings.windows.settings.value_string`
### Nested Schema for `app_settings.windows.settings.managed_bookmarks`

Required:

Expand Down
2 changes: 2 additions & 0 deletions docs/resources/image_version.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,8 @@ resource "citrix_image_version" "example_azure_image_version" {
### Read-Only

- `id` (String) The id of the image version.
- `os_type` (String) The OS type of the image version.
- `session_support` (String) Session support for the image version.
- `version_number` (Number) The version number of the image version.

<a id="nestedatt--azure_image_specs"></a>
Expand Down
56 changes: 55 additions & 1 deletion docs/resources/machine_catalog.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,50 @@ resource "citrix_machine_catalog" "example-azure-mtsession" {
}
}
resource "citrix_machine_catalog" "example_azure_prepared_image_mtsession" {
name = "example_azure_prepared_image_mtsession"
description = "Example multi-session catalog on Azure hypervisor with Prepared Image"
zone = "<zone Id>"
allocation_type = "Random"
session_support = "MultiSession"
provisioning_type = "MCS"
provisioning_scheme = {
hypervisor = citrix_azure_hypervisor.example-azure-hypervisor.id
hypervisor_resource_pool = citrix_azure_hypervisor_resource_pool.example-azure-hypervisor-resource-pool.id
identity_type = "ActiveDirectory"
machine_domain_identity = {
domain = "<DomainFQDN>"
domain_ou = "<DomainOU>"
service_account = "<Admin Username>"
service_account_password = "<Admin Password>"
}
azure_machine_config = {
storage_type = "Standard_LRS"
use_managed_disks = true
service_offering = "Standard_D2_v2"
prepared_image = {
image_definition = citrix_image_definition.example_image_definition.id
image_version = citrix_image_version.example_azure_image_version.id
}
writeback_cache = {
wbc_disk_storage_type = "pd-standard"
persist_wbc = true
persist_os_disk = true
persist_vm = true
writeback_cache_disk_size_gb = 127
writeback_cache_memory_size_mb = 256
storage_cost_saving = true
}
}
availability_zones = ["1","2"]
number_of_total_machines = 1
machine_account_creation_rules ={
naming_scheme = "az-multi-##"
naming_scheme_type ="Numeric"
}
}
}
resource "citrix_machine_catalog" "example-aws-mtsession" {
name = "example-aws-mtsession"
description = "Example multi-session catalog on AWS hypervisor"
Expand Down Expand Up @@ -588,6 +632,7 @@ Optional:
- `license_type` (String) Windows license type used to provision virtual machines in Azure at the base compute rate. License types include: `Windows_Client` and `Windows_Server`.
- `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))
- `master_image_note` (String) The note for the master image.
- `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))
- `use_azure_compute_gallery` (Attributes) Use this to place prepared image in Azure Compute Gallery. Required when `storage_type = Azure_Ephemeral_OS_Disk`. (see [below for nested schema](#nestedatt--provisioning_scheme--azure_machine_config--use_azure_compute_gallery))
- `use_managed_disks` (Boolean) Indicate whether to use Azure managed disks for the provisioned virtual machine.
- `vda_resource_group` (String) Designated resource group where the VDA VMs will be located on Azure.
Expand All @@ -609,7 +654,7 @@ Optional:
- `storage_account` (String) The Azure Storage Account where the image VHD for creating machines is located. Only applicable to Azure VHD image blob.

<a id="nestedatt--provisioning_scheme--azure_machine_config--azure_master_image--gallery_image"></a>
### Nested Schema for `provisioning_scheme.azure_machine_config.azure_master_image.storage_account`
### Nested Schema for `provisioning_scheme.azure_machine_config.azure_master_image.gallery_image`

Required:

Expand Down Expand Up @@ -665,6 +710,15 @@ Optional:
- `machine_profile_vm_name` (String) The name of the machine profile virtual machine.


<a id="nestedatt--provisioning_scheme--azure_machine_config--prepared_image"></a>
### Nested Schema for `provisioning_scheme.azure_machine_config.prepared_image`

Required:

- `image_definition` (String) ID of the image definition.
- `image_version` (String) ID of the image version.


<a id="nestedatt--provisioning_scheme--azure_machine_config--use_azure_compute_gallery"></a>
### Nested Schema for `provisioning_scheme.azure_machine_config.use_azure_compute_gallery`

Expand Down
Loading

0 comments on commit 5518782

Please sign in to comment.