Definitions for @turbot/gcp

creationTime

{
"description": "A timestamp in RFC3339 UTC Zulu format, accurate to nanaoseconds.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{9}Z$",
"tests": [
{
"input": "2018-07-10T12:10:56.936123456Z"
},
{
"description": "invalid - ISO 8601 format with no time zone identifier",
"input": "2018-07-10T12:10:56.936",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/creationTime",
"modUri": "tmod:@turbot/gcp"
}
}

effectiveOrgPolicyMap

{
"type": "object",
"properties": {
"constraints/appengine.disableCodeDownload": {
"type": "object"
},
"constraints/cloudfunctions.allowedIngressSettings": {
"type": "object"
},
"constraints/cloudfunctions.allowedVpcConnectorEgressSettings": {
"type": "object"
},
"constraints/cloudfunctions.requireVPCConnector": {
"type": "object"
},
"constraints/compute.disableGuestAttributesAccess": {
"type": "object"
},
"constraints/compute.disableInternetNetworkEndpointGroup": {
"type": "object"
},
"constraints/compute.disableNestedVirtualization": {
"type": "object"
},
"constraints/compute.disableSerialPortAccess": {
"type": "object"
},
"constraints/compute.disableSerialPortLogging": {
"type": "object"
},
"constraints/compute.requireOsLogin": {
"type": "object"
},
"constraints/compute.requireShieldedVm": {
"type": "object"
},
"constraints/compute.restrictLoadBalancerCreationForTypes": {
"type": "object"
},
"constraints/compute.restrictProtocolForwardingCreationForTypes": {
"type": "object"
},
"constraints/compute.restrictSharedVpcHostProjects": {
"type": "object"
},
"constraints/compute.restrictSharedVpcSubnetworks": {
"type": "object"
},
"constraints/compute.restrictVpcPeering": {
"type": "object"
},
"constraints/compute.restrictXpnProjectLienRemoval": {
"type": "object"
},
"constraints/compute.skipDefaultNetworkCreation": {
"booleanPolicy": {
"enforced": true
}
},
"constraints/compute.storageResourceUseRestrictions": {
"type": "object"
},
"constraints/compute.trustedImageProjects": {
"type": "object"
},
"constraints/compute.vmCanIpForward": {
"type": "object"
},
"constraints/compute.vmExternalIpAccess": {
"type": "object"
},
"constraints/gcp.disableCloudLogging": {
"type": "object"
},
"constraints/gcp.resourceLocations": {
"type": "object"
},
"constraints/iam.allowedPolicyMemberDomains": {
"type": "object"
},
"constraints/iam.allowedPublicCertificateTrustedRootCA": {
"type": "object"
},
"constraints/iam.automaticIamGrantsForDefaultServiceAccounts": {
"type": "object"
},
"constraints/iam.disableServiceAccountCreation": {
"type": "object"
},
"constraints/iam.disableServiceAccountKeyCreation": {
"type": "object"
},
"constraints/iam.disableServiceAccountKeyUpload": {
"type": "object"
},
"constraints/iam.disableWorkloadIdentityClusterCreation": {
"type": "object"
},
"constraints/serviceuser.services": {
"type": "object"
},
"constraints/sql.disableDefaultEncryptionCreation": {
"type": "object"
},
"constraints/sql.restrictAuthorizedNetworks": {
"type": "object"
},
"constraints/sql.restrictPublicIp": {
"type": "object"
},
"constraints/storage.retentionPolicySeconds": {
"type": "object"
},
"constraints/storage.uniformBucketLevelAccess": {
"type": "object"
}
},
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/effectiveOrgPolicyMap",
"modUri": "tmod:@turbot/gcp"
}
}

fingerprint

{
"type": "string",
"pattern": "^[-A-Za-z0-9_\\/\\+]{11}=$",
"tests": [
{
"input": "p1ty_9HoBju="
},
{
"input": "RA1vWwENHHk="
},
{
"input": "RA1-Ww_NH+k="
},
{
"description": "invalid - too short",
"input": "p1ty_9HoB0=",
"expected": false
},
{
"description": "invalid - too long",
"input": "p1ty_9HoBk02=",
"expected": false
},
{
"description": "invalid - contains invalid character",
"input": "p1ty_9H$Bk0=",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/fingerprint",
"modUri": "tmod:@turbot/gcp"
}
}

folder

{
"type": "object",
"properties": {
"name": {
"$ref": "#/definitions/folderName"
},
"parent": {
"$ref": "#/definitions/genericString"
},
"displayName": {
"$ref": "#/definitions/folderDisplayName"
},
"lifecycleState": {
"$ref": "#/definitions/lifecycleState"
},
"createTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/folderAka"
}
},
"title": {
"$ref": "#/definitions/folderId"
},
"custom": {
"type": "object",
"properties": {
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"gcp": {
"$ref": "#/definitions/gcpMetadata"
}
}
}
}
}
},
"required": [
"name",
"turbot"
],
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"name": "folders/473736418322",
"displayName": "mike",
"lifecycleState": "ACTIVE",
"createTime": "2017-03-05T13:58:05.590Z",
"turbot": {
"custom": {
"createTimestamp": "2017-03-05T13:58:05.590Z",
"gcp": {
"folderId": "702969400827"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/folder",
"modUri": "tmod:@turbot/gcp"
}
}

folderAka

{
"type": "string",
"pattern": "^gcp://cloudresourcemanager.googleapis.com/folders/[0-9]+$",
"tests": [
{
"descritpion": "base case",
"input": "gcp://cloudresourcemanager.googleapis.com/folders/702969400827"
},
{
"description": "invalid - organizations ID too big",
"input": "gcp://cloudresourcemanager.googleapis.com/folder/702969400827702969400827",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/folderAka",
"modUri": "tmod:@turbot/gcp"
}
}

folderDisplayName

{
"type": "string",
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9'_ -]{2,28}[a-zA-Z0-9]$",
"tests": [
{
"input": "test"
},
{
"input": "foo-bar-baz"
},
{
"input": 111111111
},
{
"input": "foo_bar_baz"
},
{
"input": "a1'-_ f"
},
{
"description": "max length",
"input": "1234567890abcdefghij1234567890"
},
{
"description": "invalid - starts with hyphen",
"input": "-foo",
"expected": false
},
{
"description": "invalid - ends with hyphen",
"input": "foo-",
"expected": false
},
{
"description": "invalid - too short",
"input": "a1",
"expected": false
},
{
"description": "invalid - too long",
"input": "1234567890abcdefghij1234567890a",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/folderDisplayName",
"modUri": "tmod:@turbot/gcp"
}
}

folderId

{
"type": "string",
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/folderId",
"modUri": "tmod:@turbot/gcp"
}
}

folderName

{
"type": "string",
"pattern": "folders/[0-9]+$",
"tests": [
{
"input": "folders/172658724616"
},
{
"input": "folders/17265872461"
},
{
"description": "invalid case - missing the folders keyword",
"input": 172658724616,
"expected": false
},
{
"description": "invalid case - missing the folder ID",
"input": "folders/",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/folderName",
"modUri": "tmod:@turbot/gcp"
}
}

gcpMetadata

{
"type": "object",
"properties": {
"organizationId": {
"$ref": "#/definitions/organizationId"
},
"folderId": {
"$ref": "#/definitions/folderId"
},
"projectId": {
"$ref": "#/definitions/projectId"
},
"regionName": {
"anyOf": [
{
"$ref": "#/definitions/regionName"
},
{
"$ref": "#/definitions/multiRegionName"
}
]
},
"zoneName": {
"$ref": "#/definitions/zoneName"
}
},
"required": [],
"additionalProperties": false,
"tests": [
{
"input": {
"projectId": "foo-bar",
"regionName": "us-west1",
"zoneName": "us-west1-c"
}
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/gcpMetadata",
"modUri": "tmod:@turbot/gcp"
}
}

genericString

{
"type": "string",
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/genericString",
"modUri": "tmod:@turbot/gcp"
}
}

globalRegion

{
"type": "object",
"properties": {
"regionName": {
"$ref": "#/definitions/globalRegionName"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/globalRegionAka"
}
},
"title": {
"$ref": "#/definitions/globalRegionName"
},
"custom": {
"type": "object",
"properties": {
"gcp": {
"$ref": "#/definitions/gcpMetadata"
}
}
}
}
}
},
"required": [
"regionName",
"turbot"
],
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"regionName": "global",
"turbot": {
"custom": {
"gcp": {
"projectId": "123-456",
"regionName": "global"
}
}
}
}
},
{
"description": "Invalid - Missing region name",
"input": {
"turbot": {
"custom": {
"gcp": {
"projectId": "123-456",
"regionName": "asia"
}
}
}
},
"expected": false
},
{
"description": "Invalid - Missing Guardrails data",
"input": {
"regionName": "asia"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/globalRegion",
"modUri": "tmod:@turbot/gcp"
}
}

globalRegionAka

{
"type": "string",
"pattern": "^gcp://cloudresourcemanager.googleapis.com/projects/[a-z0-9-]{5,29}[a-z0-9]{1}/regions/global$",
"tests": [
{
"descritpion": "base case",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489/regions/global"
},
{
"description": "invalid - invalid region name",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489/regions/asiaus",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/globalRegionAka",
"modUri": "tmod:@turbot/gcp"
}
}

globalRegionName

{
"type": "string",
"tests": [
{
"input": "global"
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/globalRegionName",
"modUri": "tmod:@turbot/gcp"
}
}

int64String

{
"type": "string",
"pattern": "^([-])?\\d{1,19}$",
"tests": [
{
"input": "1"
},
{
"input": "-1"
},
{
"input": "9223372036854775807"
},
{
"input": "-9223372036854775808"
},
{
"description": "invalid - too short",
"input": "",
"expected": false
},
{
"description": "invalid - too long",
"input": "92233720368547758071",
"expected": false
},
{
"description": "invalid - contains letter",
"input": "922337203685477580a",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/int64String",
"modUri": "tmod:@turbot/gcp"
}
}

labels

{
"type": "object",
"patternProperties": {
"^(?![0-9]|_|-)[a-z0-9-_ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠ-ࢴऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿕ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꞭꞰ-ꞷꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9]{1,63}$": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"pattern": "^[a-z0-9-_\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B4\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FD5\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AD\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19]*$",
"minLength": 0,
"maxLength": 63
}
],
"tests": [
{
"description": "valid - empty string",
"input": ""
},
{
"description": "valid - international characters",
"input": "küßî"
},
{
"description": "valid - max length",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-123"
},
{
"description": "invalid - too long",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-1234",
"expected": false
},
{
"description": "invalid - contains capital letter",
"input": "Woof",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelValue",
"modUri": "tmod:@turbot/gcp"
}
}
},
"additionalProperties": false,
"tests": [
{
"description": "valid - base case",
"input": {
"foo": "bar"
}
},
{
"description": "valid - empty object",
"input": {}
},
{
"description": "valid - key min length",
"input": {
"a": "bar"
}
},
{
"description": "valid - key starts with international character",
"input": {
"üßî": "bar"
}
},
{
"description": "valid - key max length",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-123": "bar"
}
},
{
"description": "invalid - key too long",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-1234": "bar"
},
"expected": false
},
{
"description": "invalid - empty key",
"input": {
"": "bar"
},
"expected": false
},
{
"description": "invalid - key contains capital letter",
"input": {
"abcDef": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with number",
"input": {
"1abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with hyphen",
"input": {
"-abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with underscore",
"input": {
"_abc": "bar"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labels",
"modUri": "tmod:@turbot/gcp"
}
}

labelsTemplateInput

{
"type": [
"array",
"object"
],
"anyOf": [
{
"type": "object",
"patternProperties": {
"^(?![0-9]|_|-)[a-z0-9-_ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠ-ࢴऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿕ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꞭꞰ-ꞷꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9]{1,63}$": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"pattern": "^[a-z0-9-_\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B4\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FD5\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AD\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19]*$",
"minLength": 0,
"maxLength": 63
}
],
"tests": [
{
"description": "valid - empty string",
"input": ""
},
{
"description": "valid - international characters",
"input": "küßî"
},
{
"description": "valid - max length",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-123"
},
{
"description": "invalid - too long",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-1234",
"expected": false
},
{
"description": "invalid - contains capital letter",
"input": "Woof",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelValue",
"modUri": "tmod:@turbot/gcp"
}
}
},
"additionalProperties": false,
"tests": [
{
"description": "valid - base case",
"input": {
"foo": "bar"
}
},
{
"description": "valid - empty object",
"input": {}
},
{
"description": "valid - key min length",
"input": {
"a": "bar"
}
},
{
"description": "valid - key starts with international character",
"input": {
"üßî": "bar"
}
},
{
"description": "valid - key max length",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-123": "bar"
}
},
{
"description": "invalid - key too long",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-1234": "bar"
},
"expected": false
},
{
"description": "invalid - empty key",
"input": {
"": "bar"
},
"expected": false
},
{
"description": "invalid - key contains capital letter",
"input": {
"abcDef": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with number",
"input": {
"1abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with hyphen",
"input": {
"-abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with underscore",
"input": {
"_abc": "bar"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labels",
"modUri": "tmod:@turbot/gcp"
}
},
{
"type": "array",
"items": {
"type": "object",
"patternProperties": {
"^(?![0-9]|_|-)[a-z0-9-_ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠ-ࢴऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿕ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꞭꞰ-ꞷꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9]{1,63}$": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"pattern": "^[a-z0-9-_\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B4\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FD5\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AD\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19]*$",
"minLength": 0,
"maxLength": 63
}
],
"tests": [
{
"description": "valid - empty string",
"input": ""
},
{
"description": "valid - international characters",
"input": "küßî"
},
{
"description": "valid - max length",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-123"
},
{
"description": "invalid - too long",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-1234",
"expected": false
},
{
"description": "invalid - contains capital letter",
"input": "Woof",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelValue",
"modUri": "tmod:@turbot/gcp"
}
}
},
"minProperties": 1,
"maxProperties": 1,
"additionalProperties": false,
"tests": [
{
"description": "valid - base case",
"input": {
"foo": "bar"
}
},
{
"description": "valid - key min length",
"input": {
"a": "bar"
}
},
{
"description": "valid - key starts with international character",
"input": {
"üßî": "bar"
}
},
{
"description": "valid - key max length",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-123": "bar"
}
},
{
"description": "invalid - key too long",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-1234": "bar"
},
"expected": false
},
{
"description": "invalid - empty key",
"input": {
"": "bar"
},
"expected": false
},
{
"description": "invalid - key contains capital letter",
"input": {
"abcDef": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with number",
"input": {
"1abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with hyphen",
"input": {
"-abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with underscore",
"input": {
"_abc": "bar"
},
"expected": false
},
{
"description": "invalid - below min properties",
"input": {},
"expected": false
},
{
"description": "invalid - above max properties",
"input": {
"foo": "bar",
"foo1": "bar1"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelsTemplateLabel",
"modUri": "tmod:@turbot/gcp"
}
},
"tests": [
{
"description": "valid - empty list",
"input": []
},
{
"description": "valid - single item",
"input": [
{
"foo": "bar"
}
]
},
{
"description": "valid - multiple items",
"input": [
{
"foo": "bar"
},
{
"foo1": "bar1"
},
{
"foo2": "bar2"
}
]
},
{
"description": "invalid - empty item",
"input": [
{
"foo": "bar"
},
null,
{
"foo2": "bar2"
}
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelsTemplateLabelList",
"modUri": "tmod:@turbot/gcp"
}
}
],
"tests": [
{
"description": "valid - empty list",
"input": []
},
{
"description": "valid - single item",
"input": [
{
"foo": "bar"
}
]
},
{
"description": "valid - multiple items",
"input": [
{
"foo": "bar"
},
{
"foo1": "bar1"
},
{
"foo2": "bar2"
}
]
},
{
"description": "invalid - empty item",
"input": [
{
"foo": "bar"
},
null,
{
"foo2": "bar2"
}
],
"expected": false
},
{
"description": "valid - empty object",
"input": {}
},
{
"description": "valid - single property",
"input": {
"foo": "bar"
}
},
{
"description": "valid - multiple properties",
"input": {
"foo": "bar",
"foo2": "bar2"
}
},
{
"description": "invalid - wrong type",
"input": "hello",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelsTemplateInput",
"modUri": "tmod:@turbot/gcp"
}
}

labelsTemplateLabel

{
"type": "object",
"patternProperties": {
"^(?![0-9]|_|-)[a-z0-9-_ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠ-ࢴऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿕ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꞭꞰ-ꞷꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9]{1,63}$": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"pattern": "^[a-z0-9-_\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B4\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FD5\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AD\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19]*$",
"minLength": 0,
"maxLength": 63
}
],
"tests": [
{
"description": "valid - empty string",
"input": ""
},
{
"description": "valid - international characters",
"input": "küßî"
},
{
"description": "valid - max length",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-123"
},
{
"description": "invalid - too long",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-1234",
"expected": false
},
{
"description": "invalid - contains capital letter",
"input": "Woof",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelValue",
"modUri": "tmod:@turbot/gcp"
}
}
},
"minProperties": 1,
"maxProperties": 1,
"additionalProperties": false,
"tests": [
{
"description": "valid - base case",
"input": {
"foo": "bar"
}
},
{
"description": "valid - key min length",
"input": {
"a": "bar"
}
},
{
"description": "valid - key starts with international character",
"input": {
"üßî": "bar"
}
},
{
"description": "valid - key max length",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-123": "bar"
}
},
{
"description": "invalid - key too long",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-1234": "bar"
},
"expected": false
},
{
"description": "invalid - empty key",
"input": {
"": "bar"
},
"expected": false
},
{
"description": "invalid - key contains capital letter",
"input": {
"abcDef": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with number",
"input": {
"1abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with hyphen",
"input": {
"-abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with underscore",
"input": {
"_abc": "bar"
},
"expected": false
},
{
"description": "invalid - below min properties",
"input": {},
"expected": false
},
{
"description": "invalid - above max properties",
"input": {
"foo": "bar",
"foo1": "bar1"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelsTemplateLabel",
"modUri": "tmod:@turbot/gcp"
}
}

labelsTemplateLabelList

{
"type": "array",
"items": {
"type": "object",
"patternProperties": {
"^(?![0-9]|_|-)[a-z0-9-_ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠ-ࢴऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿕ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꞭꞰ-ꞷꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9]{1,63}$": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"pattern": "^[a-z0-9-_\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B4\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FD5\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AD\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19]*$",
"minLength": 0,
"maxLength": 63
}
],
"tests": [
{
"description": "valid - empty string",
"input": ""
},
{
"description": "valid - international characters",
"input": "küßî"
},
{
"description": "valid - max length",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-123"
},
{
"description": "invalid - too long",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-1234",
"expected": false
},
{
"description": "invalid - contains capital letter",
"input": "Woof",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelValue",
"modUri": "tmod:@turbot/gcp"
}
}
},
"minProperties": 1,
"maxProperties": 1,
"additionalProperties": false,
"tests": [
{
"description": "valid - base case",
"input": {
"foo": "bar"
}
},
{
"description": "valid - key min length",
"input": {
"a": "bar"
}
},
{
"description": "valid - key starts with international character",
"input": {
"üßî": "bar"
}
},
{
"description": "valid - key max length",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-123": "bar"
}
},
{
"description": "invalid - key too long",
"input": {
"a23456789-123456789-123456789-123456789-123456789-123456789-1234": "bar"
},
"expected": false
},
{
"description": "invalid - empty key",
"input": {
"": "bar"
},
"expected": false
},
{
"description": "invalid - key contains capital letter",
"input": {
"abcDef": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with number",
"input": {
"1abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with hyphen",
"input": {
"-abc": "bar"
},
"expected": false
},
{
"description": "invalid - key starts with underscore",
"input": {
"_abc": "bar"
},
"expected": false
},
{
"description": "invalid - below min properties",
"input": {},
"expected": false
},
{
"description": "invalid - above max properties",
"input": {
"foo": "bar",
"foo1": "bar1"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelsTemplateLabel",
"modUri": "tmod:@turbot/gcp"
}
},
"tests": [
{
"description": "valid - empty list",
"input": []
},
{
"description": "valid - single item",
"input": [
{
"foo": "bar"
}
]
},
{
"description": "valid - multiple items",
"input": [
{
"foo": "bar"
},
{
"foo1": "bar1"
},
{
"foo2": "bar2"
}
]
},
{
"description": "invalid - empty item",
"input": [
{
"foo": "bar"
},
null,
{
"foo2": "bar2"
}
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelsTemplateLabelList",
"modUri": "tmod:@turbot/gcp"
}
}

labelValue

{
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"pattern": "^[a-z0-9-_\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B4\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FD5\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AD\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC\\u0660-\\u0669\\u06F0-\\u06F9\\u07C0-\\u07C9\\u0966-\\u096F\\u09E6-\\u09EF\\u0A66-\\u0A6F\\u0AE6-\\u0AEF\\u0B66-\\u0B6F\\u0BE6-\\u0BEF\\u0C66-\\u0C6F\\u0CE6-\\u0CEF\\u0D66-\\u0D6F\\u0DE6-\\u0DEF\\u0E50-\\u0E59\\u0ED0-\\u0ED9\\u0F20-\\u0F29\\u1040-\\u1049\\u1090-\\u1099\\u17E0-\\u17E9\\u1810-\\u1819\\u1946-\\u194F\\u19D0-\\u19D9\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1B50-\\u1B59\\u1BB0-\\u1BB9\\u1C40-\\u1C49\\u1C50-\\u1C59\\uA620-\\uA629\\uA8D0-\\uA8D9\\uA900-\\uA909\\uA9D0-\\uA9D9\\uA9F0-\\uA9F9\\uAA50-\\uAA59\\uABF0-\\uABF9\\uFF10-\\uFF19]*$",
"minLength": 0,
"maxLength": 63
}
],
"tests": [
{
"description": "valid - empty string",
"input": ""
},
{
"description": "valid - international characters",
"input": "küßî"
},
{
"description": "valid - max length",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-123"
},
{
"description": "invalid - too long",
"input": "123456789-123456789-123456789-123456789-123456789-123456789-1234",
"expected": false
},
{
"description": "invalid - contains capital letter",
"input": "Woof",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/labelValue",
"modUri": "tmod:@turbot/gcp"
}
}

lifecycleState

{
"type": "string",
"enum": [
"LIFECYCLE_STATE_UNSPECIFIED",
"ACTIVE",
"DELETE_REQUESTED"
],
"tests": [
{
"input": "ACTIVE"
},
{
"description": "invalid - lowercase",
"input": "active",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/lifecycleState",
"modUri": "tmod:@turbot/gcp"
}
}

multiRegion

{
"type": "object",
"properties": {
"regionName": {
"$ref": "#/definitions/multiRegionName"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/multiRegionAka"
}
},
"title": {
"$ref": "#/definitions/multiRegionName"
},
"custom": {
"type": "object",
"properties": {
"gcp": {
"$ref": "#/definitions/gcpMetadata"
}
}
}
}
}
},
"required": [
"regionName",
"turbot"
],
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"regionName": "asia",
"turbot": {
"custom": {
"gcp": {
"projectId": "123-456",
"regionName": "asia"
}
}
}
}
},
{
"description": "Invalid - Missing region name",
"input": {
"turbot": {
"custom": {
"gcp": {
"projectId": "123-456",
"regionName": "asia"
}
}
}
},
"expected": false
},
{
"description": "Invalid - Missing Guardrails data",
"input": {
"regionName": "asia"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/multiRegion",
"modUri": "tmod:@turbot/gcp"
}
}

multiRegionAka

{
"type": "string",
"pattern": "^gcp://cloudresourcemanager.googleapis.com/projects/[a-z0-9-]{5,29}[a-z0-9]{1}/regions/[a-z0-9-]+$",
"tests": [
{
"descritpion": "base case",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489/regions/nam5"
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/multiRegionAka",
"modUri": "tmod:@turbot/gcp"
}
}

multiRegionName

{
"type": "string",
"tests": [
{
"input": "asia"
},
{
"description": "invalid - nam7",
"input": [
"nam7"
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/multiRegionName",
"modUri": "tmod:@turbot/gcp"
}
}

organization

{
"type": "object",
"properties": {
"gcp": {
"$ref": "#/definitions/gcpMetadata"
},
"name": {
"$ref": "#/definitions/genericString"
},
"displayName": {
"$ref": "#/definitions/genericString"
},
"title": {
"$ref": "#/definitions/genericString"
},
"owner": {
"$ref": "#/definitions/organizationOwner"
},
"creationTime": {
"$ref": "#/definitions/creationTime"
},
"lifecycleState": {
"$ref": "#/definitions/lifecycleState"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/organizationAka"
}
},
"title": {
"$ref": "#/definitions/organizationId"
},
"custom": {
"type": "object",
"properties": {
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"gcp": {
"$ref": "#/definitions/gcpMetadata"
}
}
}
}
}
},
"required": [
"name",
"turbot"
],
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"name": "organizations/702969400827",
"displayName": "turbot.com",
"lifecycleState": "ACTIVE",
"createTime": "2017-03-05T13:58:05.590Z",
"turbot": {
"akas": [
"gcp://cloudresourcemanager.googleapis.com/organizations/702969400827"
],
"title": "702969400827",
"custom": {
"createTimestamp": "2017-03-05T13:58:05.590Z",
"gcp": {
"organizationId": "702969400827"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/organization",
"modUri": "tmod:@turbot/gcp"
}
}

organizationAka

{
"type": "string",
"pattern": "^gcp://cloudresourcemanager.googleapis.com/organizations/[0-9]{12}$",
"tests": [
{
"descritpion": "base case",
"input": "gcp://cloudresourcemanager.googleapis.com/organizations/702969400827"
},
{
"description": "invalid - organizations ID too big",
"input": "gcp://cloudresourcemanager.googleapis.com/organizations/702969400827702969400827",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/organizationAka",
"modUri": "tmod:@turbot/gcp"
}
}

organizationId

{
"type": "string",
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/organizationId",
"modUri": "tmod:@turbot/gcp"
}
}

organizationOwner

{
"type": "object",
"properties": {
"directoryCustomerId": {
"$ref": "#/definitions/genericString"
}
},
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/organizationOwner",
"modUri": "tmod:@turbot/gcp"
}
}

orgPolicyMap

{
"type": "object",
"properties": {
"constraints/appengine.disableCodeDownload": {
"type": "object"
},
"constraints/cloudfunctions.allowedIngressSettings": {
"type": "object"
},
"constraints/cloudfunctions.allowedVpcConnectorEgressSettings": {
"type": "object"
},
"constraints/cloudfunctions.requireVPCConnector": {
"type": "object"
},
"constraints/compute.disableGuestAttributesAccess": {
"type": "object"
},
"constraints/compute.disableInternetNetworkEndpointGroup": {
"type": "object"
},
"constraints/compute.disableNestedVirtualization": {
"type": "object"
},
"constraints/compute.disableSerialPortAccess": {
"type": "object"
},
"constraints/compute.disableSerialPortLogging": {
"type": "object"
},
"constraints/compute.requireOsLogin": {
"type": "object"
},
"constraints/compute.requireShieldedVm": {
"type": "object"
},
"constraints/compute.restrictLoadBalancerCreationForTypes": {
"type": "object"
},
"constraints/compute.restrictProtocolForwardingCreationForTypes": {
"type": "object"
},
"constraints/compute.restrictSharedVpcHostProjects": {
"type": "object"
},
"constraints/compute.restrictSharedVpcSubnetworks": {
"type": "object"
},
"constraints/compute.restrictVpcPeering": {
"type": "object"
},
"constraints/compute.restrictXpnProjectLienRemoval": {
"type": "object"
},
"constraints/compute.skipDefaultNetworkCreation": {
"booleanPolicy": {
"enforced": true
}
},
"constraints/compute.storageResourceUseRestrictions": {
"type": "object"
},
"constraints/compute.trustedImageProjects": {
"type": "object"
},
"constraints/compute.vmCanIpForward": {
"type": "object"
},
"constraints/compute.vmExternalIpAccess": {
"type": "object"
},
"constraints/gcp.disableCloudLogging": {
"type": "object"
},
"constraints/gcp.resourceLocations": {
"type": "object"
},
"constraints/iam.allowedPolicyMemberDomains": {
"type": "object"
},
"constraints/iam.allowedPublicCertificateTrustedRootCA": {
"type": "object"
},
"constraints/iam.automaticIamGrantsForDefaultServiceAccounts": {
"type": "object"
},
"constraints/iam.disableServiceAccountCreation": {
"type": "object"
},
"constraints/iam.disableServiceAccountKeyCreation": {
"type": "object"
},
"constraints/iam.disableServiceAccountKeyUpload": {
"type": "object"
},
"constraints/iam.disableWorkloadIdentityClusterCreation": {
"type": "object"
},
"constraints/serviceuser.services": {
"type": "object"
},
"constraints/sql.disableDefaultEncryptionCreation": {
"type": "object"
},
"constraints/sql.restrictAuthorizedNetworks": {
"type": "object"
},
"constraints/sql.restrictPublicIp": {
"type": "object"
},
"constraints/storage.retentionPolicySeconds": {
"type": "object"
},
"constraints/storage.uniformBucketLevelAccess": {
"type": "object"
}
},
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/orgPolicyMap",
"modUri": "tmod:@turbot/gcp"
}
}

privateKey

{
"type": "string",
"x-schema-form": {
"type": "code",
"language": "textarea"
},
"pattern": "^-----BEGIN( RSA)? PRIVATE KEY-----\\s+.+",
"tests": [
{
"input": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCxncr085hKx+Rf\nNCFnTeRQ9a7NO/J4vwtQbfkTYKP/topzpllulw1/ugXbCScjPIAZf/K1RlbSHafK\nSwYdH5+UVztL48+LC6Ps5WWnxfmLBQ8TB3cELsy0G1MdC3wyEctxW9g/lFz4NQxR\nkk5trAQzPB1tLHvVAwmGyx+xMEIRPC/xQNgrgHbRBnCnfOMB2sVSBFxEhJnbwOwg\nAY0Xt8+wNFvwqi+SKuXUcTNuGTaBFD3bbX73G1JucxkFVuJah8tH+gOCvxZ0ecPN\nVuQNNkgWrbysFBYrRZljBM6s9LhIP8qyhWYzv1B43LLPtxdxwUeo4yG30x8TAAPw\njLJfvoLfAgMBAAECggEAPCpvbbp2hB5iRb2q8wt3o9UVeYAtCqnsczpNfTrnUt/K\n1pIrCUMx12p0QVZAY7dCzWCCHtXM4zAYfnYbhBIKRH2oIHTzAO7YgI7UeJifh3AX\nQyLsNgaEYR5AcT5Ku8s7VxL9lcv0EkAmBBvDZXM3mQNsFGdVKzr0Jyz3d1YZiyx/\nleYuiZhC0k7i+jktvgInaHeg5R5NHl9wyBN/A0YmR5z+GEc+5yQBat6eh7QcJ+yL\nkyXDulVrRPYwDoDQ0sZ9fwcIUPatJ5tqrOj1aEIfD8sBmENvRpiC/hWgbmYyrk0b\njkZoMTu76FmN9V2+XwCuH7KSW5j1tPULwjMgwTszAQKBgQDe15ivThwcV2MEYK/u\nFDvfBVK0NsQA4UVyC2vgDJMit5MfViNLBjEqOLro0QV3mSp43OU94/ULJ2TDj74m\nXJ+xKI36Dqn9J2p4jQ/BrOmFoZ6tUv0SsWC01789MQcM1u4NF3U2L32odXY8uL+f\nj2j6AD0K3H50DK3pCm25VelBDwKBgQDMC3nMPwI9BF22KGbVesSRfVJvuaCnCgU4\nICi8jlvTGOFg4+XsCa6Kc2W9NdEAuj1+hF/z82bKVy7u6btt0BCwnWLpWYZ/oOkT\nQA0sU0w2w+kg1pZTtlJgu1P6DT3TDypT2HsIiWxm7ahw75/guGGPzJ6AOt2lylM0\nL0o0fagBMQKBgQDGU40hIFxmYOPQJpkNQ9bRMzSbDU6+Fb+vsziMC8T7lfQLZKc+\ng0FIeXrn7/d0rM2fCcHAplwVVDca0ZiDHdZGXniVf22M0AKzTaAjV9fxxZiqW3y+\noT0XVhhuxm6m37a30hPQaM3mGrxjaG2q/YCJV6L8QqcMc6hoCo8C7tIMwwKBgAh/\n6eDyNvuntOejozT9WjbdS5PP3btXlYQTAt9n5rdScAEDPU6p0JV/3RsWpNAs8ebV\nSNH2r696FkBpiB847ZkN1VL3Ib0rTMo6ftH73k7htlJh3f06uQ/CfesKpiqmlRLN\nD8L5RoS7HasmsDhCNf4xfeDFkvoXBYRE/AhXu6nhAoGALdDWT+TUscRwNyxX8rU3\nFupkQVCGNzgtkVaKW1WyQq4EuoWn38tTu0f1JXrvB/4pHfCZ89dKPeplDTPmJ3ou\n04JdpdQ0O29uJGT0KQ3Hj2ZqYdsQEnYxKavn3A1a6u8GG5jJzOu+9zLKEc4HXZTt\nfSD/PML55WuAspirh/RsGx0=\n-----END PRIVATE KEY-----\n"
},
{
"input": "-----BEGIN RSA PRIVATE KEY-----\nMIIEAReallyComplexLongStringShortenedHere\nAReallyComplexLongStringShortenedHere===\n-----END RSA PRIVATE KEY-----"
},
{
"input": "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDFWlh/PAyqWRwH\n1pKouPqUQM3iN/+0XNd+PXNrsz7Xgve3KB/fyIFSOvhsua6myuSku/OLYGUzNTxK\nxfRGXOKDNc1CQxZO8dDLWuj5S5cCTl7qm7As410jppvdo9h/kr6PW1Yp0bAw23SB\nteg3voAdTEd/LD7f6D1ty1P2uHagCY520/xs7H8ZIgT4XNbteJR0jVCWhsaR3ImT\ntfZnTREEJDUTAF1D/coLYZOC+y25q2c6vPxbdbD0uWmoZ611Ef+tkuQ40zPyp0Zl\n0QnNyH2PTWXvEhO7M+zA61/oo92A9DJXx31OQ/mblf5xKHTRrg+PaKCj5XX0DCuH\nv8tzPzDlAgMBAAECggEAEiiD6AEQcUQNrjLx/5A1jhqAVwYsAt5f/X+N9STi7VVh\nkXqhpCeArp46aVaUWUhlzTp16CcQaKvHRmH8XdUCCmyS3Dvr+4uIWI2ezgFEfbPU\nS+XTSe4JjdQwly4SJ3rLCcmvnd1rRrOKfrzMBwUCKK/yDCN4DYYC0O1aZmMGlybg\nS/Ly3ArFRSR34DYYpdxlqxFkunj18YplcvOLKOmTsrDBDOvZYIRJyjAiQwjmGHKL\nhmBX5w7U2Q8G+Tvkl6p4EYGlfrchX0a5iJ0bVdKkkfmUWeFpt4602QFj/o+94wRl\nvEWbncRZQJwm7eWZWbf03Ra7/lCDmlzWE7P4/RsIqQKBgQD89zxSu+GArqHbGGFq\np9dlx3S7YSa/CIN1MxevYgHHquDoK3v+QB5/9q99n1KMPbvd0Mwm9ap/M+UjY0/P\nDJGVzysF5lOCZHS53brazN6kcaHcD0P4MoFHiT5mnpefU3G9wam5WIVcCv5hqabb\nQYBQ/UaeoTfxj7KK/DfopUgrDwKBgQDHuFfyapWYGshK9ePIJSZsmO11NB1bvqgA\ntM4/BRfOTfNpiEvPKgKu7qjlcRFGfVoZNc/2SGJWA5KjfRij7L6T/A0O9aq9FfZm\nLk+ViK79WIFo89qFdX2PaHz1NzWTDelVOgSjIHSIIIm0+ettnAKrwvjzck+ySllw\nS0Cz+Vo0ywKBgQDD7pc5ma5jJl/VPIAPxSqv+ZovnGMPaf+wIj/BJw8r4O3MxgmG\n95DoGmD40xNz7kj52MSXlIZXehGLpFtnilulBk5Thn++KiLC57vXxwDXq+/ra6OA\ntVWu292KTGIyFMavbDYSij7Y+ObpLCdCAezqThKJwWN8ZYmr3wlK1+Ia/wKBgQCK\nHPAswwpqYnMKa5q2yQIWbXcg6wY2cNVrj51lNVduIrfmzgtm2u16Ha8M5DEHJx6M\neoszDIF8bAIXLyZADjMI0XASXU9SbYK0zOfaR+iDaJYthx0h18sZxi9LwH87D47B\nklqsmIAdtyqjzYTCivXJ5A4XBIEakZHiNxgqnZCFGwKBgQCXLPftIvF/OtVvFdpU\ntUwAXvG1drjQzar6NzOVPPgqBhPqZZftS7YbdwCfmMizHTK7hrJYrlqE0oe4itw0\n/YnzvCh198mLTzY3j+bVZ7hKj9WByxOuCwPgbl61LGnVVP15UNrB/h60XQSP3O7m\n/3HBAATzac93br94nTFCvCkrIg==\n-----END PRIVATE KEY-----\n"
},
{
"description": "invalid - no BEGIN",
"input": "foo",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/privateKey",
"modUri": "tmod:@turbot/gcp"
}
}

project

{
"type": "object",
"properties": {
"projectNumber": {
"$ref": "#/definitions/int64String"
},
"projectId": {
"$ref": "#/definitions/projectId"
},
"lifecycleState": {
"$ref": "#/definitions/lifecycleState"
},
"name": {
"$ref": "#/definitions/projectName"
},
"createTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"labels": {
"$ref": "#/definitions/labels"
},
"effectiveOrgPolicyMap": {
"$ref": "#/definitions/effectiveOrgPolicyMap"
},
"orgPolicyMap": {
"$ref": "#/definitions/orgPolicyMap"
},
"state": {
"$ref": "#/definitions/state"
},
"parent": {
"type": "object"
},
"serviceApis": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"parent": {
"type": "string"
},
"state": {
"type": "string"
}
}
}
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/projectAka"
}
},
"tags": {
"$ref": "#/definitions/labels"
},
"title": {
"$ref": "#/definitions/projectId"
},
"custom": {
"type": "object",
"properties": {
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"gcp": {
"$ref": "#/definitions/gcpMetadata"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"projectNumber": "332925309158",
"projectId": "aar-a4b6d489",
"lifecycleState": "ACTIVE",
"name": " aar",
"createTime": "2017-03-05T13:58:05.590Z",
"labels": {
"foo": "bar",
"dog": "woof"
},
"parent": {
"type": "organization",
"id": "702969400827"
},
"turbot": {
"akas": [
"gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489"
],
"tags": {
"foo": "bar",
"dog": "woof"
},
"title": "aar-a4b6d489",
"custom": {
"createTimestamp": "2017-03-05T13:58:05.590Z",
"gcp": {
"projectId": "aar-a4b6d489"
}
}
}
}
},
{
"description": "Invalid - Missing project ID",
"input": {
"projectNumber": "332925309158",
"lifecycleState": "ACTIVE",
"name": " aar",
"createTime": "2017-03-05T13:58:05.590Z",
"labels": {
"foo": "bar",
"dog": "woof"
},
"parent": {
"type": "organization",
"id": "702969400827"
},
"turbot": {
"akas": [
"gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489"
],
"tags": {
"foo": "bar",
"dog": "woof"
},
"title": "aar-a4b6d489",
"custom": {
"createTimestamp": "2017-03-05T13:58:05.590Z",
"gcp": {
"projectId": "aar-a4b6d489"
}
}
}
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/project",
"modUri": "tmod:@turbot/gcp"
}
}

projectAka

{
"type": "string",
"pattern": "^gcp://cloudresourcemanager.googleapis.com/projects/[a-z0-9-]{5,29}[a-z0-9]{1}$",
"tests": [
{
"descritpion": "base case",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489"
},
{
"description": "invalid - project ID too short",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/bad",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/projectAka",
"modUri": "tmod:@turbot/gcp"
}
}

projectId

{
"type": "string",
"pattern": "^[a-z0-9-]{5,29}[a-z0-9]{1}$",
"tests": [
{
"input": "foo-bar"
},
{
"input": "123-456"
},
{
"input": "-foobar"
},
{
"description": "min length",
"input": "foobar"
},
{
"description": "max length",
"input": "foobarfoobarfoobarfoobarfoobar"
},
{
"description": "invalid - too short",
"input": "fooba",
"expected": false
},
{
"description": "invalid - too long",
"input": "foobarfoobarfoobarfoobarfoobarf",
"expected": false
},
{
"description": "invalid - uppercase letter",
"input": "foo-Bar",
"expected": false
},
{
"description": "invalid - ends with hyphen",
"input": "foobar-",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/projectId",
"modUri": "tmod:@turbot/gcp"
}
}

projectName

{
"type": "string",
"pattern": "^[a-zA-Z0-9-'\" \\!]{4,30}$",
"tests": [
{
"description": "min length",
"input": "foo1"
},
{
"description": "max length",
"input": "foobarfoobarfoobarfoobarfoobar"
},
{
"description": "all characters",
"input": "foo123 '\"!-BAR"
},
{
"description": "invalid - too short",
"input": "foo",
"expected": false
},
{
"description": "invalid - too long",
"input": "foobarfoobarfoobarfoobarfoobarf",
"expected": false
},
{
"description": "invalid - question mark in name",
"input": "foo?bar",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/projectName",
"modUri": "tmod:@turbot/gcp"
}
}

projectServiceNow

{
"defaultColumns": {
"create_time": {
"column": "enabled"
},
"lifecycle_state": {
"column": "enabled"
},
"parent_id": {
"column": "enabled",
"path": "data.parent.id",
"label": "Parent ID"
},
"parent_type": {
"column": "enabled",
"path": "data.parent.type"
},
"project_id": {
"column": "enabled",
"label": "Project ID"
},
"project_labels": {
"column": "enabled"
},
"project_name": {
"column": "enabled",
"path": "data.name",
"label": "Project Name"
},
"project_number": {
"column": "enabled"
}
},
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/projectServiceNow",
"modUri": "tmod:@turbot/gcp"
}
}

region

{
"type": "object",
"properties": {
"regionName": {
"$ref": "#/definitions/regionName"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/regionAka"
}
},
"title": {
"$ref": "#/definitions/regionName"
},
"custom": {
"type": "object",
"properties": {
"gcp": {
"$ref": "#/definitions/gcpMetadata"
}
}
}
}
}
},
"required": [
"regionName",
"turbot"
],
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"regionName": "southamerica-east1",
"turbot": {
"custom": {
"gcp": {
"projectId": "123-456",
"regionName": "southamerica-east1"
}
}
}
}
},
{
"description": "Invalid - Missing region name",
"input": {
"turbot": {
"custom": {
"gcp": {
"projectId": "123-456",
"regionName": "southamerica-east1"
}
}
}
},
"expected": false
},
{
"description": "Invalid - Missing Guardrails data",
"input": {
"regionName": "southamerica-east1"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/region",
"modUri": "tmod:@turbot/gcp"
}
}

regionAka

{
"type": "string",
"pattern": "^gcp://cloudresourcemanager.googleapis.com/projects/[a-z0-9-]{5,29}[a-z0-9]{1}/regions/[a-z0-9-]+$",
"tests": [
{
"descritpion": "base case",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489/regions/us-central1"
},
{
"description": "invalid - invalid region name",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489/regions/asia-compas$1",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/regionAka",
"modUri": "tmod:@turbot/gcp"
}
}

regionListAll

{
"type": "array",
"items": {
"$ref": "#/definitions/regionName"
},
"minItems": 1,
"example": [
[
"us-west1",
"us-west2"
]
],
"default": [
"asia-east1",
"asia-east2",
"asia-northeast1",
"asia-northeast2",
"asia-northeast3",
"asia-south1",
"asia-south2",
"asia-southeast1",
"asia-southeast2",
"australia-southeast1",
"australia-southeast2",
"europe-central2",
"europe-north1",
"europe-southwest1",
"europe-west1",
"europe-west12",
"europe-west2",
"europe-west3",
"europe-west4",
"europe-west6",
"europe-west8",
"europe-west9",
"europe-west10",
"me-central1",
"me-west1",
"northamerica-northeast1",
"northamerica-northeast2",
"southamerica-east1",
"southamerica-west1",
"us-central1",
"us-east1",
"us-east4",
"us-east5",
"us-south1",
"us-west1",
"us-west2",
"us-west3",
"us-west4"
],
"tests": [
{
"description": "one region",
"input": [
"europe-west2"
]
},
{
"description": "all supported regions",
"input": [
"asia-east1",
"asia-east2",
"asia-northeast1",
"asia-northeast2",
"asia-northeast3",
"asia-south1",
"asia-south2",
"asia-southeast1",
"asia-southeast2",
"australia-southeast1",
"australia-southeast2",
"europe-central2",
"europe-north1",
"europe-southwest1",
"europe-west1",
"europe-west12",
"europe-west2",
"europe-west3",
"europe-west4",
"europe-west6",
"europe-west8",
"europe-west9",
"europe-west10",
"me-central1",
"me-west1",
"northamerica-northeast1",
"northamerica-northeast2",
"southamerica-east1",
"southamerica-west1",
"us-central1",
"us-east1",
"us-east4",
"us-east5",
"us-south1",
"us-west1",
"us-west2",
"us-west3",
"us-west4"
]
},
{
"description": "invalid - no regions",
"input": [],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/regionListAll",
"modUri": "tmod:@turbot/gcp"
}
}

regionName

{
"type": "string",
"tests": [
{
"input": "us-central1"
},
{
"description": "invalid - au-north-1",
"input": [
"au-north-1"
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/regionName",
"modUri": "tmod:@turbot/gcp"
}
}

regionNameMatcher

{
"type": "string",
"pattern": "^[-a-z0-9?*]+$",
"example": [
"*",
"us-*",
"us-east?",
"*-east1"
],
"tests": [
{
"input": "*"
},
{
"input": "us*"
},
{
"input": "us-east1"
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
},
{
"description": "invalid - us.+",
"input": "us.+",
"expected": false
},
{
"description": "invalid - us.*",
"input": "us.*",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/regionNameMatcher",
"modUri": "tmod:@turbot/gcp"
}
}

regionNameMatcherList

{
"type": "array",
"items": {
"type": "string",
"pattern": "^[-a-z0-9?*]+$",
"example": [
"*",
"us-*",
"us-east?",
"*-east1"
],
"tests": [
{
"input": "*"
},
{
"input": "us*"
},
{
"input": "us-east1"
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
},
{
"description": "invalid - us.+",
"input": "us.+",
"expected": false
},
{
"description": "invalid - us.*",
"input": "us.*",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/regionNameMatcher",
"modUri": "tmod:@turbot/gcp"
}
},
"example": [
[
"us-east?"
],
[
"eu*",
"us*"
],
[
"us-east1",
"eu-west1"
]
],
"tests": [
{
"input": []
},
{
"input": [
"*"
]
},
{
"input": [
"us-*"
]
},
{
"input": [
"us-east1"
]
},
{
"description": "invalid - empty region",
"input": [
""
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/regionNameMatcherList",
"modUri": "tmod:@turbot/gcp"
}
}

state

{
"type": "string",
"enum": [
"ENABLED",
"DISABLED"
],
"tests": [
{
"input": "ENABLED"
},
{
"input": "DISABLED"
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
},
{
"description": "invalid - case sensitive",
"input": "enabled",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/state",
"modUri": "tmod:@turbot/gcp"
}
}

zone

{
"type": "object",
"properties": {
"zoneName": {
"$ref": "#/definitions/zoneName"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/zoneAka"
}
},
"title": {
"$ref": "#/definitions/zoneName"
},
"custom": {
"type": "object",
"properties": {
"gcp": {
"$ref": "#/definitions/gcpMetadata"
}
}
}
}
}
},
"required": [
"zoneName"
],
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"zoneName": "southamerica-east1-b",
"turbot": {
"custom": {
"gcp": {
"projectId": "123-456",
"regionName": "southamerica-east1",
"zoneName": "southamerica-east1-b"
}
}
}
}
},
{
"description": "Invalid - Missing zone name",
"input": {
"turbot": {
"custom": {
"gcp": {
"projectId": "123-456",
"regionName": "southamerica-east1",
"zoneName": "southamerica-east1-b"
}
}
}
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/zone",
"modUri": "tmod:@turbot/gcp"
}
}

zoneAka

{
"type": "string",
"pattern": "^gcp://cloudresourcemanager.googleapis.com/projects/[a-z0-9-]{5,29}[a-z0-9]{1}/zones/[a-z]+-[a-z0-9]+-[a-z]$",
"tests": [
{
"descritpion": "base case",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489/zones/us-central1-c"
},
{
"description": "invalid - invalid zone name",
"input": "gcp://cloudresourcemanager.googleapis.com/projects/aar-a4b6d489/zones/us-central1-2",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/zoneAka",
"modUri": "tmod:@turbot/gcp"
}
}

zoneListAll

{
"type": "array",
"items": {
"$ref": "#/definitions/zoneName"
},
"minItems": 1,
"example": [
"us-west1-a",
"us-west2-c"
],
"default": [
"asia-east1-a",
"asia-east1-b",
"asia-east1-c",
"asia-east2-a",
"asia-east2-b",
"asia-east2-c",
"asia-northeast1-a",
"asia-northeast1-b",
"asia-northeast1-c",
"asia-northeast2-a",
"asia-northeast2-b",
"asia-northeast2-c",
"asia-northeast3-a",
"asia-northeast3-b",
"asia-northeast3-c",
"asia-south1-a",
"asia-south1-b",
"asia-south1-c",
"asia-south2-a",
"asia-south2-b",
"asia-south2-c",
"asia-southeast1-a",
"asia-southeast1-b",
"asia-southeast1-c",
"asia-southeast2-a",
"asia-southeast2-b",
"asia-southeast2-c",
"australia-southeast1-a",
"australia-southeast1-b",
"australia-southeast1-c",
"australia-southeast2-a",
"australia-southeast2-b",
"australia-southeast2-c",
"europe-central2-a",
"europe-central2-b",
"europe-central2-c",
"europe-north1-a",
"europe-north1-b",
"europe-north1-c",
"europe-southwest1-a",
"europe-southwest1-b",
"europe-southwest1-c",
"europe-west1-b",
"europe-west1-c",
"europe-west1-d",
"europe-west2-a",
"europe-west2-b",
"europe-west2-c",
"europe-west3-a",
"europe-west3-b",
"europe-west3-c",
"europe-west4-a",
"europe-west4-b",
"europe-west4-c",
"europe-west6-a",
"europe-west6-b",
"europe-west6-c",
"europe-west8-a",
"europe-west8-b",
"europe-west8-c",
"europe-west9-a",
"europe-west9-b",
"europe-west9-c",
"europe-west10-a",
"europe-west10-b",
"europe-west10-c",
"europe-west12-a",
"europe-west12-b",
"europe-west12-c",
"me-central1-a",
"me-central1-b",
"me-central1-c",
"me-west1-a",
"me-west1-b",
"me-west1-c",
"northamerica-northeast1-a",
"northamerica-northeast1-b",
"northamerica-northeast1-c",
"northamerica-northeast2-a",
"northamerica-northeast2-b",
"northamerica-northeast2-c",
"southamerica-east1-a",
"southamerica-east1-b",
"southamerica-east1-c",
"southamerica-west1-a",
"southamerica-west1-b",
"southamerica-west1-c",
"us-central1-a",
"us-central1-b",
"us-central1-c",
"us-central1-f",
"us-east1-b",
"us-east1-c",
"us-east1-d",
"us-east4-a",
"us-east4-b",
"us-east4-c",
"us-east5-a",
"us-east5-b",
"us-east5-c",
"us-west1-a",
"us-west1-b",
"us-west1-c",
"us-west2-a",
"us-west2-b",
"us-west2-c",
"us-west3-a",
"us-west3-b",
"us-west3-c",
"us-west4-a",
"us-west4-b",
"us-west4-c",
"us-south1-a",
"us-south1-b",
"us-south1-c"
],
"tests": [
{
"description": "one zone",
"input": [
"europe-west2-b"
]
},
{
"description": "all supported zones",
"input": [
"asia-east1-a",
"asia-east1-b",
"asia-east1-c",
"asia-east2-a",
"asia-east2-b",
"asia-east2-c",
"asia-northeast1-a",
"asia-northeast1-b",
"asia-northeast1-c",
"asia-northeast2-a",
"asia-northeast2-b",
"asia-northeast2-c",
"asia-northeast3-a",
"asia-northeast3-b",
"asia-northeast3-c",
"asia-south1-a",
"asia-south1-b",
"asia-south1-c",
"asia-south2-a",
"asia-south2-b",
"asia-south2-c",
"asia-southeast1-a",
"asia-southeast1-b",
"asia-southeast1-c",
"asia-southeast2-a",
"asia-southeast2-b",
"asia-southeast2-c",
"australia-southeast1-a",
"australia-southeast1-b",
"australia-southeast1-c",
"australia-southeast2-a",
"australia-southeast2-b",
"australia-southeast2-c",
"europe-central2-a",
"europe-central2-b",
"europe-central2-c",
"europe-north1-a",
"europe-north1-b",
"europe-north1-c",
"europe-southwest1-a",
"europe-southwest1-b",
"europe-southwest1-c",
"europe-west1-b",
"europe-west1-c",
"europe-west1-d",
"europe-west2-a",
"europe-west2-b",
"europe-west2-c",
"europe-west3-a",
"europe-west3-b",
"europe-west3-c",
"europe-west4-a",
"europe-west4-b",
"europe-west4-c",
"europe-west6-a",
"europe-west6-b",
"europe-west6-c",
"europe-west8-a",
"europe-west8-b",
"europe-west8-c",
"europe-west9-a",
"europe-west9-b",
"europe-west9-c",
"europe-west10-a",
"europe-west10-b",
"europe-west10-c",
"europe-west12-a",
"europe-west12-b",
"europe-west12-c",
"me-central1-a",
"me-central1-b",
"me-central1-c",
"me-west1-a",
"me-west1-b",
"me-west1-c",
"northamerica-northeast1-a",
"northamerica-northeast1-b",
"northamerica-northeast1-c",
"northamerica-northeast2-a",
"northamerica-northeast2-b",
"northamerica-northeast2-c",
"southamerica-east1-a",
"southamerica-east1-b",
"southamerica-east1-c",
"southamerica-west1-a",
"southamerica-west1-b",
"southamerica-west1-c",
"us-central1-a",
"us-central1-b",
"us-central1-c",
"us-central1-f",
"us-east1-b",
"us-east1-c",
"us-east1-d",
"us-east4-a",
"us-east4-b",
"us-east4-c",
"us-east5-a",
"us-east5-b",
"us-east5-c",
"us-west1-a",
"us-west1-b",
"us-west1-c",
"us-west2-a",
"us-west2-b",
"us-west2-c",
"us-west3-a",
"us-west3-b",
"us-west3-c",
"us-west4-a",
"us-west4-b",
"us-west4-c",
"us-south1-a",
"us-south1-b",
"us-south1-c"
]
},
{
"description": "invalid - no zones",
"input": [],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/zoneListAll",
"modUri": "tmod:@turbot/gcp"
}
}

zoneName

{
"type": "string",
"enum": [
"asia-east1-a",
"asia-east1-b",
"asia-east1-c",
"asia-east2-a",
"asia-east2-b",
"asia-east2-c",
"asia-northeast1-a",
"asia-northeast1-b",
"asia-northeast1-c",
"asia-northeast2-a",
"asia-northeast2-b",
"asia-northeast2-c",
"asia-northeast3-a",
"asia-northeast3-b",
"asia-northeast3-c",
"asia-south1-a",
"asia-south1-b",
"asia-south1-c",
"asia-south2-a",
"asia-south2-b",
"asia-south2-c",
"asia-southeast1-a",
"asia-southeast1-b",
"asia-southeast1-c",
"asia-southeast2-a",
"asia-southeast2-b",
"asia-southeast2-c",
"australia-southeast1-a",
"australia-southeast1-b",
"australia-southeast1-c",
"australia-southeast2-a",
"australia-southeast2-b",
"australia-southeast2-c",
"europe-central2-a",
"europe-central2-b",
"europe-central2-c",
"europe-north1-a",
"europe-north1-b",
"europe-north1-c",
"europe-southwest1-a",
"europe-southwest1-b",
"europe-southwest1-c",
"europe-west1-b",
"europe-west1-c",
"europe-west1-d",
"europe-west2-a",
"europe-west2-b",
"europe-west2-c",
"europe-west3-a",
"europe-west3-b",
"europe-west3-c",
"europe-west4-a",
"europe-west4-b",
"europe-west4-c",
"europe-west6-a",
"europe-west6-b",
"europe-west6-c",
"europe-west8-a",
"europe-west8-b",
"europe-west8-c",
"europe-west9-a",
"europe-west9-b",
"europe-west9-c",
"europe-west10-a",
"europe-west10-b",
"europe-west10-c",
"europe-west12-a",
"europe-west12-b",
"europe-west12-c",
"me-central1-a",
"me-central1-b",
"me-central1-c",
"me-west1-a",
"me-west1-b",
"me-west1-c",
"northamerica-northeast1-a",
"northamerica-northeast1-b",
"northamerica-northeast1-c",
"northamerica-northeast2-a",
"northamerica-northeast2-b",
"northamerica-northeast2-c",
"southamerica-east1-a",
"southamerica-east1-b",
"southamerica-east1-c",
"southamerica-west1-a",
"southamerica-west1-b",
"southamerica-west1-c",
"us-central1-a",
"us-central1-b",
"us-central1-c",
"us-central1-f",
"us-east1-b",
"us-east1-c",
"us-east1-d",
"us-east4-a",
"us-east4-b",
"us-east4-c",
"us-east5-a",
"us-east5-b",
"us-east5-c",
"us-west1-a",
"us-west1-b",
"us-west1-c",
"us-west2-a",
"us-west2-b",
"us-west2-c",
"us-west3-a",
"us-west3-b",
"us-west3-c",
"us-west4-a",
"us-west4-b",
"us-west4-c",
"us-south1-a",
"us-south1-b",
"us-south1-c"
],
"tests": [
{
"input": "us-central1-a"
},
{
"description": "invalid - usea1",
"input": "usea1",
"expected": false
},
{
"description": "invalid - au-north2-a",
"input": "au-north2-a",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp#/definitions/zoneName",
"modUri": "tmod:@turbot/gcp"
}
}