From 2726a721b0eecd05216fa018cce8d91407853187 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 27 Jun 2024 11:32:28 -0700 Subject: [PATCH] feat: [google-cloud-dataplex] expose data scan execution create time to customers (#12846) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 647205054 Source-Link: https://github.com/googleapis/googleapis/commit/0e33f8672486b380c7729397db5ad2bd6939c9c1 Source-Link: https://github.com/googleapis/googleapis-gen/commit/efa2da1632aaf19fa074f724689c36c0c9768d4b Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLWRhdGFwbGV4Ly5Pd2xCb3QueWFtbCIsImgiOiJlZmEyZGExNjMyYWFmMTlmYTA3NGY3MjQ2ODljMzZjMGM5NzY4ZDRiIn0= --------- Co-authored-by: Owl Bot Co-authored-by: Victor Chudnovsky --- packages/google-cloud-dataplex/README.rst | 2 +- packages/google-cloud-dataplex/docs/index.rst | 5 ++ .../docs/summary_overview.md | 22 +++++++++ .../google/cloud/dataplex/gapic_version.py | 2 +- .../google/cloud/dataplex_v1/gapic_version.py | 2 +- .../cloud/dataplex_v1/types/datascans.py | 8 ++++ packages/google-cloud-dataplex/noxfile.py | 46 ++++++++++++++----- ...pet_metadata_google.cloud.dataplex.v1.json | 2 +- 8 files changed, 74 insertions(+), 15 deletions(-) create mode 100644 packages/google-cloud-dataplex/docs/summary_overview.md diff --git a/packages/google-cloud-dataplex/README.rst b/packages/google-cloud-dataplex/README.rst index 1f79646a30ed..4b0f591216f8 100644 --- a/packages/google-cloud-dataplex/README.rst +++ b/packages/google-cloud-dataplex/README.rst @@ -15,7 +15,7 @@ Python Client for Cloud Dataplex .. |versions| image:: https://img.shields.io/pypi/pyversions/google-cloud-dataplex.svg :target: https://pypi.org/project/google-cloud-dataplex/ .. _Cloud Dataplex: https://cloud.google.com/dataplex -.. _Client Library Documentation: https://cloud.google.com/python/docs/reference/dataplex/latest +.. _Client Library Documentation: https://cloud.google.com/python/docs/reference/dataplex/latest/summary_overview .. _Product Documentation: https://cloud.google.com/dataplex Quick Start diff --git a/packages/google-cloud-dataplex/docs/index.rst b/packages/google-cloud-dataplex/docs/index.rst index cab55ffbf585..367f229c54fb 100644 --- a/packages/google-cloud-dataplex/docs/index.rst +++ b/packages/google-cloud-dataplex/docs/index.rst @@ -21,3 +21,8 @@ For a list of all ``google-cloud-dataplex`` releases: :maxdepth: 2 CHANGELOG + +.. toctree:: + :hidden: + + summary_overview.md diff --git a/packages/google-cloud-dataplex/docs/summary_overview.md b/packages/google-cloud-dataplex/docs/summary_overview.md new file mode 100644 index 000000000000..2d84cb48a93b --- /dev/null +++ b/packages/google-cloud-dataplex/docs/summary_overview.md @@ -0,0 +1,22 @@ +[ +This is a templated file. Adding content to this file may result in it being +reverted. Instead, if you want to place additional content, create an +"overview_content.md" file in `docs/` directory. The Sphinx tool will +pick up on the content and merge the content. +]: # + +# Cloud Dataplex API + +Overview of the APIs available for Cloud Dataplex API. + +## All entries + +Classes, methods and properties & attributes for +Cloud Dataplex API. + +[classes](https://cloud.google.com/python/docs/reference/dataplex/latest/summary_class.html) + +[methods](https://cloud.google.com/python/docs/reference/dataplex/latest/summary_method.html) + +[properties and +attributes](https://cloud.google.com/python/docs/reference/dataplex/latest/summary_property.html) diff --git a/packages/google-cloud-dataplex/google/cloud/dataplex/gapic_version.py b/packages/google-cloud-dataplex/google/cloud/dataplex/gapic_version.py index dfb0e5435759..558c8aab67c5 100644 --- a/packages/google-cloud-dataplex/google/cloud/dataplex/gapic_version.py +++ b/packages/google-cloud-dataplex/google/cloud/dataplex/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "2.1.0" # {x-release-please-version} +__version__ = "0.0.0" # {x-release-please-version} diff --git a/packages/google-cloud-dataplex/google/cloud/dataplex_v1/gapic_version.py b/packages/google-cloud-dataplex/google/cloud/dataplex_v1/gapic_version.py index dfb0e5435759..558c8aab67c5 100644 --- a/packages/google-cloud-dataplex/google/cloud/dataplex_v1/gapic_version.py +++ b/packages/google-cloud-dataplex/google/cloud/dataplex_v1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "2.1.0" # {x-release-please-version} +__version__ = "0.0.0" # {x-release-please-version} diff --git a/packages/google-cloud-dataplex/google/cloud/dataplex_v1/types/datascans.py b/packages/google-cloud-dataplex/google/cloud/dataplex_v1/types/datascans.py index dc66c4e0b790..e64a238b7129 100644 --- a/packages/google-cloud-dataplex/google/cloud/dataplex_v1/types/datascans.py +++ b/packages/google-cloud-dataplex/google/cloud/dataplex_v1/types/datascans.py @@ -605,6 +605,9 @@ class ExecutionStatus(proto.Message): The time when the latest DataScanJob started. latest_job_end_time (google.protobuf.timestamp_pb2.Timestamp): The time when the latest DataScanJob ended. + latest_job_create_time (google.protobuf.timestamp_pb2.Timestamp): + Optional. The time when the DataScanJob + execution was created. """ latest_job_start_time: timestamp_pb2.Timestamp = proto.Field( @@ -617,6 +620,11 @@ class ExecutionStatus(proto.Message): number=5, message=timestamp_pb2.Timestamp, ) + latest_job_create_time: timestamp_pb2.Timestamp = proto.Field( + proto.MESSAGE, + number=6, + message=timestamp_pb2.Timestamp, + ) name: str = proto.Field( proto.STRING, diff --git a/packages/google-cloud-dataplex/noxfile.py b/packages/google-cloud-dataplex/noxfile.py index 1e6cd48d0529..67b7265f7586 100644 --- a/packages/google-cloud-dataplex/noxfile.py +++ b/packages/google-cloud-dataplex/noxfile.py @@ -160,14 +160,28 @@ def install_unittest_dependencies(session, *constraints): session.install("-e", ".", *constraints) -def default(session): +@nox.session(python=UNIT_TEST_PYTHON_VERSIONS) +@nox.parametrize( + "protobuf_implementation", + ["python", "upb", "cpp"], +) +def unit(session, protobuf_implementation): # Install all test dependencies, then install this package in-place. + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + session.skip("cpp implementation is not supported in python 3.11+") + constraints_path = str( CURRENT_DIRECTORY / "testing" / f"constraints-{session.python}.txt" ) install_unittest_dependencies(session, "-c", constraints_path) + # TODO(https://github.com/googleapis/synthtool/issues/1976): + # Remove the 'cpp' implementation once support for Protobuf 3.x is dropped. + # The 'cpp' implementation requires Protobuf<4. + if protobuf_implementation == "cpp": + session.install("protobuf<4") + # Run py.test against the unit tests. session.run( "py.test", @@ -181,15 +195,12 @@ def default(session): "--cov-fail-under=0", os.path.join("tests", "unit"), *session.posargs, + env={ + "PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION": protobuf_implementation, + }, ) -@nox.session(python=UNIT_TEST_PYTHON_VERSIONS) -def unit(session): - """Run the unit test suite.""" - default(session) - - def install_systemtest_dependencies(session, *constraints): # Use pre-release gRPC for system tests. # Exclude version 1.52.0rc1 which has a known issue. @@ -358,9 +369,16 @@ def docfx(session): @nox.session(python="3.12") -def prerelease_deps(session): +@nox.parametrize( + "protobuf_implementation", + ["python", "upb", "cpp"], +) +def prerelease_deps(session, protobuf_implementation): """Run all tests with prerelease versions of dependencies installed.""" + if protobuf_implementation == "cpp" and session.python in ("3.11", "3.12"): + session.skip("cpp implementation is not supported in python 3.11+") + # Install all dependencies session.install("-e", ".[all, tests, tracing]") unit_deps_all = UNIT_TEST_STANDARD_DEPENDENCIES + UNIT_TEST_EXTERNAL_DEPENDENCIES @@ -397,9 +415,9 @@ def prerelease_deps(session): "protobuf", # dependency of grpc "six", + "grpc-google-iam-v1", "googleapis-common-protos", - # Exclude version 1.52.0rc1 which has a known issue. See https://github.com/grpc/grpc/issues/32163 - "grpcio!=1.52.0rc1", + "grpcio", "grpcio-status", "google-api-core", "google-auth", @@ -425,4 +443,10 @@ def prerelease_deps(session): session.run("python", "-c", "import grpc; print(grpc.__version__)") session.run("python", "-c", "import google.auth; print(google.auth.__version__)") - session.run("py.test", "tests/unit") + session.run( + "py.test", + "tests/unit", + env={ + "PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION": protobuf_implementation, + }, + ) diff --git a/packages/google-cloud-dataplex/samples/generated_samples/snippet_metadata_google.cloud.dataplex.v1.json b/packages/google-cloud-dataplex/samples/generated_samples/snippet_metadata_google.cloud.dataplex.v1.json index 55962e1c1ec2..61adee5a1be5 100644 --- a/packages/google-cloud-dataplex/samples/generated_samples/snippet_metadata_google.cloud.dataplex.v1.json +++ b/packages/google-cloud-dataplex/samples/generated_samples/snippet_metadata_google.cloud.dataplex.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-dataplex", - "version": "2.1.0" + "version": "0.1.0" }, "snippets": [ {