From 1fa44ffd426d0857b579bbce565eba74d8fbd86b Mon Sep 17 00:00:00 2001 From: orabbit Date: Fri, 16 Jun 2023 13:29:01 -0400 Subject: [PATCH 1/7] samples: Payload Unwrapping (NoWrapper) --- samples/snippets/subscriber.py | 49 ++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/samples/snippets/subscriber.py b/samples/snippets/subscriber.py index b1b9ad0ea..cbdccdbe6 100644 --- a/samples/snippets/subscriber.py +++ b/samples/snippets/subscriber.py @@ -187,6 +187,44 @@ def create_push_subscription( # [END pubsub_create_push_subscription] +def create_push_no_wrapper_subscription( + project_id: str, topic_id: str, subscription_id: str, endpoint: str +) -> None: + """Create a new push no wrapper subscription on the given topic.""" + # [START pubsub_create_push_no_wrapper_subscription] + from google.cloud import pubsub_v1 + + # TODO(developer) + # project_id = "your-project-id" + # topic_id = "your-topic-id" + # subscription_id = "your-subscription-id" + # endpoint = "https://my-test-project.appspot.com/push" + + publisher = pubsub_v1.PublisherClient() + subscriber = pubsub_v1.SubscriberClient() + topic_path = publisher.topic_path(project_id, topic_id) + subscription_path = subscriber.subscription_path(project_id, subscription_id) + + no_wrapper = pubsub_v1.types.NoWrapper(write_metadata=True) + push_config = pubsub_v1.types.PushConfig(push_endpoint=endpoint, no_wrapper=no_wrapper) + + # Wrap the subscriber in a 'with' block to automatically call close() to + # close the underlying gRPC channel when done. + with subscriber: + subscription = subscriber.create_subscription( + request={ + "name": subscription_path, + "topic": topic_path, + "push_config": push_config, + } + ) + + print(f"Push no wrapper subscription created: {subscription}.") + print(f"Endpoint for subscription is: {endpoint}") + print(f"No wrapper configuration for subscription is: {no_wrapper}") + # [END pubsub_create_push_no_wrapper_subscription] + + def create_subscription_with_ordering( project_id: str, topic_id: str, subscription_id: str ) -> None: @@ -946,6 +984,13 @@ def callback(message: pubsub_v1.subscriber.message.Message) -> None: create_push_parser.add_argument("subscription_id") create_push_parser.add_argument("endpoint") + create_push_no_wrapper_parser = subparsers.add_parser( + "create-push-no-wrapper", help=create_push_no_wrapper_subscription.__doc__ + ) + create_push_parser.add_argument("topic_id") + create_push_parser.add_argument("subscription_id") + create_push_parser.add_argument("endpoint") + create_subscription_with_ordering_parser = subparsers.add_parser( "create-with-ordering", help=create_subscription_with_ordering.__doc__ ) @@ -1092,6 +1137,10 @@ def callback(message: pubsub_v1.subscriber.message.Message) -> None: create_push_subscription( args.project_id, args.topic_id, args.subscription_id, args.endpoint ) + elif args.command == "create-push-no-wrapper": + create_push_no_wrapper_subscription( + args.project_id, args.topic_id, args.subscription_id, args.endpoint + ) elif args.command == "create-with-ordering": create_subscription_with_ordering( args.project_id, args.topic_id, args.subscription_id From 43cd964574ab81a964edeabc34c17c9f45994a8d Mon Sep 17 00:00:00 2001 From: orabbit Date: Fri, 16 Jun 2023 14:55:56 -0400 Subject: [PATCH 2/7] samples: Payload Unwrapping (NoWrapper) --- samples/snippets/subscriber_test.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/samples/snippets/subscriber_test.py b/samples/snippets/subscriber_test.py index 435724782..098eb96e9 100644 --- a/samples/snippets/subscriber_test.py +++ b/samples/snippets/subscriber_test.py @@ -549,6 +549,35 @@ def test_update_push_subscription( # Clean up. subscriber_client.delete_subscription(request={"subscription": subscription_path}) +def test_create_push_no_wrapper_subscription( + subscriber_client: pubsub_v1.SubscriberClient, + topic: str, + capsys: CaptureFixture[str], +) -> None: + + push_subscription_for_create_name = ( + f"subscription-test-subscription-push-no-wrapper-for-create-{PY_VERSION}-{UUID}" + ) + + subscription_path = subscriber_client.subscription_path( + PROJECT_ID, push_subscription_for_create_name + ) + try: + subscriber_client.delete_subscription( + request={"subscription": subscription_path} + ) + except NotFound: + pass + + subscriber.create_push_no_wrapper_subscription( + PROJECT_ID, TOPIC, push_subscription_for_create_name, ENDPOINT + ) + + out, _ = capsys.readouterr() + assert f"{push_subscription_for_create_name}" in out + + # Clean up. + subscriber_client.delete_subscription(request={"subscription": subscription_path}) @pytest.fixture(scope="module") def bigquery_table() -> Generator[str, None, None]: From 02eefb261ee93a26aaa1ae1da690e2292de9096c Mon Sep 17 00:00:00 2001 From: orabbit Date: Fri, 16 Jun 2023 16:25:06 -0400 Subject: [PATCH 3/7] samples: Payload Unwrapping (NoWrapper) --- samples/snippets/subscriber.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/snippets/subscriber.py b/samples/snippets/subscriber.py index cbdccdbe6..c39b36e0e 100644 --- a/samples/snippets/subscriber.py +++ b/samples/snippets/subscriber.py @@ -205,7 +205,7 @@ def create_push_no_wrapper_subscription( topic_path = publisher.topic_path(project_id, topic_id) subscription_path = subscriber.subscription_path(project_id, subscription_id) - no_wrapper = pubsub_v1.types.NoWrapper(write_metadata=True) + no_wrapper = pubsub_v1.types.PushConfig.NoWrapper(write_metadata=True) push_config = pubsub_v1.types.PushConfig(push_endpoint=endpoint, no_wrapper=no_wrapper) # Wrap the subscriber in a 'with' block to automatically call close() to From 09b3ea0d00a9156ea8d601154c3abcdda4cfefa8 Mon Sep 17 00:00:00 2001 From: orabbit Date: Fri, 16 Jun 2023 16:31:59 -0400 Subject: [PATCH 4/7] samples: Payload Unwrapping (NoWrapper) --- samples/snippets/subscriber.py | 4 ++-- samples/snippets/subscriber_test.py | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/samples/snippets/subscriber.py b/samples/snippets/subscriber.py index c39b36e0e..d49f3a007 100644 --- a/samples/snippets/subscriber.py +++ b/samples/snippets/subscriber.py @@ -985,8 +985,8 @@ def callback(message: pubsub_v1.subscriber.message.Message) -> None: create_push_parser.add_argument("endpoint") create_push_no_wrapper_parser = subparsers.add_parser( - "create-push-no-wrapper", help=create_push_no_wrapper_subscription.__doc__ - ) + "create-push-no-wrapper", help=create_push_no_wrapper_subscription.__doc__ + ) create_push_parser.add_argument("topic_id") create_push_parser.add_argument("subscription_id") create_push_parser.add_argument("endpoint") diff --git a/samples/snippets/subscriber_test.py b/samples/snippets/subscriber_test.py index 098eb96e9..5ba8b4556 100644 --- a/samples/snippets/subscriber_test.py +++ b/samples/snippets/subscriber_test.py @@ -549,6 +549,7 @@ def test_update_push_subscription( # Clean up. subscriber_client.delete_subscription(request={"subscription": subscription_path}) + def test_create_push_no_wrapper_subscription( subscriber_client: pubsub_v1.SubscriberClient, topic: str, @@ -579,6 +580,7 @@ def test_create_push_no_wrapper_subscription( # Clean up. subscriber_client.delete_subscription(request={"subscription": subscription_path}) + @pytest.fixture(scope="module") def bigquery_table() -> Generator[str, None, None]: client = bigquery.Client() From 88676aca26ab7ae935278cc684b10f666496a517 Mon Sep 17 00:00:00 2001 From: orabbit Date: Mon, 17 Jul 2023 10:58:59 -0400 Subject: [PATCH 5/7] samples: Payload Unwrapping (NoWrapper) --- samples/snippets/subscriber.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/samples/snippets/subscriber.py b/samples/snippets/subscriber.py index d49f3a007..617241763 100644 --- a/samples/snippets/subscriber.py +++ b/samples/snippets/subscriber.py @@ -1138,9 +1138,9 @@ def callback(message: pubsub_v1.subscriber.message.Message) -> None: args.project_id, args.topic_id, args.subscription_id, args.endpoint ) elif args.command == "create-push-no-wrapper": - create_push_no_wrapper_subscription( + create_push_no_wrapper_subscription( args.project_id, args.topic_id, args.subscription_id, args.endpoint - ) + ) elif args.command == "create-with-ordering": create_subscription_with_ordering( args.project_id, args.topic_id, args.subscription_id From abf178dc9a938f6fdadcf53932298bd6582a60ff Mon Sep 17 00:00:00 2001 From: Owl Bot Date: Tue, 18 Jul 2023 18:44:25 +0000 Subject: [PATCH 6/7] =?UTF-8?q?=F0=9F=A6=89=20Updates=20from=20OwlBot=20po?= =?UTF-8?q?st-processor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --- samples/snippets/subscriber.py | 4 +++- samples/snippets/subscriber_test.py | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/samples/snippets/subscriber.py b/samples/snippets/subscriber.py index 617241763..3a08e688f 100644 --- a/samples/snippets/subscriber.py +++ b/samples/snippets/subscriber.py @@ -206,7 +206,9 @@ def create_push_no_wrapper_subscription( subscription_path = subscriber.subscription_path(project_id, subscription_id) no_wrapper = pubsub_v1.types.PushConfig.NoWrapper(write_metadata=True) - push_config = pubsub_v1.types.PushConfig(push_endpoint=endpoint, no_wrapper=no_wrapper) + push_config = pubsub_v1.types.PushConfig( + push_endpoint=endpoint, no_wrapper=no_wrapper + ) # Wrap the subscriber in a 'with' block to automatically call close() to # close the underlying gRPC channel when done. diff --git a/samples/snippets/subscriber_test.py b/samples/snippets/subscriber_test.py index 5ba8b4556..3eed0d886 100644 --- a/samples/snippets/subscriber_test.py +++ b/samples/snippets/subscriber_test.py @@ -551,9 +551,9 @@ def test_update_push_subscription( def test_create_push_no_wrapper_subscription( - subscriber_client: pubsub_v1.SubscriberClient, - topic: str, - capsys: CaptureFixture[str], + subscriber_client: pubsub_v1.SubscriberClient, + topic: str, + capsys: CaptureFixture[str], ) -> None: push_subscription_for_create_name = ( From b4bb7b73dfd5361d6ca73986a458829bc94e22c5 Mon Sep 17 00:00:00 2001 From: Casey O'Hare Date: Tue, 18 Jul 2023 16:53:52 -0400 Subject: [PATCH 7/7] Update subscriber.py --- samples/snippets/subscriber.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/snippets/subscriber.py b/samples/snippets/subscriber.py index 3a08e688f..b7fd1ebdd 100644 --- a/samples/snippets/subscriber.py +++ b/samples/snippets/subscriber.py @@ -989,9 +989,9 @@ def callback(message: pubsub_v1.subscriber.message.Message) -> None: create_push_no_wrapper_parser = subparsers.add_parser( "create-push-no-wrapper", help=create_push_no_wrapper_subscription.__doc__ ) - create_push_parser.add_argument("topic_id") - create_push_parser.add_argument("subscription_id") - create_push_parser.add_argument("endpoint") + create_push_no_wrapper_parser.add_argument("topic_id") + create_push_no_wrapper_parser.add_argument("subscription_id") + create_push_no_wrapper_parser.add_argument("endpoint") create_subscription_with_ordering_parser = subparsers.add_parser( "create-with-ordering", help=create_subscription_with_ordering.__doc__