Policy types for @turbot/servicenow-azure-compute

Azure > Compute > Availability Set > ServiceNow

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/availabilitySetServiceNow
Category
Targets

Azure > Compute > Availability Set > ServiceNow > Configuration Item

Synchronize the data for the Azure > Compute > Availability Set based on the policies Azure > Compute > Availability Set > ServiceNow > Configuration Item > *

The policy ensures that Azure > Compute > Availability Set data is automatically synchronized as Configuration Items (CIs) in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Compute > Availability Set information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/availabilitySetServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Availability Set > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Compute > Availability Set is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/availabilitySetServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: availabilitySet{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"availability_set_name: {{ $.resource.data.name | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nplatform_fault_domain_count: {{ $.resource.data.platformFaultDomainCount | dump | safe }}\nplatform_update_domain_count: {{ $.resource.data.platformUpdateDomainCount | dump | safe }}\nproximity_placement_group_id: {{ $.resource.data.proximityPlacementGroupId | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsku_capacity: {{ $.resource.data.sku.capacity | dump | safe }}\nsku_name: {{ $.resource.data.sku.name | dump | safe }}\nsku_tier: {{ $.resource.data.sku.tier | dump | safe }}\nstatus: {{ $.resource.data.statuses | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntitle: {{ $.resource.data.title | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\nvirtual_machines: {{ $.resource.data.virtualMachines | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Compute > Availability Set > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Compute > Availability Set data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/availabilitySetServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-compute#/policy/types/availabilitySetServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Compute > Availability Set > ServiceNow > Table

Configure a table for Azure > Compute > Availability Set resource type in ServiceNow via the Azure > Compute > Availability Set > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/availabilitySetServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Availability Set > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Compute > Availability Set data.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/availabilitySetServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_compute_availabilityset",
"label": "Azure > Compute > Availability Set",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "availability_set_name",
"label": "Availability Set Name"
},
{
"name": "id",
"label": "Id"
},
{
"name": "platform_fault_domain_count",
"label": "Platform Fault Domain Count",
"type": "integer"
},
{
"name": "platform_update_domain_count",
"label": "Platform Update Domain Count",
"type": "integer"
},
{
"name": "proximity_placement_group_id",
"label": "Proximity Placement Group ID"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "sku_capacity",
"label": "Sku Capacity",
"type": "integer"
},
{
"name": "sku_name",
"label": "Sku Name"
},
{
"name": "sku_tier",
"label": "Sku Tier"
},
{
"name": "status",
"label": "Status",
"type": "string",
"size": 1000
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "title",
"label": "Title"
},
{
"name": "type",
"label": "Type"
},
{
"name": "virtual_machines",
"label": "Virtual Machines",
"type": "string",
"size": 1000
}
]
}
}

Azure > Compute > Disk > ServiceNow

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskServiceNow
Category
Targets

Azure > Compute > Disk > ServiceNow > Configuration Item

Synchronize the data for the Azure > Compute > Disk based on the policies Azure > Compute > Disk > ServiceNow > Configuration Item > *

The policy ensures that Azure > Compute > Disk data is automatically synchronized as Configuration Items (CIs) in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Compute > Disk information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Disk > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Compute > Disk is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: disk{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"creation_data_gallery_image_reference_id: {{ $.resource.data.creationData.galleryImageReference.id | dump | safe }}\ncreation_data_gallery_image_reference_lun: {{ $.resource.data.creationData.galleryImageReference.lun | dump | safe }}\ncreation_data_image_reference_id: {{ $.resource.data.creationData.imageReference.id | dump | safe }}\ncreation_data_image_reference_lun: {{ $.resource.data.creationData.imageReference.lun | dump | safe }}\ncreation_data_option: {{ $.resource.data.creationData.createOption | dump | safe }}\ncreation_data_source_resource_id: {{ $.resource.data.creationData.sourceResourceId | dump | safe }}\ncreation_data_source_unique_id: {{ $.resource.data.creationData.sourceUniqueId | dump | safe }}\ncreation_data_source_uri: {{ $.resource.data.creationData.sourceUri | dump | safe }}\ncreation_data_storage_account_id: {{ $.resource.data.creationData.storageAccountId | dump | safe }}\ncreation_data_upload_size_bytes: {{ $.resource.data.creationData.uploadSizeBytes | dump | safe }}\ndisk_access_id: {{ $.resource.data.diskAccessId | dump | safe }}\ndisk_iops_read_only: {{ $.resource.data.diskIOPSReadOnly | dump | safe }}\ndisk_iops_read_write: {{ $.resource.data.diskIOPSReadWrite | dump | safe }}\ndisk_mbps_read_only: {{ $.resource.data.diskMBpsReadOnly | dump | safe }}\ndisk_mbps_read_write: {{ $.resource.data.diskMBpsReadWrite | dump | safe }}\ndisk_size_bytes: {{ $.resource.data.diskSizeBytes | dump | safe }}\ndisk_size_gb: {{ $.resource.data.diskSizeGB | dump | safe }}\ndisk_state: {{ $.resource.data.diskState | dump | safe }}\nencryption_disk_encryption_set_id: {{ $.resource.data.encryption.diskEncryptionSetId | dump | safe }}\nencryption_settings_collection_enabled: {{ $.resource.data.encryptionSettingsCollection.enabled | dump | safe }}\nencryption_settings_collection_settings: {{ $.resource.data.encryptionSettingsCollection.encryptionSettings | dump | safe }}\nencryption_settings_collection_version: {{ $.resource.data.encryptionSettingsCollection.encryptionSettingsVersion | dump | safe }}\nencryption_type: {{ $.resource.data.encryption.type | dump | safe }}\nhyper_v_generation: {{ $.resource.data.hyperVGeneration | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\ndisk_managed_by: {{ $.resource.data.managedBy | dump | safe }}\nmanaged_by_extended: {{ $.resource.data.managedByExtended | dump | safe }}\nmax_shares: {{ $.resource.data.maxShares | dump | safe }}\ndisk_name: {{ $.resource.data.name | dump | safe }}\nnetwork_access_policy: {{ $.resource.data.networkAccessPolicy | dump | safe }}\nos_type: {{ $.resource.data.osType | dump | safe }}\nprovisioning_state: {{ $.resource.data.provisioningState | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nshare_info: {{ $.resource.data.shareInfo | dump | safe }}\nsku_name: {{ $.resource.data.sku.name | dump | safe }}\nsku_tier: {{ $.resource.data.sku.tier | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntime_created: {{ $.resource.data.timeCreated | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\nunique_id: {{ $.resource.data.uniqueId | dump | safe }}\nzones: {{ $.resource.data.zones | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Compute > Disk > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Compute > Disk data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-compute#/policy/types/diskServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Compute > Disk > ServiceNow > Table

Configure a table for Azure > Compute > Disk resource type in ServiceNow via the Azure > Compute > Disk > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Disk > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Compute > Disk data.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_compute_disk",
"label": "Azure > Compute > Disk",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "creation_data_gallery_image_reference_id",
"label": "Creation Data Gallery Image Reference ID"
},
{
"name": "creation_data_gallery_image_reference_lun",
"label": "Creation Data Gallery Image Reference Lun",
"type": "integer"
},
{
"name": "creation_data_image_reference_id",
"label": "Creation Data Image Reference ID"
},
{
"name": "creation_data_image_reference_lun",
"label": "Creation Data Image Reference Lun"
},
{
"name": "creation_data_option",
"label": "Creation Data Option"
},
{
"name": "creation_data_source_resource_id",
"label": "Creation Data Source Resource ID"
},
{
"name": "creation_data_source_unique_id",
"label": "Creation Data Source Unique ID"
},
{
"name": "creation_data_source_uri",
"label": "Creation Data Source URI"
},
{
"name": "creation_data_storage_account_id",
"label": "Creation Data Storage Account ID"
},
{
"name": "creation_data_upload_size_bytes",
"label": "Creation Data Upload Size Bytes",
"type": "string",
"size": 200
},
{
"name": "disk_access_id",
"label": "Disk Access ID"
},
{
"name": "disk_iops_read_only",
"label": "Disk IOPS Read Only",
"type": "string",
"size": 200
},
{
"name": "disk_iops_read_write",
"label": "Disk IOPS Read Write",
"type": "string",
"size": 200
},
{
"name": "disk_mbps_read_only",
"label": "Disk MBps Read Only",
"type": "string",
"size": 200
},
{
"name": "disk_mbps_read_write",
"label": "Disk MBps Read Write",
"type": "string",
"size": 200
},
{
"name": "disk_size_bytes",
"label": "Disk Size Bytes",
"type": "string",
"size": 200
},
{
"name": "disk_size_gb",
"label": "Disk Size GB",
"type": "string",
"size": 200
},
{
"name": "disk_state",
"label": "Disk State"
},
{
"name": "encryption_disk_encryption_set_id",
"label": "Encryption Disk Encryption Set ID"
},
{
"name": "encryption_settings_collection_enabled",
"label": "Encryption Settings Collection Enabled",
"type": "boolean"
},
{
"name": "encryption_settings_collection_settings",
"label": "Encryption Settings Collection Settings",
"type": "string",
"size": 1000
},
{
"name": "encryption_settings_collection_version",
"label": "Encryption Settings Collection Version"
},
{
"name": "encryption_type",
"label": "Encryption Type"
},
{
"name": "hyper_v_generation",
"label": "Hyper V Generation"
},
{
"name": "id",
"label": "ID"
},
{
"name": "disk_managed_by",
"label": "Disk Managed By"
},
{
"name": "managed_by_extended",
"label": "Managed By Extended",
"type": "string",
"size": 1000
},
{
"name": "max_shares",
"label": "Max Shares",
"type": "integer"
},
{
"name": "disk_name",
"label": "Disk Name"
},
{
"name": "network_access_policy",
"label": "Network Access Policy"
},
{
"name": "os_type",
"label": "OS Type"
},
{
"name": "provisioning_state",
"label": "Provisioning State"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "share_info",
"label": "Share Info",
"type": "string",
"size": 1000
},
{
"name": "sku_name",
"label": "Sku Name"
},
{
"name": "sku_tier",
"label": "Sku Tier"
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "time_created",
"label": "Time Created"
},
{
"name": "type",
"label": "Type"
},
{
"name": "unique_id",
"label": "Unique ID"
},
{
"name": "zones",
"label": "Zones",
"type": "string",
"size": 1000
}
]
}
}

Azure > Compute > Disk Encryption Set > ServiceNow

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskEncryptionSetServiceNow
Category
Targets

Azure > Compute > Disk Encryption Set > ServiceNow > Configuration Item

Synchronize the data for the Azure > Compute > Disk Encryption Set based on the policies Azure > Compute > Disk Encryption Set > ServiceNow > Configuration Item > *

The policy ensures that Azure > Compute > Disk Encryption Set data is automatically synchronized as Configuration Items (CIs) in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Compute > Disk Encryption Set information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskEncryptionSetServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Disk Encryption Set > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Compute > Disk Encryption Set is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskEncryptionSetServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: diskEncryptionSet{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"active_key_source_vault_id: {{ $.resource.data.activeKey.sourceVault.id | dump | safe }}\nactive_key_url: {{ $.resource.data.activeKey.keyUrl | dump | safe }}\ndisk_encryption_set_name: {{ $.resource.data.name | dump | safe }}\nencryption_type: {{ $.resource.data.encryptionType | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nidentity_principal_id: {{ $.resource.data.identity | dump | safe }}\nidentity_tenant_id: {{ $.resource.data.tenantId | dump | safe }}\nidentity_type: {{ $.resource.data.type | dump | safe }}\nprevious_keys: {{ $.resource.data.previousKeys | dump | safe }}\nprovisioning_state: {{ $.resource.data.provisioningState | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Compute > Disk Encryption Set > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Compute > Disk Encryption Set data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskEncryptionSetServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-compute#/policy/types/diskEncryptionSetServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Compute > Disk Encryption Set > ServiceNow > Table

Configure a table for Azure > Compute > Disk Encryption Set resource type in ServiceNow via the Azure > Compute > Disk Encryption Set > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskEncryptionSetServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Disk Encryption Set > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Compute > Disk Encryption Set data.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/diskEncryptionSetServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_compute_diskencryptionset",
"label": "Azure > Compute > Disk Encryption Set",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "active_key_source_vault_id",
"label": "Active Key Source Vault ID"
},
{
"name": "active_key_url",
"label": "Active Key URL"
},
{
"name": "disk_encryption_set_name",
"label": "Disk Encryption Set Name"
},
{
"name": "encryption_type",
"label": "Encryption Type"
},
{
"name": "id",
"label": "ID"
},
{
"name": "identity_principal_id",
"label": "Identity Principal ID"
},
{
"name": "identity_tenant_id",
"label": "Identity Tenant ID"
},
{
"name": "identity_type",
"label": "Identity Type"
},
{
"name": "previous_keys",
"label": "Previous Keys",
"type": "string",
"size": 1000
},
{
"name": "provisioning_state",
"label": "Provisioning State"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "type",
"label": "Type"
}
]
}
}

Azure > Compute > Image > ServiceNow

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/imageServiceNow
Category
Targets

Azure > Compute > Image > ServiceNow > Configuration Item

Synchronize the data for the Azure > Compute > Image based on the policies Azure > Compute > Image > ServiceNow > Configuration Item > *

The policy ensures that Azure > Compute > Image data is automatically synchronized as Configuration Items (CIs) in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Compute > Image information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/imageServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Image > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Compute > Image is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/imageServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: image{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"hyper_v_generation: {{ $.resource.data.hyperVGeneration | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nimage_name: {{ $.resource.data.name | dump | safe }}\nprovisioning_state: {{ $.resource.data.provisioningState | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsource_virtual_machine_id: {{ $.resource.data.sourceVirtualMachine.id | dump | safe }}\nstorage_profile_data_disks: {{ $.resource.data.storageProfile.dataDisks | dump | safe }}\nstorage_profile_os_disk_blob_uri: {{ $.resource.data.storageProfile.osDisk.blobUri | dump | safe }}\nstorage_profile_os_disk_caching: {{ $.resource.data.storageProfile.osDisk.caching | dump | safe }}\nstorage_profile_os_disk_encryption_set: {{ $.resource.data.storageProfile.osDisk.diskEncryptionSet | dump | safe }}\nstorage_profile_os_disk_managed_disk_id: {{ $.resource.data.storageProfile.osDisk.managedDisk.id | dump | safe }}\nstorage_profile_os_disk_size_gb: {{ $.resource.data.storageProfile.osDisk.diskSizeGB | dump | safe }}\nstorage_profile_os_disk_snapshot_id: {{ $.resource.data.storageProfile.osDisk.snapshot.id | dump | safe }}\nstorage_profile_os_disk_state: {{ $.resource.data.storageProfile.osDisk.osState | dump | safe }}\nstorage_profile_os_disk_storage_account_type: {{ $.resource.data.storageProfile.osDisk.storageAccountType | dump | safe }}\nstorage_profile_os_disk_type: {{ $.resource.data.storageProfile.osDisk.osType | dump | safe }}\nstorage_profile_zone_resilient: {{ $.resource.data.storageProfile.zoneResilient | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Compute > Image > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Compute > Image data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/imageServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-compute#/policy/types/imageServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Compute > Image > ServiceNow > Table

Configure a table for Azure > Compute > Image resource type in ServiceNow via the Azure > Compute > Image > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/imageServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Image > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Compute > Image data.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/imageServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_compute_image",
"label": "Azure > Compute > Image",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "hyper_v_generation",
"label": "Hyper V Generation"
},
{
"name": "id",
"label": "ID"
},
{
"name": "image_name",
"label": "Image Name"
},
{
"name": "provisioning_state",
"label": "Provisioning State"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "source_virtual_machine_id",
"label": "Source Virtual Machine ID"
},
{
"name": "storage_profile_data_disks",
"label": "Storage Profile Data Disks",
"type": "string",
"size": 1000
},
{
"name": "storage_profile_os_disk_blob_uri",
"label": "Storage Profile OS Disk Blob URI"
},
{
"name": "storage_profile_os_disk_caching",
"label": "Storage Profile OS Disk Caching"
},
{
"name": "storage_profile_os_disk_encryption_set",
"label": "Storage Profile OS Disk Encryption Set"
},
{
"name": "storage_profile_os_disk_managed_disk_id",
"label": "Storage Profile OS Disk Managed Disk ID"
},
{
"name": "storage_profile_os_disk_size_gb",
"label": "Storage Profile OS Disk Size GB",
"type": "integer"
},
{
"name": "storage_profile_os_disk_snapshot_id",
"label": "Storage Profile OS Disk Snapshot ID"
},
{
"name": "storage_profile_os_disk_state",
"label": "Storage Profile OS Disk State"
},
{
"name": "storage_profile_os_disk_storage_account_type",
"label": "Storage Profile OS Disk Storage Account Type"
},
{
"name": "storage_profile_os_disk_type",
"label": "Storage Profile OS Disk Type"
},
{
"name": "storage_profile_zone_resilient",
"label": "Storage Profile Zone Resilient",
"type": "boolean"
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "type",
"label": "Type"
}
]
}
}

Azure > Compute > Snapshot > ServiceNow

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/snapshotServiceNow
Category
Targets

Azure > Compute > Snapshot > ServiceNow > Configuration Item

Synchronize the data for the Azure > Compute > Snapshot based on the policies Azure > Compute > Snapshot > ServiceNow > Configuration Item > *

The policy ensures that Azure > Compute > Snapshot data is automatically synchronized as Configuration Items (CIs) in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Compute > Snapshot information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/snapshotServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Snapshot > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Compute > Snapshot is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/snapshotServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: snapshot{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"create_option: {{ $.resource.data.creationData.createOption | dump | safe }}\ndisk_access_id: {{ $.resource.data.diskAccessId | dump | safe }}\ndisk_encryption_set_id: {{ $.resource.data.encryption.diskEncryptionSetId | dump | safe }}\ndisk_size_bytes: {{ $.resource.data.diskSizeBytes | dump | safe }}\ndisk_size_gb: {{ $.resource.data.disSizeGB | dump | safe }}\nencryption_setting_collection_enabled: {{ $.resource.data.encryptionSettingsCollection.enabled | dump | safe }}\nencryption_setting_version: {{ $.resource.data.encryptionSettingsCollection.encryptionSettingsVersion | dump | safe }}\nencryption_settings: {{ $.resource.data.encryptionSettingsCollection.encryptionSettings | dump | safe }}\nencryption_type: {{ $.resource.data.encryption.type | dump | safe }}\ngallery_image_reference_id: {{ $.resource.data.creationData.galleryImageReference.id | dump | safe }}\ngallery_reference_lun: {{ $.resource.data.creationData.galleryImageReference.lun | dump | safe }}\nhyper_v_generation: {{ $.resource.data.hyperVGeneration | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nimage_reference_id: {{ $.resource.data.creationData.imageReference.id | dump | safe }}\nimage_reference_lun: {{ $.resource.data.creationData.imageReference.lun | dump | safe }}\nincremental: {{ $.resource.data.incremental | dump | safe }}\nnetwork_access_policy: {{ $.resource.data.networkAccessPolicy | dump | safe }}\nos_type: {{ $.resource.data.osType | dump | safe }}\nprovisioning_state: {{ $.resource.data.provisioningState | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsku_name: {{ $.resource.data.sku.name | dump | safe }}\nsku_tier: {{ $.resource.data.sku.tier | dump | safe }}\nsnapshot_name: {{ $.resource.data.name | dump | safe }}\nsource_resource_id: {{ $.resource.data.creationData.sourceResourceId | dump | safe }}\nsource_unique_id: {{ $.resource.data.creationData.sourceUniqueId | dump | safe }}\nsource_uri: {{ $.resource.data.creationData.sourceUri | dump | safe }}\nstorage_account_id: {{ $.resource.data.creationData.storageAccountId | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntime_created: {{ $.resource.data.timeCreated | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\nunique_id: {{ $.resource.data.uniqueId | dump | safe }}\nupload_size_bytes: {{ $.resource.data.creationData.uploadSizeBytes | dump | safe }}\nvirtual_machines: {{ $.resource.data.virtualMachines | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Compute > Snapshot > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Compute > Snapshot data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/snapshotServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-compute#/policy/types/snapshotServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Compute > Snapshot > ServiceNow > Table

Configure a table for Azure > Compute > Snapshot resource type in ServiceNow via the Azure > Compute > Snapshot > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/snapshotServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Snapshot > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Compute > Snapshot data.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/snapshotServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_compute_snapshot",
"label": "Azure > Compute > Snapshot",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "create_option",
"label": "Create Option"
},
{
"name": "disk_access_id",
"label": "Disk Access ID"
},
{
"name": "disk_encryption_set_id",
"label": "Disk Encryption Set ID"
},
{
"name": "disk_size_bytes",
"label": "Disk Size Bytes",
"type": "string",
"size": 200
},
{
"name": "disk_size_gb",
"label": "Disk Size Gb",
"type": "integer"
},
{
"name": "encryption_setting_collection_enabled",
"label": "Encryption Setting Collection Enabled",
"type": "boolean"
},
{
"name": "encryption_setting_version",
"label": "Encryption Setting Version"
},
{
"name": "encryption_settings",
"label": "Encryption Settings",
"type": "string",
"size": 1000
},
{
"name": "encryption_type",
"label": "Encryption Type"
},
{
"name": "gallery_image_reference_id",
"label": "Gallery Image Reference ID"
},
{
"name": "gallery_reference_lun",
"label": "Gallery Reference Lun",
"type": "integer"
},
{
"name": "hyper_v_generation",
"label": "Hyper V Generation"
},
{
"name": "id",
"label": "ID"
},
{
"name": "image_reference_id",
"label": "Image Reference ID"
},
{
"name": "image_reference_lun",
"label": "Image Reference Lun",
"type": "integer"
},
{
"name": "incremental",
"label": "Incremental",
"type": "boolean"
},
{
"name": "network_access_policy",
"label": "Network Access Policy"
},
{
"name": "os_type",
"label": "OS Type"
},
{
"name": "provisioning_state",
"label": "Provisioning State"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "sku_name",
"label": "Sku Name"
},
{
"name": "sku_tier",
"label": "Sku Tier"
},
{
"name": "snapshot_name",
"label": "Snapshot Name"
},
{
"name": "source_resource_id",
"label": "Source Resource ID"
},
{
"name": "source_unique_id",
"label": "Source Unique ID"
},
{
"name": "source_uri",
"label": "Source URI"
},
{
"name": "storage_account_id",
"label": "Storage Account ID"
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "time_created",
"label": "Time Created"
},
{
"name": "type",
"label": "Type"
},
{
"name": "unique_id",
"label": "Unique ID"
},
{
"name": "upload_size_bytes",
"label": "Upload Size Bytes"
},
{
"name": "virtual_machines",
"label": "Virtual Machines",
"type": "string",
"size": 1000
}
]
}
}

Azure > Compute > Ssh Public Key > ServiceNow

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/sshPublicKeyServiceNow
Category
Targets

Azure > Compute > Ssh Public Key > ServiceNow > Configuration Item

Synchronize the data for the Azure > Compute > Ssh Public Key based on the policies Azure > Compute > Ssh Public Key > ServiceNow > Configuration Item > *

The policy ensures that Azure > Compute > Ssh Public Key data is automatically synchronized as Configuration Items (CIs) in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Compute > Ssh Public Key information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/sshPublicKeyServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Ssh Public Key > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Compute > Ssh Public Key is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/sshPublicKeyServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: sshPublicKey{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"id: {{ $.resource.data.id | dump | safe }}\npublic_key: {{ $.resource.data.publicKey | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nssh_public_key_name: {{ $.resource.data.name | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Compute > Ssh Public Key > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Compute > Ssh Public Key data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/sshPublicKeyServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-compute#/policy/types/sshPublicKeyServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Compute > Ssh Public Key > ServiceNow > Table

Configure a table for Azure > Compute > Ssh Public Key resource type in ServiceNow via the Azure > Compute > Ssh Public Key > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/sshPublicKeyServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Ssh Public Key > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Compute > Ssh Public Key data.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/sshPublicKeyServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_compute_sshpublickey",
"label": "Azure > Compute > Ssh Public Key",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "id",
"label": "ID"
},
{
"name": "public_key",
"label": "Public Key"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "ssh_public_key_name",
"label": "SSH Public Key Name"
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
}
]
}
}

Azure > Compute > Virtual Machine > ServiceNow

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineServiceNow
Category
Targets

Azure > Compute > Virtual Machine > ServiceNow > Configuration Item

Synchronize the data for the Azure > Compute > Virtual Machine based on the policies Azure > Compute > Virtual Machine > ServiceNow > Configuration Item > *

The policy ensures that Azure > Compute > Virtual Machine data is automatically synchronized as Configuration Items (CIs) in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Compute > Virtual Machine information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Virtual Machine > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Compute > Virtual Machine is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: virtualMachine{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"additional_unattend_content: {{ $.resource.data.osProfile.windowsConfiguration.additionalUnattendContent | dump | safe }}\nadmin_user_name: {{ $.resource.data.osProfile.adminUsername | dump | safe }}\nallow_extension_operations: {{ $.resource.data.osProfile.allowExtensionOperations | dump | safe }}\navailability_set_id: {{ $.resource.data.availabilitySet.id | dump | safe }}\nbilling_profile_max_price: {{ $.resource.data.billingProfile.maxPrice | dump | safe }}\nboot_diagnostics_enabled: {{ $.resource.data.diagnosticsProfile.bootDiagnostics.enabled | dump | safe }}\nboot_diagnostics_storage_uri: {{ $.resource.data.diagnosticsProfile.bootDiagnostics.storageUri | dump | safe }}\ncomputer_name: {{ $.resource.data.osProfile.computerName | dump | safe }}\ndata_disks: {{ $.resource.data.storageProfile.dataDisks | dump | safe }}\ndisable_password_authentication: {{ $.resource.data.osProfile.linuxConfiguration.disablePasswordAuthentication | dump | safe }}\nenable_automatic_updates: {{ $.resource.data.osProfile.windowsConfiguration.enableAutomaticUpdates | dump | safe }}\neviction_policy: {{ $.resource.data.evictionPolicy | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nidentity: {{ $.resource.data.identity | dump | safe }}\nimage_exact_version: {{ $.resource.data.storageProfile.imageReference.exactVersion | dump | safe }}\nimage_id: {{ $.resource.data.storageProfile.imageReference.id | dump | safe }}\nimage_offer: {{ $.resource.data.storageProfile.imageReference.offer | dump | safe }}\nimage_publisher: {{ $.resource.data.storageProfile.imageReference.publisher | dump | safe }}\nimage_sku: {{ $.resource.data.storageProfile.imageReference.sku | dump | safe }}\nimage_version: {{ $.resource.data.storageProfile.imageReference.version | dump | safe }}\nlinux_configuration_ssh_public_keys: {{ $.resource.data.osProfile.linuxConfiguration.ssh.publicKeys | dump | safe }}\nmanaged_disk_id: {{ $.resource.data.storageProfile.osDisk.managedDisk.id | dump | safe }}\nnetwork_interfaces: {{ $.resource.data.networkProfile.networkInterfaces | dump | safe }}\nos_disk_caching: {{ $.resource.data.storageProfile.osDisk.caching | dump | safe }}\nos_disk_create_option: {{ $.resource.data.storageProfile.osDisk.createOption | dump | safe }}\nos_disk_name: {{ $.resource.data.storageProfile.osDisk.name | dump | safe }}\nos_disk_vhd_uri: {{ $.resource.data.storageProfile.osDisk.vhd.uri | dump | safe }}\nos_type: {{ $.resource.data.storageProfile.osDisk.osType | dump | safe }}\npatch_settings: {{ $.resource.data.osProfile.windowsConfiguration.patchSettings | dump | safe }}\npriority: {{ $.resource.data.priority | dump | safe }}\nprovision_vm_agent: {{ $.resource.data.osProfile.linuxConfiguration.provisionVMAgent | dump | safe }}\nprovision_vm_agent_windows: {{ $.resource.data.osProfile.windowsConfiguration.provisionVMAgent | dump | safe }}\nprovisioning_state: {{ $.resource.data.provisioningState | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsecrets: {{ $.resource.data.osProfile.secrets | dump | safe }}\nsecurity_profile: {{ $.resource.data.securityProfile | dump | safe }}\nsize: {{ $.resource.data.hardwareProfile.vmSize | dump | safe }}\nstatuses: {{ $.resource.data.statuses | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntime_zone: {{ $.resource.data.osProfile.windowsConfiguration.timeZone | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\nultra_ssd_enabled: {{ $.resource.data.additionalCapabilities.ultraSSDEnabled | dump | safe }}\nvirtual_machine_name: {{ $.resource.data.name | dump | safe }}\nvm_id: {{ $.resource.data.vmId | dump | safe }}\nwin_rm: {{ $.resource.data.osProfile.windowsConfiguration.winRM | dump | safe }}\nzones: {{ $.resource.data.zones | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Compute > Virtual Machine > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Compute > Virtual Machine data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Compute > Virtual Machine > ServiceNow > Table

Configure a table for Azure > Compute > Virtual Machine resource type in ServiceNow via the Azure > Compute > Virtual Machine > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Virtual Machine > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Compute > Virtual Machine data.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_compute_virtualmachine",
"label": "Azure > Compute > Virtual Machine",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "additional_unattend_content",
"label": "Additional Unattend Content",
"type": "string",
"size": 1000
},
{
"name": "admin_user_name",
"label": "Admin User Name"
},
{
"name": "allow_extension_operations",
"label": "Allow Extension Operations",
"type": "boolean"
},
{
"name": "availability_set_id",
"label": "Availability Set ID"
},
{
"name": "billing_profile_max_price",
"label": "Billing Profile Max Price"
},
{
"name": "boot_diagnostics_enabled",
"label": "Boot Diagnostics Enabled",
"type": "boolean"
},
{
"name": "boot_diagnostics_storage_uri",
"label": "Boot Diagnostics Storage URI"
},
{
"name": "computer_name",
"label": "Computer Name"
},
{
"name": "data_disks",
"label": "Data Disks",
"type": "string",
"size": 1000
},
{
"name": "disable_password_authentication",
"label": "Disable Password Authentication",
"type": "boolean"
},
{
"name": "enable_automatic_updates",
"label": "Enable Automatic Updates",
"type": "boolean"
},
{
"name": "eviction_policy",
"label": "Eviction Policy"
},
{
"name": "id",
"label": "ID"
},
{
"name": "identity",
"label": "Identity",
"type": "string",
"size": 1000
},
{
"name": "image_exact_version",
"label": "Image Exact Version"
},
{
"name": "image_id",
"label": "Image ID"
},
{
"name": "image_offer",
"label": "Image Offer"
},
{
"name": "image_publisher",
"label": "Image Publisher"
},
{
"name": "image_sku",
"label": "Image Sku"
},
{
"name": "image_version",
"label": "Image Version"
},
{
"name": "linux_configuration_ssh_public_keys",
"label": "Linux Configuration SSH Public Keys",
"type": "string",
"size": 1000
},
{
"name": "managed_disk_id",
"label": "Managed Disk ID"
},
{
"name": "network_interfaces",
"label": "Network Interfaces",
"type": "string",
"size": 1000
},
{
"name": "os_disk_caching",
"label": "OS Disk Caching"
},
{
"name": "os_disk_create_option",
"label": "OS Disk Create Option"
},
{
"name": "os_disk_name",
"label": "OS Disk Name"
},
{
"name": "os_disk_vhd_uri",
"label": "OS Disk VHD URI"
},
{
"name": "os_type",
"label": "OS Type"
},
{
"name": "patch_settings",
"label": "Patch Settings",
"type": "string",
"size": 1000
},
{
"name": "priority",
"label": "Priority"
},
{
"name": "provision_vm_agent",
"label": "Provision VM Agent",
"type": "boolean"
},
{
"name": "provision_vm_agent_windows",
"label": "Provision VM Agent Windows",
"type": "boolean"
},
{
"name": "provisioning_state",
"label": "Provisioning State"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "secrets",
"label": "Secrets",
"type": "string",
"size": 1000
},
{
"name": "security_profile",
"label": "Security Profile",
"type": "string",
"size": 1000
},
{
"name": "size",
"label": "Size"
},
{
"name": "statuses",
"label": "Statuses",
"type": "string",
"size": 1000
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "time_zone",
"label": "Time Zone"
},
{
"name": "type",
"label": "Type"
},
{
"name": "ultra_ssd_enabled",
"label": "Ultra SSD Enabled",
"type": "boolean"
},
{
"name": "virtual_machine_name",
"label": "Virtual Machine Name"
},
{
"name": "vm_id",
"label": "VM ID"
},
{
"name": "win_rm",
"label": "Win RM",
"type": "string",
"size": 1000
},
{
"name": "zones",
"label": "Zones",
"type": "string",
"size": 1000
}
]
}
}

Azure > Compute > Virtual Machine Scale Set > ServiceNow

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineScaleSetServiceNow
Category
Targets

Azure > Compute > Virtual Machine Scale Set > ServiceNow > Configuration Item

Synchronize the data for the Azure > Compute > Virtual Machine Scale Set based on the policies Azure > Compute > Virtual Machine Scale Set > ServiceNow > Configuration Item > *

The policy ensures that Azure > Compute > Virtual Machine Scale Set data is automatically synchronized as Configuration Items (CIs) in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Compute > Virtual Machine Scale Set information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineScaleSetServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Virtual Machine Scale Set > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Compute > Virtual Machine Scale Set is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineScaleSetServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: virtualMachineScaleSet{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"do_not_run_extensions_on_overprovisioned_vms: {{ $.resource.data.doNotRunExtensionsOnOverprovisionedVMs | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nidentity: {{ $.resource.data.identity | dump | safe }}\noverprovision: {{ $.resource.data.overprovision | dump | safe }}\nplan: {{ $.resource.data.plan | dump | safe }}\nprovisioning_state: {{ $.resource.data.provisioningState | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nscale_in_policy: {{ $.resource.data.scaleInPolicy | dump | safe }}\nsingle_placement_group: {{ $.resource.data.singlePlacementGroup | dump | safe }}\nsku_capacity: {{ $.resource.data.sku.capacity | dump | safe }}\nsku_name: {{ $.resource.data.sku.name | dump | safe }}\nsku_tier: {{ $.resource.data.sku.tier | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\nunique_id: {{ $.resource.data.uniqueId | dump | safe }}\nupgrade_policy: {{ $.resource.data.upgradePolicy | dump | safe }}\nvirtual_machine_diagnostics_profile: {{ $.resource.data.virtualMachineProfile.diagnosticsProfile | dump | safe }}\nvirtual_machine_extension_profile: {{ $.resource.data.virtualMachineProfile.extensionProfile | dump | safe }}\nvirtual_machine_network_profile: {{ $.resource.data.virtualMachineProfile.networkProfile | dump | safe }}\nvirtual_machine_os_profile: {{ $.resource.data.virtualMachineProfile.osProfile | dump | safe }}\nvirtual_machine_security_profile: {{ $.resource.data.virtualMachineProfile.securityProfile | dump | safe }}\nvirtual_machine_storage_profile: {{ $.resource.data.virtualMachineProfile.storageProfile | dump | safe }}\nvm_scale_set_name: {{ $.resource.data.name | dump | safe }}\nzones: {{ $.resource.data.zones | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Compute > Virtual Machine Scale Set > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Compute > Virtual Machine Scale Set data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineScaleSetServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineScaleSetServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Compute > Virtual Machine Scale Set > ServiceNow > Table

Configure a table for Azure > Compute > Virtual Machine Scale Set resource type in ServiceNow via the Azure > Compute > Virtual Machine Scale Set > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineScaleSetServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Compute > Virtual Machine Scale Set > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Compute > Virtual Machine Scale Set data.

URI
tmod:@turbot/servicenow-azure-compute#/policy/types/virtualMachineScaleSetServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_compute_virtualmachinescaleset",
"label": "Azure > Compute > Virtual Machine Scale Set",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "do_not_run_extensions_on_overprovisioned_vms",
"label": "Do Not Run Extensions On Overprovisioned VMs",
"type": "boolean"
},
{
"name": "id",
"label": "ID"
},
{
"name": "identity",
"label": "Identity",
"type": "string",
"size": 1000
},
{
"name": "overprovision",
"label": "Overprovision",
"type": "boolean"
},
{
"name": "plan",
"label": "Plan",
"type": "string",
"size": 1000
},
{
"name": "provisioning_state",
"label": "Provisioning State"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "scale_in_policy",
"label": "Scale In Policy",
"type": "string",
"size": 1000
},
{
"name": "single_placement_group",
"label": "Single Placement Group",
"type": "boolean"
},
{
"name": "sku_capacity",
"label": "Sku Capacity",
"type": "integer"
},
{
"name": "sku_name",
"label": "Sku Name"
},
{
"name": "sku_tier",
"label": "Sku Tier"
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "type",
"label": "Type"
},
{
"name": "unique_id",
"label": "Unique Id"
},
{
"name": "upgrade_policy",
"label": "Upgrade Policy",
"type": "string",
"size": 1000
},
{
"name": "virtual_machine_diagnostics_profile",
"label": "Virtual Machine Diagnostics Profile",
"type": "string",
"size": 1000
},
{
"name": "virtual_machine_extension_profile",
"label": "Virtual Machine Extension Profile",
"type": "string",
"size": 1000
},
{
"name": "virtual_machine_network_profile",
"label": "Virtual Machine Network Profile",
"type": "string",
"size": 1000
},
{
"name": "virtual_machine_os_profile",
"label": "Virtual Machine OS Profile",
"type": "string",
"size": 1000
},
{
"name": "virtual_machine_security_profile",
"label": "Virtual Machine Security Profile",
"type": "string",
"size": 1000
},
{
"name": "virtual_machine_storage_profile",
"label": "Virtual Machine Storage Profile",
"type": "string",
"size": 1000
},
{
"name": "vm_scale_set_name",
"label": "VM Scale Set Name"
},
{
"name": "zones",
"label": "Zones",
"type": "string",
"size": 1000
}
]
}
}