From eeee3f7fadbd954b25f419005aa1d8692e1d3a71 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 14 Aug 2026 15:23:18 -0700 Subject: [PATCH 1/4] Limit the number of confidentialledger tests runs on the nightly schedule to one --- sdk/confidentialledger/tests.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sdk/confidentialledger/tests.yml b/sdk/confidentialledger/tests.yml index 2d2228d8b4e8..1223e4bdf6f3 100644 --- a/sdk/confidentialledger/tests.yml +++ b/sdk/confidentialledger/tests.yml @@ -12,3 +12,11 @@ extends: TEST_MODE: "RunLiveNoRecord" # use when allowing preparers to create the rgs for you AZURE_TEST_RUN_LIVE: "true" # use when utilizing the New-TestResources Script AZURE_SKIP_LIVE_RECORDING: 'True' + # Confidential Ledger test resources are expensive to provision: every matrix leg stands + # up a dedicated three-replica CCF cluster on confidential (SNP) hardware, which takes + # roughly eight minutes. Run one representative leg on the nightly pipeline and keep the + # full platform matrix on tests-weekly. + ${{ if not(contains(variables['Build.DefinitionName'], 'tests-weekly')) }}: + MatrixFilters: + - PythonVersion=3.10 + - CoverageArg="" From 5a9f8c28b701692c41c0d401664391dddf933cff Mon Sep 17 00:00:00 2001 From: root Date: Fri, 14 Aug 2026 15:51:26 -0700 Subject: [PATCH 2/4] Updated the MatrixFilter to match an empty CoverageArg --- sdk/confidentialledger/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/confidentialledger/tests.yml b/sdk/confidentialledger/tests.yml index 1223e4bdf6f3..3ff94d2998e5 100644 --- a/sdk/confidentialledger/tests.yml +++ b/sdk/confidentialledger/tests.yml @@ -19,4 +19,4 @@ extends: ${{ if not(contains(variables['Build.DefinitionName'], 'tests-weekly')) }}: MatrixFilters: - PythonVersion=3.10 - - CoverageArg="" + - CoverageArg=^$ From 11d956b0b5bc141d5cf19a6bc2679c006204e9ec Mon Sep 17 00:00:00 2001 From: root Date: Tue, 18 Aug 2026 13:44:45 -0700 Subject: [PATCH 3/4] Disabled unidiomatic-typecheck to pass pylint --- .../confidentialledger/certificate/_utils/model_base.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk/confidentialledger/azure-confidentialledger-certificate/azure/confidentialledger/certificate/_utils/model_base.py b/sdk/confidentialledger/azure-confidentialledger-certificate/azure/confidentialledger/certificate/_utils/model_base.py index 12926fa98dcf..291bd8f97caf 100644 --- a/sdk/confidentialledger/azure-confidentialledger-certificate/azure/confidentialledger/certificate/_utils/model_base.py +++ b/sdk/confidentialledger/azure-confidentialledger-certificate/azure/confidentialledger/certificate/_utils/model_base.py @@ -817,16 +817,16 @@ def _get_deserialize_callable_from_annotation( # pylint: disable=too-many-retur # is it optional? try: - if any(a for a in annotation.__args__ if a == type(None)): # pyright: ignore + if any(a for a in annotation.__args__ if a == type(None)): # pyright: ignore # pylint: disable=unidiomatic-typecheck if len(annotation.__args__) <= 2: # pyright: ignore if_obj_deserializer = _get_deserialize_callable_from_annotation( - next(a for a in annotation.__args__ if a != type(None)), module, rf # pyright: ignore + next(a for a in annotation.__args__ if a != type(None)), module, rf # pyright: ignore # pylint: disable=unidiomatic-typecheck ) return functools.partial(_deserialize_with_optional, if_obj_deserializer) # the type is Optional[Union[...]], we need to remove the None type from the Union annotation_copy = copy.copy(annotation) - annotation_copy.__args__ = [a for a in annotation_copy.__args__ if a != type(None)] # pyright: ignore + annotation_copy.__args__ = [a for a in annotation_copy.__args__ if a != type(None)] # pyright: ignore # pylint: disable=unidiomatic-typecheck return _get_deserialize_callable_from_annotation(annotation_copy, module, rf) except AttributeError: pass From a269f1f5d1f5ea13f3de5d18f9898b9836d7a140 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 18 Aug 2026 14:59:12 -0700 Subject: [PATCH 4/4] Generated api.md and api.metadata.yml --- .../api.md | 88 +++++++++++++++++++ .../api.metadata.yml | 3 + 2 files changed, 91 insertions(+) create mode 100644 sdk/confidentialledger/azure-confidentialledger-certificate/api.md create mode 100644 sdk/confidentialledger/azure-confidentialledger-certificate/api.metadata.yml diff --git a/sdk/confidentialledger/azure-confidentialledger-certificate/api.md b/sdk/confidentialledger/azure-confidentialledger-certificate/api.md new file mode 100644 index 000000000000..95e7e89ab129 --- /dev/null +++ b/sdk/confidentialledger/azure-confidentialledger-certificate/api.md @@ -0,0 +1,88 @@ +```py +namespace azure.confidentialledger.certificate + + class azure.confidentialledger.certificate.ConfidentialLedgerCertificateClient(_ConfidentialLedgerCertificateClientOperationsMixin): implements ContextManager + + def __init__( + self, + *, + api_version: str = ..., + certificate_endpoint: str = "https://identity.confidential-ledger.core.azure.com", + **kwargs: Any + ) -> None: ... + + def close(self) -> None: ... + + @distributed_trace + def get_ledger_identity( + self, + ledger_id: str, + **kwargs: Any + ) -> LedgerIdentityInformation: ... + + def send_request( + self, + request: HttpRequest, + *, + stream: bool = False, + **kwargs: Any + ) -> HttpResponse: ... + + +namespace azure.confidentialledger.certificate.aio + + class azure.confidentialledger.certificate.aio.ConfidentialLedgerCertificateClient(_ConfidentialLedgerCertificateClientOperationsMixin): implements AsyncContextManager + + def __init__( + self, + *, + api_version: str = ..., + certificate_endpoint: str = "https://identity.confidential-ledger.core.azure.com", + **kwargs: Any + ) -> None: ... + + async def close(self) -> None: ... + + @distributed_trace_async + async def get_ledger_identity( + self, + ledger_id: str, + **kwargs: Any + ) -> LedgerIdentityInformation: ... + + def send_request( + self, + request: HttpRequest, + *, + stream: bool = False, + **kwargs: Any + ) -> Awaitable[AsyncHttpResponse]: ... + + +namespace azure.confidentialledger.certificate.models + + class azure.confidentialledger.certificate.models.ConfidentialLedgerError(_Model): + error: Optional[ConfidentialLedgerErrorBody] + + + class azure.confidentialledger.certificate.models.ConfidentialLedgerErrorBody(_Model): + code: Optional[str] + message: Optional[str] + + + class azure.confidentialledger.certificate.models.LedgerIdentityInformation(_Model): + ledger_id: Optional[str] + ledger_tls_certificate: str + + @overload + def __init__( + self, + *, + ledger_tls_certificate: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + +``` \ No newline at end of file diff --git a/sdk/confidentialledger/azure-confidentialledger-certificate/api.metadata.yml b/sdk/confidentialledger/azure-confidentialledger-certificate/api.metadata.yml new file mode 100644 index 000000000000..923a414cdbca --- /dev/null +++ b/sdk/confidentialledger/azure-confidentialledger-certificate/api.metadata.yml @@ -0,0 +1,3 @@ +apiMdSha256: 1de3b9fcae8da38bd3feb1f8ac187c6f5936f9fc01eca2eab2207b918876e5c3 +parserVersion: 0.3.31 +pythonVersion: 3.10.12