CSV Specifications
This section provides details of different CSV formats, including the definition of columns, possible values, and validation details:
-
Gold Masters CSV
-
Courses CSV
-
HyLabs Users CSV
-
Reservations CSV
-
Classification Rules CSV
CSV specifications for v4 or later
In HyWorks v4, several new fields have been introduced, resulting in updated CSV specifications. If your deployment is running Controller version v4 or later, use the revised specifications described below. For earlier Controller versions, refer to the legacy CSV specifications provided later in this document.
The following CSV formats have been updated:
- Gold Masters CSV
- New fields have been added to support custom computer name assignment when importing a Self-Study Gold Master (SSGM).
- Support has been introduced to configure the Gold Master session type (Single-session or Multi-session).
- Additional fields are available for configuring extended AVD settings, such as Scale Plan and Load Balancer.
- HyLabs Users CSV
- A new mandatory field, Client Type, has been added. This field specifies whether the record represents a User, Group, or OU.
- Existing CSV imports will fail on HyWorks Controller v4 or later if this field is missing or incorrectly configured.
- Reservations CSV
- A new field has been added for course reservations to allow specifying a custom computer name.
Gold Masters CSV
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| UseVDI | Set to 1 to import this record. If the record was already imported and this is set to 0, the record is deleted from the HyLabs configuration and the Reservation Management System (RMS). For a new record, setting this to 0 means the record is not imported. | Yes | Int | 1 | 1 byte | 1,0, blank | 0 | If UseVDI = 1: import. If already imported and UseVDI = 0: Delete from HyLabs. New entry and UseVDI = 0: Do not import. New entry and UseVDI = other than 0/1, e.g., 2 or 'abc': Do not import |
| Provider | The hostname or IP address of the provider server from which the Gold Master will be imported. This provider must already be registered within HyLabs. | No | String | 64 | 1 byte | Allowed hostname and IP address characters | Read from HyLabs settings | E.g., 172.17.23.256 OR vcenter.accops.com. If blank and there is only a single provider in HyLabs, read from HyLabs. If blank and multiple providers in HyLabs: Error to specify provider. If an incorrect provider error occurs, data is not imported. |
| Gold Master Name | Name of the Gold Master as it appears in VMware. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] Check VMware Specs | error | E.g., Maths_gm_001 Blank or incorrect GM name: Do not import an error in the resultant CSV. |
| Max Total VM | The maximum number of virtual machines from this Gold Master that can be running at any one time, counting across all reservations. 0 means no limit; the maximum allowed value is 99999. | No | Number | 5 | 1 byte | 0-99999 | Unlimited | E.g., 500 Blank: Unlimited. Non-numerical value: Do not import an error in the resultant CSV. Greater than 99999: Error |
| Max Active VM | The maximum number of virtual machines from this Gold Master that can be in the running or standby state at any one time, counting across all reservations. 0 means no limit; the maximum allowed value is 99999. | No | Number | 5 | 1 byte | 0-99999 | Unlimited | E.g., 5000 Blank: Unlimited Non-numerical value: Do not import an error in the resultant CSV. Greater than total: Error. Greater than 99999: Error |
| Max Concurrent Connections | The maximum number of virtual machines from this Gold Master that can be concurrently running or in the standby state at any one time, counting across all reservations. 0 means no limit; the maximum allowed value is 99999. | No | Number | 5 | 1 byte | 0-99999 | Unlimited | E.g., 50 Blank: Unlimited Non-numerical value: Do not import an error in the resultant CSV. Greater than total: Error Greater than 99999: Error |
| Assignment Type | Assigns the Gold Master to course use, faculty use, self-study use only, or sets it as the default. C: course, S: self-study only, F: faculty, D: default Gold Master for all users. | No | Character | 1 | 1 byte | [CSFD] | D | E.g., C Blank: Course default, Invalid character other than C, S, F, D, or blank: Error |
| Gold Master Type | Identifies the operating system of the Gold Master. WXXX: Windows or WS16-Win2016, LUXX: Ubuntu, LCXX: CentOS. | Yes | String | 4 | 1 byte | [] | Error | E.g., LUXX Blank: Error Invalid (other than specified): Error |
| RDP Port | The remote connection port. Connections from HyLite to reserved VMs from this Gold Master use this port, e.g., 3389. | No | Integer | 5 | 1 byte | 0-99999 | 3389 | E.g., 3389. Blank: 3389 Invalid values (other than specified): Error. Please note that, by default, the valid port range is 0-65535 |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | E.g., College of Economics Blank: Default Organization or Realm Invalid Organization: Error |
| Provider Options | Indicates the provider combination for AVD, e.g., 1 indicates Azure with AVD. The default value is 0 (Azure without AVD). | No | Int | 1 | 1 byte | 1,0, blank | Default value is 0 (Azure without AVD for Azure; has no effect for other providers) | If an invalid Provider Options value is entered, then the import will fail, and Value for Provider Options is invalid will be displayed in the resultant CSV file |
| Gold Master Session Type | Defines the session type for the Gold Master. 0: Single session, 1: Multi-session. | No | Int | 1 | 1 byte | 1,0, blank | Default value is 0 (Single session) | If an invalid Gold Master Session Type value is entered, then the import will fail, and Value for Gold Master Session Type is invalid will be displayed in the resultant CSV file |
| Load Balancer | Specifies the load balancing strategy. Options are 0 (DepthFirst) and 1 (BreadthFirst). | No | Int | 1 | 1 byte | 1,0, blank | Default is 0 (DepthFirst) | If an invalid Load Balancer value is entered, then the import will fail, and Value for Load Balancer is invalid will be displayed in the resultant CSV file |
| Maximum Session per host | The maximum number of sessions allowed per host. | No | Int | 5 | 1 byte | 0-99999, blank | Default is 10 | If an invalid Maximum Session per host value is entered, then import will fail, and Value for Maximum Session per host is invalid will be displayed in the resultant CSV file |
| Enable Scale Plan | Indicates whether scaling plans are enabled. 0: Disable Scale Plan, 1: Enable Scale Plan. | No | Int | 1 | 1 byte | 1,0, blank | Default is 1 - true | If an invalid Enable Scale Plan value is entered, then the import will fail, and Value for Enable Scale Plan is invalid will be displayed in the resultant CSV file |
| On Prepare, keep minimum % of the host | The minimum percentage of hosts to keep on prepare. | No | Int | 3 | 1 byte | 0-100, blank | Default is 10% | If invalid On Prepare Keep minimum % of host value is entered, then import will fail, and Value for On Prepare Keep minimum % of host is invalid will be displayed in the resultant CSV file |
| Scale-Up on Session Utilisation | The session utilization percentage that triggers scale-up. | No | Int | 3 | 1 byte | 0-100, blank | Default is 60% | If an invalid Scale-Up on Session Utilization value is entered, then the import will fail, and Value for Scale-Up on Session Utilization is invalid will be displayed in the resultant CSV file |
| Use Custom Computer Name | Determines whether reserved VMs use the custom computer name given in the Custom Computer Name field. This is an integer flag, not the name itself. 1: use the custom name, 0: use the conventional naming pattern. | No | Int | 1 | 1 byte | 1, 0, or blank | 0 | If this is set to 1, then the "Custom Computer Name" column is mandatory in the Self-Study Gold Master (SSGM) configuration |
| Custom Computer Name | The custom computer name to assign to reserved VMs. This value is only used when Use Custom Computer Name is set to 1. | No | String | 10 | [A-Za-z0-9-] | 0 | E.g., SCIENCELAB If Use Custom Computer Name is set to 0, checking this name will be skipped (even though it is configured in CSV), and the conventional naming pattern will be used for naming the VMs |
HyLabs Users CSV
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| UseVDI | Set to 1 to import this record. If the record was already imported and this is set to 0, the record is deleted from the database. | No | Int | 1 | 1 byte | 1,0, blank | 0 | If UseVDI = 1: import. If already imported and UseVDI = 0: Delete from HyLabs. New entry and UseVDI = 0: Do not import. New entry and UseVDI = other than 0/1, e.g., 2 or 'abc': Do not import |
| Role | The role of this participant. Participant: Participant/Student, Incharge: Faculty, Assistant: Assistant, XXXXXX: any custom role configured in HyLabs. | Yes | String | 64 | 1 byte | [A-Za-z0-9-_SPACE] | Participant | E.g., Faculty Error if left blank Error if role not found |
| Client Type | Determines whether the record being added is a User, Group, or OU. | Yes | String | 1 byte | U,G,O | error | U- User, G: Group, O: OU | |
| Display Name | The user's display name. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] Check AD Specs | error | E.g., John Dan Error if left blank |
| Username | The AD user ID. | Yes | String | 20 - Username 64 - Group/ OU name |
2 bytes | [A-Za-z0-9-_SPACE] Check AD Specs | error | John Dan Error if left blank |
| Class Code | The code of the course. Does not support multiple values using a custom separator. | No, if custom role | String | 64 | 2 bytes | [A-Za-z0-9-_] | error if HyLabs Role | MATH-001 Error if left blank. Error if the class code is not found |
| The user's email address. | No | String | 254 | 2 bytes | username@domain | Saved as blank | john.dan@accops.com - Error if an invalid email format is specified. | |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | Economics Blank: Default Organization or Realm Invalid Organization: Error |
Reservations CSV
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| UseVDI | Set to 1 to import this record. If the record was already imported and this is set to 0, disable or delete it from the database. | No | Int | 1 | 1 byte | 1,0, blank | 0 | 0 or 1 If UseVDI = 1: import. If already imported and UseVDI = 0: do not process. Like other CSVs, it does not delete existing reservations. New entry and UseVDI = 0: Do not import. New entry and UseVDI = other than 0/1, e.g., 2 or 'abc': Do not import |
| Reservation Type | Indicates whether this is a course reservation or a self-study reservation. C: course (also usable for self-study), S: self-study only. | No | Character | 1 | 1 byte | [CS] | Course Reservation | E.g., C If left blank, then Course reservation. If invalid: Error |
| Class Code | Unique code for each course. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_] | error | E.g., MATH-001 Blank or invalid data: Error |
| Gold Master Name | Name of the Gold Master as it appears in VMware. This Gold Master must already be imported into HyLabs, either using a CSV or from the UI, and its assignment type must be Course or Default. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] Check VMware Specs | error | E.g., Maths_gm_001 Blank or invalid data: Error |
| Max Participant | The number of VMs to create. This number must be less than or equal to the total of students plus faculty plus assistants. | Yes | Number | 5 | 1 byte | 1-99999 | error | E.g., 50 Blank or invalid data or greater than 99999: Error |
| Start Date | The date from which this reservation is created. Format: DD/MM/YYYY. | Yes | Date | 10 | 1 byte | [0-9/] | error | E.g., 19/12/2017 Blank or invalid data: Error |
| End Date | The date on which the reservation expires. Format: DD/MM/YYYY. | Yes No | Date | 10 | 1 byte | [0-9/] | No End Date | E.g., 19/12/2018 Blank or invalid data: Error |
| Schedule Code | A unique code assigned to each schedule according to the timetable, e.g., M1, T3, F4. | Yes | String | 3 | 1 byte | [A-Za-z0-9] | error | E.g., M12 Blank or invalid data: Error |
| Recurrence Pattern | Whether the reservation recurs every day or every week. D: Daily, W: Weekly, 0: not recurring. | No | Character | 1 | 1 byte | [0DW] | 0 (not recurring) | E.g., W Blank: Not recurring Invalid Char: Error |
| Recurring Frequency | How often the reservation recurs. 0: not recurring, 1: every 1 day/week, 2: every 2 days/weeks, 3: every 3 days/weeks, 4: every 4 days/weeks. | No | Int | 1 | 1 byte | [0-5] | 0 (not recurring) | E.g., 1 Blank: Not recurring Invalid Char: Error |
| Days of Schedule | Used when reserving multiple days at the same time. This is a bitwise value: None = 0x0, Monday = 0x1 (1), Tuesday = 0x2 (2), Wednesday = 0x4 (4), Thursday = 0x8 (8), Friday = 0x10 (16), Saturday = 0x20 (32), Sunday = 0x40 (64). | No | Int | 2 | 1 byte | [0/1/2/4/8/ 16/32/64] | 0 | E.g., 1 Blank: 0 = None Invalid Char: Error |
| Start Time | The start time of the reservation. | Yes | Time | 4 | 1 byte | [XXXX] [0-9] | error | E.g., 0900 Blank: Error Invalid Char: Error |
| End Time | The end time of the reservation. | Yes | Time | 4 | 1 byte | [XXXX] [0-9] | error | E.g., 1030 Blank: Error Invalid Char: Error |
| Enable Course Extension | Whether faculty can extend the reservation beyond the end time. It accepts only 0 or 1 as input. | No | Int | 1 | 1 byte | [0-1] | 0 (disable extension) | E.g., 0 or 1 Blank: 0 Invalid Char: Error |
| Course Extension Step Count | If extensions are allowed, how many times a reservation can be extended, e.g., faculty can extend a session at most 5 times. For self-study reservations, this field applies to the student. | No | Int | 2 | 1 byte | [0-9] | 5 (5 times extensions allowed if extension permission) | E.g., 5 If Course Extensions are enabled but this field is blank: 5 times Invalid Char: Error |
| Course Extension Step Interval | The number of minutes added with each extension, e.g., faculty can extend the reservation only by 15 minutes at a time. For self-study reservations, this field applies to the student. | No | Int | 2 | 1 byte | [0-9] | 15 (maximum extension per try) | E.g., 30 If Course Extensions are enabled but this field is blank, the default is 15 minutes. Invalid Char: Error |
| Enable Course Self-Study | Whether students can reserve a VM for self-study. 0: disable self-study, 1: allow self-study. | No | Int | 1 | 1 byte | [0-1] | 0 ( not enabled) | E.g., 1 Blank: 0 Invalid char: Error |
| Self-study Max Count | The maximum self-study VM usage from this reservation. | No | Int | 5 | 1 byte | 1-99999 | same as max participant | E.g., 13 Blank: Same as max participant (if Self-study is enabled) Invalid char: Error |
| Self-study Max Duration | The maximum duration of a self-study reservation, in minutes. 0: no limit, X: minutes. | No | Int | 4 | 1 byte | [0/30/60/120/ 180/240/300] | 0 (no limit) | E.g., 120 Blank: Unlimited Invalid char: Error |
| Self-study Allow Time Extension | Whether the student can extend their reservation. | No | Int | 1 | 1 byte | [0-1] | 0 (disable extension) | E.g., 1 Blank: 0 (Not enabled) Invalid char: Error |
| Self-study Window Start Time | The time after which a self-study reservation can be used (for example, after university work hours). | No | Time | 4 | 1 byte | [XXXX] [0-9] | no limitation | E.g., 1730 Blank: No restrictions Invalid char: Error |
| Self-study Window End Time | The time by which a self-study reservation must finish (for example, before university work hours start). | No | Time | 4 | 1 byte | [XXXX] [0-9] | no limitation | E.g., 0630 Blank: No restrictions Invalid char: Error |
| Delete VM After Reservation Finish | Whether to delete the linked clones once the reservation ends. If set to delete, the linked clones are recreated when the reservation starts again. 0: keep the linked clones, 1: delete linked clones once the reservation time is over (not on expiry). | No | Int | 1 | 1 byte | [0-1] | 0 (keep VM) | E.g., 0 Blank: 0 (Keep VMs) Invalid char: Error |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | E.g., Economics Blank: Default Organization or Realm Invalid Organization: Error |
| Power On VM | The power state of the reserved VMs at the scheduled start. 0: start all VMs on reservation start, 1: start a specified VM count on reservation start, 2: start VMs only when the user connects. | No | Int | 1 | 1 byte | 0=On reservation start-Start all VMs 1= On reservation start-Specify VM Count 2= On user connect | 0 (Start all VMs) | E.g., 0,1 or 2 Blank: Default value Invalid char: Error |
| Specify VM Count | The number of specific VMs to power on. This field is only considered when Power On VM is set to 1. | No | Int | 5 | 1 byte | 0-99999 | 0 | E.g.,0,1,200 Blank: Default Invalid char or value>99999:Error |
| Shutdown VM | The power state of reserved VMs at the end of the schedule and reservation. 0: shut down on reservation end, 1: shut down on user logout and reservation end. | No | Int | 1 | 1 byte | 0=On reservation end 1= On user logout and reservation end | 0 (On reservation end) | E.g., 0 or 1 Blank: Default value Invalid char: Error |
| Inherit from deployment settings | Whether to use custom or default deployment settings. | No | Int | 1 | 1 byte | 0= Inherit from deployment settings 1= Use custom deployment settings | 0 (Inherit default deployment settings) | E.g., 0 or 1 Blank: Default value Invalid char: Error |
| Keep VM | Applies only when Inherit from deployment settings is set to 1. | No | Int | 1 | 1 byte | 0= Shutdown 1= Powered On | 1 | E.g., 0 or 1 Blank: Default value Invalid char: Error |
| Deployment time | The time, in minutes, before the reservation is deployed. | No | Int | 3 | 1 byte | 1-540 (mins) | 60 | E.g.,20,540 Blank: Default Invalid char: Error |
| Preparation time | The time, in minutes, before the reservation VMs are prepared. | No | Int | 3 | 1 byte | 1-180 (mins) | 5 | E.g.,20,180 Blank: Default Invalid char: Error |
| Enable DVM reset | Whether the reservation is persistent or non-persistent. | No | Int | 1 | 1 byte | 0=Persistent 1= Non-persistent Blank | 0 | E.g., 0 or 1 Blank: Default value I Invalid char: Error |
| Use Custom Computer Name | Determines whether reserved VMs use the custom computer name given in the New Computer Name field. This is an integer flag, not the name itself. 1: use the custom name, 0: use the conventional naming pattern. | No | Int | 1 | 1 byte | 1, 0, or blank | 0 | If this is set to 1, then the "New Computer Name" column is mandatory in both the Reservations CSV and the Self-Study Gold Master (SSGM) configuration. |
| New Computer Name | The custom computer name to assign to reserved VMs. This value is only used when Use Custom Computer Name is set to 1. | No | String | 10 | [A-Za-z0-9-] | 0 | E.g., SCIENCELAB If Use Custom Computer Name is set to 0, checking this name will be skipped (even though it is configured in CSV), and the conventional naming pattern will be used for naming the VMs |
Courses CSV
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| UseVDI | Set to 1 to import this record. If the record was already imported and this is set to 0, the record is deleted from the HyLabs configuration and the Reservation Management System (RMS). For a new record, setting this to 0 means the record is not imported. | No | Int | 1 | 1 byte | 1,0, blank | 0 | If UseVDI = 1: import. If already imported and UseVDI = 0: Delete from HyLabs. New entry and UseVDI = 0: Do not import. New entry and UseVDI = other than 0/1, e.g., 2 or 'abc': Do not import |
| Class Code | Unique code for each course. | Yes | String | 16 | 1 byte | [A-Za-z0-9-_] | error | E.g., MATH-001 Class code = blank: Error Not supported chars: Error |
| Class Display Name | The display name of the class. | Yes | String | 50 | 2 bytes | [A-Za-z0-9-_SPACE, Unicode] | error | E.g., Mathematics Class Display Name = blank: error Not supported chars: Error |
| Classroom | The classroom. | No | String | 16 | 2 bytes | [A-Za-z0-9-_SPACE, Unicode] | E.g., LAB 1 No errors if left blank. | |
| Department | The department. | No | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE, Unicode] | E.g., Science No errors if left blank. | |
| Group | The course group name. | No | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] | E.g., ExampleGroup No errors if left blank. | |
| Max Participant Field not in use. |
The number of participants. | Yes | Number | 5 | 1 byte | 0-99999 | 0 | E.g., 50 Non-numeric: Error This field is currently not used in HyLabs course configurations. |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | E.g., Economics Blank: Default Organization or Realm Invalid Organization: Error |
Classification Rules CSV
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| Classification RulesName | The unique name of the classification rule. If the operation is adding and no group with the given name is found, a new group is created. If the operation is adding and a group with the given name is found, a new rule is added to the existing group. If the operation is deleting and no group is found with the given name, an error is thrown. | Yes | String | 250 | 2 | [A-Za-z0-9-_SPACE] | Error | E.g., Lab1 Blank or invalid char: Error |
| Para-Type | The rule type. M: MAC address of the client device, L: LAN IP address of the client, W: WAN IP address of the client. | Yes | Char | 1 | 1 | M/L/W | Error | E.g., L Blank or invalid char: Error |
| Add/Delete | Determines whether to add or delete a rule. A: add a new classification rule, or update an existing rule within the classification rule group. D: delete the existing rule; if no more rules remain, the classification rule group is also deleted. | Yes | Char | 1 | 1 | A- Add, D- Delete | Error | E.g., A Blank or invalid char: Error |
| Para-Value | The value for the classification rule. Allowed formats: 1) MAC address, e.g., 00:0a:95:9d:68:16 or E6-02-9B-8A-D3-51. 2) IP address, e.g., 172.16.4.123. 3) IP subnet, e.g., 192.168.100.14/24. 4) IP range, e.g., 172.16.0.1-172.16.0.50. | Yes | String | 100 | A-Za-z0-9:-/ | Error | E.g., 172.16.8.12 Blank or invalid char: Error | |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | E.g., Economics Blank: Default Organization or Realm Invalid Organization: Error |
CSV specifications for older releases (v3.6 SP2 or older)
Gold Masters CSV
All specifications of the Gold Masters CSV are provided in tabular format below.
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| UseVDI | Set to 1 to import this record. If the record was already imported and this is set to 0, the record is deleted from the HyLabs configuration and the Reservation Management System (RMS). For a new record, setting this to 0 means the record is not imported. | No | Int | 1 | 1 byte | 1,0, blank | 0 | If UseVDI = 1: import. If already imported and UseVDI = 0: Delete from HyLabs. New entry and UseVDI = 0: Do not import. New entry and UseVDI = other than 0/1, e.g., 2 or 'abc': Do not import |
| Provider | The hostname or IP address of the provider server from which the Gold Master will be imported. This provider must already be registered within HyLabs. | No | String | 64 | 1 byte | Allowed hostname and IP address characters | Read from HyLabs settings | E.g., 172.17.23.256 OR vcenter.accops.com If blank and only single provider in HyLabs: read from HyLabs. If blank and multiple providers in HyLabs: Error to specify provider. If an incorrect provider error occurs, data is not imported. |
| Gold Master Name | Name of the Gold Master as it appears in VMware. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] Check VMware Specs | error | E.g., Maths_gm_001 Blank or incorrect GM name: Do not import an error in the resultant CSV. |
| Max Total VM | The maximum number of virtual machines from this Gold Master that can be running at any one time, counting across all reservations. 0 means no limit; the maximum allowed value is 99999. | No | Number | 5 | 1 byte | 0-99999 | Unlimited | E.g., 500 Blank: Unlimited. Non-numerical value: Do not import an error in the resultant CSV. Greater than 99999: Error |
| Max Active VM | The maximum number of virtual machines from this Gold Master that can be in the running or standby state at any one time, counting across all reservations. 0 means no limit; the maximum allowed value is 99999. | No | Number | 5 | 1 byte | 0-99999 | Unlimited | E.g., 5000 Blank: Unlimited Non-numerical value: Do not import an error in the resultant CSV. Greater than total: Error. Greater than 99999: Error |
| Max Concurrent Connections | The maximum number of virtual machines from this Gold Master that can be concurrently running or in the standby state at any one time, counting across all reservations. 0 means no limit; the maximum allowed value is 99999. | No | Number | 5 | 1 byte | 0-99999 | Unlimited | E.g., 50 Blank: Unlimited Non-numerical value: Do not import an error in the resultant CSV. Greater than total: Error Greater than 99999: Error |
| Assignment Type | Assigns the Gold Master to course use, faculty use, self-study use only, or sets it as the default. C: course, S: self-study only, F: faculty, D: default Gold Master for all users. | No | Character | 1 | 1 byte | [CSFD] | D | E.g., C Blank: Course default Invalid character other than C, S, F, D, or blank: Error. |
| Gold Master Type | Identifies the operating system of the Gold Master. WXXX: Windows or WS16-Win2016, LUXX: Ubuntu, LCXX: CentOS. | Yes | String | 4 | 1 byte | [] | Error | E.g., LUXX Blank: Error Invalid (other than specified): Error |
| RDP Port | The remote connection port. Connections from HyLite to reserved VMs from this Gold Master use this port, e.g., 3389. | No | Integer | 5 | 1 byte | 0-99999 | 3389 | E.g., 3389. Blank: 3389 Invalid values (other than specified): Error. Please note that, by default, the valid port range is 0-65535. |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | E.g., College of Economics Blank: Default Organization or Realm Invalid Organization: Error |
Courses CSV
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| UseVDI | Set to 1 to import this record. If the record was already imported and this is set to 0, the record is deleted from the HyLabs configuration and the Reservation Management System (RMS). For a new record, setting this to 0 means the record is not imported. | No | Int | 1 | 1 byte | 1,0, blank | 0 | If UseVDI = 1: import. If already imported and UseVDI = 0: Delete from HyLabs. New entry and UseVDI = 0: Do not import. New entry and UseVDI = other than 0/1, e.g., 2 or 'abc': Do not import |
| Class Code | Unique code for each course. | Yes | String | 16 | 1 byte | [A-Za-z0-9-_] | error | E.g., MATH-001 Class code = blank: Error Not supported chars: Error |
| Class Display Name | The display name of the class. | Yes | String | 50 | 2 bytes | [A-Za-z0-9-_SPACE, Unicode] | error | E.g., Mathematics Class Display Name = blank: error Not supported chars: Error |
| Classroom | The classroom. | No | String | 16 | 2 bytes | [A-Za-z0-9-_SPACE, Unicode] | E.g., LAB 1 No errors if left blank. | |
| Department | The department. | No | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE, Unicode] | E.g., Science: No errors if left blank. | |
| Group | The course group name. | No | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] | E.g., ExampleGroup No errors if left blank. | |
| Max Participant Field not in use. |
The number of participants. | Yes | Number | 5 | 1 byte | 0-99999 | 0 | E.g., 50 Non-numeric: Error This field is currently not used in HyLabs course configurations. |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | E.g., Economics Blank: Default Organization or Realm Invalid Organization: Error |
HyLabs Users CSV
Note
The Class Code field does not support multiple values using a semicolon as a separator. The field for multi-value separation will also be removed from the HyLabs portal > CSV Import Profile wizard.
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| UseVDI | Set to 1 to import this record. If the record was already imported and this is set to 0, the record is deleted from the database. | No | Int | 1 | 1 byte | 1,0, blank | 0 | If UseVDI = 1: import. If already imported and UseVDI = 0: Delete from HyLabs. New entry and UseVDI = 0: Do not import. New entry and UseVDI = other than 0/1, e.g., 2 or 'abc': Do not import |
| Role | The role of this participant. Participant: Participant/Student, Incharge: Faculty, Assistant: Assistant, XXXXXX: any custom role configured in HyLabs. | Yes | String | 64 | 1 byte | [A-Za-z0-9-_SPACE] | Participant | E.g., Faculty Error if left blank Error if role not found |
| Display Name | The user's display name. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] Check AD Specs | error | E.g., Shubhash Yadav Error if left blank |
| Username | The AD user ID. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] Check AD Specs | error | Shubhashyadav Error if left blank |
| Class Code | The code of the course. Does not support multiple values using a custom separator. | No, if custom role | String | 64 | 2 bytes | [A-Za-z0-9-_] | error if HyLabs Role | MATH-001 Error if left blank Error if the class code is not found |
| The user's email address. | No | String | 254 | 2 bytes | username@domain | Saved as blank | Shubhash.Yadav@accops.com - Error if an invalid email format is specified. | |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | Economics Blank: Default Organization or Realm Invalid Organization: Error |
Reservations CSV
In HyWorks v3.4-SP1-HF2, several new fields were added, resulting in different specifications for these versions. If your deployment is using Controller version v3.4-SP1-HF2 or newer, use the specifications below. For older versions, CSV specifications are given later in this document.
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| UseVDI | Set to 1 to import this record. If the record was already imported and this is set to 0, disable or delete it from the database. | No | Int | 1 | 1 byte | 1,0, blank | 0 | 0 or 1 If UseVDI = 1: import. If already imported and UseVDI = 0: do not process. Like other CSVs, it does not delete existing reservations. New entry and UseVDI = 0: Do not import. New entry and UseVDI = other than 0/1, e.g., 2 or 'abc': Do not import |
| Reservation Type | Indicates whether this is a course reservation or a self-study reservation. C: course (also usable for self-study), S: self-study only. | No | Character | 1 | 1 byte | [CS] | Course Reservation | E.g., C If left blank, then Course reservation. If invalid: Error |
| Class Code | Unique code for each course. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_] | error | E.g., MATH-001 Blank or invalid data: Error |
| Gold Master Name | Name of the Gold Master as it appears in VMware. This Gold Master must already be imported into HyLabs, either using a CSV or from the UI, and its assignment type must be Course or Default. | Yes | String | 64 | 2 bytes | [A-Za-z0-9-_SPACE] Check VMware Specs | error | E.g., Maths_gm_001 Blank or invalid data: Error |
| Max Participant | The number of VMs to create. This number must be less than or equal to the total of students plus faculty plus assistants. | Yes | Number | 5 | 1 byte | 1-99999 | error | E.g., 50 Blank or invalid data or greater than 99999: Error |
| Start Date | The date from which this reservation is created. Format: DD/MM/YYYY. | Yes | Date | 10 | 1 byte | [0-9/] | error | E.g., 19/12/2017 Blank or invalid data: Error |
| End Date | The date on which the reservation expires. Format: DD/MM/YYYY. | Yes No | Date | 10 | 1 byte | [0-9/] | No End Date | E.g., 19/12/2018 Blank or invalid data: Error |
| Schedule Code | A unique code assigned to each schedule according to the timetable, e.g., M1, T3, F4. | Yes | String | 3 | 1 byte | [A-Za-z0-9] | error | E.g., M12 Blank or invalid data: Error |
| Recurrence Pattern | Whether the reservation recurs every day or every week. D: Daily, W: Weekly, 0: not recurring. | No | Character | 1 | 1 byte | [0DW] | 0 (not recurring) | E.g., W Blank: Not recurring Invalid Char: Error |
| Recurring Frequency | How often the reservation recurs. 0: not recurring, 1: every 1 day/week, 2: every 2 days/weeks, 3: every 3 days/weeks, 4: every 4 days/weeks. | No | Int | 1 | 1 byte | [0-5] | 0 (not recurring) | E.g., 1 Blank: Not recurring Invalid Char: Error |
| Days of Schedule | Used when reserving multiple days at the same time. This is a bitwise value: None = 0x0, Monday = 0x1 (1), Tuesday = 0x2 (2), Wednesday = 0x4 (4), Thursday = 0x8 (8), Friday = 0x10 (16), Saturday = 0x20 (32), Sunday = 0x40 (64). | No | Int | 2 | 1 byte | [0/1/2/4/8/ 16/32/64] | 0 | E.g., 1 Blank: 0 = None Invalid Char: Error |
| Start Time | The start time of the reservation. | Yes | Time | 4 | 1 byte | [XXXX] [0-9] | error | E.g., 0900 Blank: Error Invalid Char: Error |
| End Time | The end time of the reservation. | Yes | Time | 4 | 1 byte | [XXXX] [0-9] | error | E.g., 1030 Blank: Error Invalid Char: Error |
| Enable Course Extension | Whether faculty can extend the reservation beyond the end time. It accepts only 0 or 1 as input. | No | Int | 1 | 1 byte | [0-1] | 0 (disable extension) | E.g., 0 or 1 Blank: 0 Invalid Char: Error |
| Course Extension Step Count | If extensions are allowed, how many times a reservation can be extended, e.g., faculty can extend a session at most 5 times. For self-study reservations, this field applies to the student. | No | Int | 2 | 1 byte | [0-9] | 5 (5 times extensions allowed if extension permission) | E.g., 5 If Course Extensions are enabled but this field is blank: 5 times Invalid Char: Error |
| Course Extension Step Interval | The number of minutes added with each extension, e.g., faculty can extend the reservation only by 15 minutes at a time. For self-study reservations, this field applies to the student. | No | Int | 2 | 1 byte | [0-9] | 15 (maximum extension per try) | E.g., 30 If Course Extensions are enabled but this field is blank, the default is 15 minutes. Invalid Char: Error |
| Enable Course Self-study | Whether students can reserve a VM for self-study. 0: disable self-study, 1: allow self-study. | No | Int | 1 | 1 byte | [0-1] | 0 (not enabled) | E.g., 1 Blank: 0 Invalid char: Error |
| Self-study Max Count | The maximum self-study VM usage from this reservation. | No | Int | 5 | 1 byte | 1-99999 | same as max participant | E.g., 13 Blank: Same as max participant (if Self-study is enabled), Invalid char: Error |
| Self-study Max Duration | The maximum duration of a self-study reservation, in minutes. 0: no limit, X: minutes. | No | Int | 4 | 1 byte | [0/30/60/120/ 180/240/300] | 0 (no limit) | E.g., 120 Blank: Unlimited Invalid char: Error |
| Self-study Allow Time Extension | Whether the student can extend their reservation. | No | Int | 1 | 1 byte | [0-1] | 0 (disable extension) | E.g., 1 Blank: 0 (Not enabled) Invalid char: Error |
| Self-study Window Start Time | The time after which a self-study reservation can be used (for example, after university work hours). | No | Time | 4 | 1 byte | [XXXX] [0-9] | no limitation | E.g., 1730 Blank: No restrictions Invalid char: Error |
| Self-study Window End Time | The time by which a self-study reservation must finish (for example, before university work hours start). | No | Time | 4 | 1 byte | [XXXX] [0-9] | no limitation | E.g., 0630 Blank: No restrictions Invalid char: Error |
| Delete VM After Reservation Finish | Whether to delete the linked clones once the reservation ends. If set to delete, the linked clones are recreated when the reservation starts again. 0: keep the linked clones, 1: delete linked clones once the reservation time is over (not on expiry). | No | Int | 1 | 1 byte | [0-1] | 0 (keep VM) | E.g., 0 Blank: 0 (Keep VMs) Invalid char: Error |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | E.g., Economics Blank: Default Organization or Realm Invalid Organization: Error |
| Power On VM | The power state of the reserved VMs at the scheduled start. 0: start all VMs on reservation start, 1: start a specified VM count on reservation start, 2: start VMs only when the user connects. | No | Int | 1 | 1 byte | 0= On reservation start-Start all VMs 1= On reservation start-Specify VM Count 2= On user connect | 0 (Start all VMs) | E.g., 0,1 or 2 Blank: Default value Invalid char: Error |
| Specify VM Count | The number of specific VMs to power on. This field is only considered when Power On VM is set to 1. | No | Int | 5 | 1 byte | 0-99999 | 0 | E.g.,0,1,200 Blank: Default Invalid char or value>99999:Error |
| Shutdown VM | The power state of reserved VMs at the end of the schedule and reservation. 0: shut down on reservation end, 1: shut down on user logout and reservation end. | No | Int | 1 | 1 byte | 0= On reservation end 1= On user logout and reservation end | 0 (On reservation end) | E.g., 0 or 1 Blank: Default value Invalid char: Error |
| Inherited from deployment settings | Whether to use custom or default deployment settings. | No | Int | 1 | 1 byte | 0= Inherit from deployment settings 1= Use custom deployment settings | 0 (Inherit default deployment settings) | E.g., 0 or 1 Blank: Default value Invalid char: Error |
| Keep VM | Applies only when Inherited from deployment settings is set to 1. | No | Int | 1 | 1 byte | 0= Shutdown 1= Powered On | 1 | E.g., 0 or 1 Blank: Default value Invalid char: Error |
| Deployment time | The time, in minutes, before the reservation is deployed. | No | Int | 3 | 1 byte | 1-540 (mins) | 60 | E.g.,20,540 Blank: Default Invalid char: Error |
| Preparation time | The time, in minutes, before the reservation VMs are prepared. | No | Int | 3 | 1 byte | 1-180 (mins) | 5 | E.g.,20,180 Blank: Default Invalid char: Error |
| Enable DVM reset | Whether the reservation is persistent or non-persistent. | No | Int | 1 | 1 byte | 0=Persistent 1= Non-persistent Blank | 0 | E.g., 0 or 1 Blank: Default value I Invalid char: Error |
| Use Custom Computer Name | Determines whether reserved VMs use the custom computer name given in the New Computer Name field. This is an integer flag, not the name itself. 1: use the custom name, 0: use the conventional naming pattern. | No | Int | 1 | 1 byte | 1, 0, or blank | 0 | If this is set to 1, then the "New Computer Name" column is mandatory in both the Reservations CSV and the Self-Study Gold Master (SSGM) configuration. |
| New Computer Name | The custom computer name to assign to reserved VMs. This value is only used when Use Custom Computer Name is set to 1. | No | String | 10 | [A-Za-z0-9-] | 0 | E.g., SCIENCELAB If Use Custom Computer Name is set to 0, checking this name will be skipped (even though it is configured in CSV), and the conventional naming pattern will be used for naming the VMs |
Classification Rules CSV
| Column | Description | Mandatory | Type | Max Length | I18N | Allowed Characters | Default Value if missing | Example data and output with different inputs |
|---|---|---|---|---|---|---|---|---|
| Classification RulesName | The unique name of the classification rule. If the operation is adding and no group with the given name is found, a new group is created. If the operation is adding and a group with the given name is found, a new rule is added to the existing group. If the operation is deleting and no group is found with the given name, an error is thrown. | Yes | String | 250 | 2 | [A-Za-z0-9-_SPACE] | Error | E.g., Lab1 Blank or invalid char: Error |
| Para-Type | The rule type: - M: MAC address of client device. - L: LAN IP address of client. - W: WAN IP address of client. |
Yes | Char | 1 | 1 | M/L/W | Error | E.g., L Blank or invalid char: Error |
| Add/Delete | Determines whether to add or delete a rule: - A: Add a new classification rule, or update an existing rule within the classification rule group. - D: Delete the existing rule; if no more rules remain, the classification rule group is also deleted. |
Yes | Char | 1 | 1 | A- Add, D- Delete | Error | E.g., A Blank or invalid char: Error |
| Para-Value | The value for the classification rule. Allowed formats: 1) MAC address, e.g., 00:0a:95:9d:68:16 or E6-02-9B-8A-D3-51 2) IP address, e.g., 172.16.4.123 3) IP subnet, e.g., 192.168.100.14/24, 4) IP range, e.g., 172.16.0.1-172.16.0.50 |
Yes | String | 100 | A-Za-z0-9:-/ | Error | E.g., 172.16.8.12 Blank or invalid char: Error | |
| Realm name | The organization name in HyLabs. Useful when multiple colleges share the same HyLabs deployment, with each college having different authentication settings and resources. | No | String | 64 | 2 bytes | [A-Za-z0-9-_] | default | E.g., Economics Blank: Default Organization or Realm Invalid Organization: Error |