open-lineage-client
Version:
TypeScript/JavaScript client for creating and sending OpenLineage standard events.
313 lines (312 loc) • 13.3 kB
TypeScript
declare const _default: {
readonly type: "object";
readonly $id: "https://openlineage.io/spec/2-0-2/OpenLineage.json";
readonly $defs: {
readonly BaseEvent: {
readonly type: "object";
readonly properties: {
readonly eventTime: {
readonly description: "the time the event occurred at";
readonly type: "string";
readonly format: "date-time";
};
readonly producer: {
readonly description: "URI identifying the producer of this metadata. For example this could be a git url with a given tag or sha";
readonly type: "string";
readonly format: "uri";
readonly example: "https://github.com/OpenLineage/OpenLineage/blob/v1-0-0/client";
};
readonly schemaURL: {
readonly description: "The JSON Pointer (https://tools.ietf.org/html/rfc6901) URL to the corresponding version of the schema definition for this RunEvent";
readonly type: "string";
readonly format: "uri";
readonly example: "https://openlineage.io/spec/0-0-1/OpenLineage.json";
};
};
readonly required: readonly ["eventTime", "producer", "schemaURL"];
};
readonly RunEvent: {
readonly allOf: readonly [{
readonly $ref: "#/$defs/BaseEvent";
}, {
readonly type: "object";
readonly properties: {
readonly eventType: {
readonly description: "the current transition of the run state. It is required to issue 1 START event and 1 of [ COMPLETE, ABORT, FAIL ] event per run. Additional events with OTHER eventType can be added to the same run. For example to send additional metadata after the run is complete";
readonly type: "string";
readonly enum: readonly ["START", "RUNNING", "COMPLETE", "ABORT", "FAIL", "OTHER"];
readonly example: "START|RUNNING|COMPLETE|ABORT|FAIL|OTHER";
};
readonly run: {
readonly $ref: "#/$defs/Run";
};
readonly job: {
readonly $ref: "#/$defs/Job";
};
readonly inputs: {
readonly description: "The set of **input** datasets.";
readonly type: "array";
readonly items: {
readonly $ref: "#/$defs/InputDataset";
};
};
readonly outputs: {
readonly description: "The set of **output** datasets.";
readonly type: "array";
readonly items: {
readonly $ref: "#/$defs/OutputDataset";
};
};
};
readonly required: readonly ["run", "job"];
}];
};
readonly DatasetEvent: {
readonly allOf: readonly [{
readonly $ref: "#/$defs/BaseEvent";
}, {
readonly type: "object";
readonly properties: {
readonly dataset: {
readonly $ref: "#/$defs/StaticDataset";
};
};
readonly required: readonly ["dataset"];
readonly not: {
readonly required: readonly ["job", "run"];
};
}];
};
readonly JobEvent: {
readonly allOf: readonly [{
readonly $ref: "#/$defs/BaseEvent";
}, {
readonly type: "object";
readonly properties: {
readonly job: {
readonly $ref: "#/$defs/Job";
};
readonly inputs: {
readonly description: "The set of **input** datasets.";
readonly type: "array";
readonly items: {
readonly $ref: "#/$defs/InputDataset";
};
};
readonly outputs: {
readonly description: "The set of **output** datasets.";
readonly type: "array";
readonly items: {
readonly $ref: "#/$defs/OutputDataset";
};
};
};
readonly required: readonly ["job"];
readonly not: {
readonly required: readonly ["run"];
};
}];
};
readonly Run: {
readonly type: "object";
readonly properties: {
readonly runId: {
readonly description: "The globally unique ID of the run associated with the job.";
readonly type: "string";
readonly format: "uuid";
};
readonly facets: {
readonly description: "The run facets.";
readonly type: "object";
readonly anyOf: readonly [{
readonly type: "object";
readonly additionalProperties: {
readonly $ref: "#/$defs/RunFacet";
};
}];
};
};
readonly required: readonly ["runId"];
};
readonly RunFacet: {
readonly description: "A Run Facet";
readonly type: "object";
readonly allOf: readonly [{
readonly $ref: "#/$defs/BaseFacet";
}];
};
readonly Job: {
readonly type: "object";
readonly properties: {
readonly namespace: {
readonly description: "The namespace containing that job";
readonly type: "string";
readonly example: "my-scheduler-namespace";
};
readonly name: {
readonly description: "The unique name for that job within that namespace";
readonly type: "string";
readonly example: "myjob.mytask";
};
readonly facets: {
readonly description: "The job facets.";
readonly type: "object";
readonly anyOf: readonly [{
readonly type: "object";
readonly additionalProperties: {
readonly $ref: "#/$defs/JobFacet";
};
}];
};
};
readonly required: readonly ["namespace", "name"];
};
readonly JobFacet: {
readonly description: "A Job Facet";
readonly type: "object";
readonly allOf: readonly [{
readonly $ref: "#/$defs/BaseFacet";
}, {
readonly type: "object";
readonly properties: {
readonly _deleted: {
readonly description: "set to true to delete a facet";
readonly type: "boolean";
};
};
}];
};
readonly InputDataset: {
readonly description: "An input dataset";
readonly type: "object";
readonly allOf: readonly [{
readonly $ref: "#/$defs/Dataset";
}, {
readonly type: "object";
readonly properties: {
readonly inputFacets: {
readonly description: "The input facets for this dataset.";
readonly type: "object";
readonly anyOf: readonly [{
readonly type: "object";
readonly additionalProperties: {
readonly $ref: "#/$defs/InputDatasetFacet";
};
}];
};
};
}];
};
readonly InputDatasetFacet: {
readonly description: "An Input Dataset Facet";
readonly type: "object";
readonly allOf: readonly [{
readonly $ref: "#/$defs/BaseFacet";
}];
};
readonly OutputDataset: {
readonly description: "An output dataset";
readonly type: "object";
readonly allOf: readonly [{
readonly $ref: "#/$defs/Dataset";
}, {
readonly type: "object";
readonly properties: {
readonly outputFacets: {
readonly description: "The output facets for this dataset";
readonly type: "object";
readonly anyOf: readonly [{
readonly type: "object";
readonly additionalProperties: {
readonly $ref: "#/$defs/OutputDatasetFacet";
};
}];
};
};
}];
};
readonly OutputDatasetFacet: {
readonly description: "An Output Dataset Facet";
readonly type: "object";
readonly allOf: readonly [{
readonly $ref: "#/$defs/BaseFacet";
}];
};
readonly Dataset: {
readonly type: "object";
readonly properties: {
readonly namespace: {
readonly description: "The namespace containing that dataset";
readonly type: "string";
readonly example: "my-datasource-namespace";
};
readonly name: {
readonly description: "The unique name for that dataset within that namespace";
readonly type: "string";
readonly example: "instance.schema.table";
};
readonly facets: {
readonly description: "The facets for this dataset";
readonly type: "object";
readonly anyOf: readonly [{
readonly type: "object";
readonly additionalProperties: {
readonly $ref: "#/$defs/DatasetFacet";
};
}];
};
};
readonly required: readonly ["namespace", "name"];
};
readonly StaticDataset: {
readonly description: "A Dataset sent within static metadata events";
readonly type: "object";
readonly allOf: readonly [{
readonly $ref: "#/$defs/Dataset";
}];
};
readonly DatasetFacet: {
readonly description: "A Dataset Facet";
readonly type: "object";
readonly allOf: readonly [{
readonly $ref: "#/$defs/BaseFacet";
}, {
readonly type: "object";
readonly properties: {
readonly _deleted: {
readonly description: "set to true to delete a facet";
readonly type: "boolean";
};
};
}];
};
readonly BaseFacet: {
readonly description: "all fields of the base facet are prefixed with _ to avoid name conflicts in facets";
readonly type: "object";
readonly properties: {
readonly _producer: {
readonly description: "URI identifying the producer of this metadata. For example this could be a git url with a given tag or sha";
readonly type: "string";
readonly format: "uri";
readonly example: "https://github.com/OpenLineage/OpenLineage/blob/v1-0-0/client";
};
readonly _schemaURL: {
readonly description: "The JSON Pointer (https://tools.ietf.org/html/rfc6901) URL to the corresponding version of the schema definition for this facet";
readonly type: "string";
readonly format: "uri";
readonly example: "https://openlineage.io/spec/1-0-2/OpenLineage.json#/$defs/BaseFacet";
};
};
readonly additionalProperties: true;
readonly required: readonly ["_producer", "_schemaURL"];
};
};
readonly oneOf: readonly [{
readonly $ref: "#/$defs/RunEvent";
}, {
readonly $ref: "#/$defs/DatasetEvent";
}, {
readonly $ref: "#/$defs/JobEvent";
}];
};
export default _default;