Definitions for @turbot/gcp-datapipeline

datapipeline

{
"type": "object",
"properties": {
"name": {
"$ref": "#/definitions/datapipelineName"
},
"state": {
"$ref": "gcp#/definitions/state"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/datapipelineAka"
}
},
"title": {
"type": "string"
},
"custom": {
"type": "object",
"properties": {
"gcp": {
"$ref": "gcp#/definitions/gcpMetadata"
}
}
}
}
}
},
"tests": [
{
"description": "Valid - base test",
"input": {
"name": "projects/123456789012/services/datapipelines.googleapis.com",
"turbot": {
"akas": [
"gcp://serviceusage.googleapis.com/projects/123456789012/services/datapipelines.googleapis.com"
],
"title": "Datapipeline",
"custom": {
"gcp": {
"projectId": "cse-legolas-2"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/datapipeline",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}

datapipelineAka

{
"type": "string",
"pattern": "^gcp://serviceusage.googleapis.com/projects/[0-9]{12}/services/datapipelines.googleapis.com",
"tests": [
{
"description": "Base",
"input": "gcp://serviceusage.googleapis.com/projects/123456789012/services/datapipelines.googleapis.com"
},
{
"description": "Invalid - aka",
"input": "gcp://serviceusage.googleapis.com/projectss/cse-legolas-2/services/datapipelines.googleapis.com",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/datapipelineAka",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}

datapipelineName

{
"type": "string",
"pattern": "^projects/[0-9]{1,12}/services/datapipelines.googleapis.com$",
"tests": [
{
"description": "Base",
"input": "projects/123456789012/services/datapipelines.googleapis.com"
},
{
"description": "Invalid - datapipeline name",
"input": "gcp://serviceusage.googleapis.com/projects/cse-legolas-2/services/datapipelineszz.googleapis.com",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/datapipelineName",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}

pipeline

{
"type": "object",
"minProperties": 1,
"properties": {
"name": {
"$ref": "#/definitions/pipelineName"
},
"displayName": {
"$ref": "#/definitions/pipelineDisplayName"
},
"createTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"lastUpdateTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"jobCount": {
"type": "number"
},
"pipelineSources": {
"type": "array"
},
"scheduleInfo": {
"type": "object"
},
"schedulerServiceAccountEmail": {
"type": "string"
},
"state": {
"$ref": "#/definitions/pipelineState"
},
"type": {
"$ref": "#/definitions/pipelineType"
},
"workload": {
"type": "object"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/pipelineAka",
"type": "string"
}
},
"title": {
"type": "string"
},
"custom": {
"type": "object",
"properties": {
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"gcp": {
"$ref": "gcp#/definitions/gcpMetadata"
}
}
}
}
}
},
"additionalProperties": true,
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/pipeline",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}

pipelineAka

{
"type": "string",
"pattern": "^gcp://datapipelines.googleapis.com/projects/[a-z0-9-]{5,29}[a-z0-9]{1}/locations/[a-z0-9-]+/pipelines/[a-zA-Z][-_ !'a-zA-Z0-9]{2,248}[a-zA-Z0-9]$",
"tests": [
{
"description": "base case",
"input": "gcp://datapipelines.googleapis.com/projects/parker-aaa/locations/us-central1/pipelines/working-line"
},
{
"description": "invalid aka",
"input": "gcp://www.googleapis.com/projects/parker-aaa/locations/us-central1/pipelines/working-line",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/pipelineAka",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}

pipelineDisplayName

{
"type": "string",
"pattern": "^[a-zA-Z][-_ !'a-zA-Z0-9]{2,248}[a-zA-Z0-9]$",
"tests": [
{
"description": "base case",
"input": "test-pipeline"
},
{
"description": "invalid characters",
"input": "test*pipeline",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/pipelineDisplayName",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}

pipelineName

{
"type": "string",
"pattern": "^projects/[a-z0-9-]{5,29}[a-z0-9]{1}/locations/[a-z0-9-]+/pipelines/[a-zA-Z][-_ !'a-zA-Z0-9]{2,248}[a-zA-Z0-9]$",
"tests": [
{
"description": "base case",
"input": "projects/parker-aaa/locations/us-central1/pipelines/working-line"
}
],
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/pipelineName",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}

pipelineState

{
"type": "string",
"enum": [
"STATE_ACTIVE",
"STATE_ARCHIVED",
"STATE_PAUSED",
"STATE_RESUMING",
"STATE_STOPPING",
"STATE_UNSPECIFIED"
],
"tests": [
{
"description": "valid - correct state type",
"input": "STATE_ACTIVE"
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/pipelineState",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}

pipelineType

{
"type": "string",
"enum": [
"PIPELINE_TYPE_BATCH",
"PIPELINE_TYPE_STREAMING",
"PIPELINE_TYPE_UNSPECIFIED"
],
"tests": [
{
"description": "valid - correct type",
"input": "PIPELINE_TYPE_BATCH"
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/gcp-datapipeline#/definitions/pipelineType",
"modUri": "tmod:@turbot/gcp-datapipeline"
}
}