# metadata-ingestion/examples/library/datacontract_update_status.py import logging from datahub.emitter.mcp import MetadataChangeProposalWrapper from datahub.emitter.rest_emitter import DatahubRestEmitter from datahub.metadata.schema_classes import ( DataContractStateClass, DataContractStatusClass, ) log = logging.getLogger(__name__) logging.basicConfig(level=logging.INFO) contract_urn = "urn:li:dataContract:purchases-contract" contract_status_aspect = DataContractStatusClass(state=DataContractStateClass.ACTIVE) event = MetadataChangeProposalWrapper( entityUrn=contract_urn, aspect=contract_status_aspect, ) rest_emitter = DatahubRestEmitter(gms_server="http://localhost:8080") rest_emitter.emit(event) log.info(f"Updated status of data contract {contract_urn} to ACTIVE")