| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 4927b70 commit 953a811
12 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -34,9 +34,9 @@ def get_topic_policy(project, topic_name): | |||
| 34 | 34 | ||
| 35 | 35 | policy = client.get_iam_policy(topic_path) | |
| 36 | 36 | ||
| 37 | - print('Policy for topic {}:'.format(topic_path)) | ||
| 37 | + print("Policy for topic {}:".format(topic_path)) | ||
| 38 | 38 | for binding in policy.bindings: | |
| 39 | - print('Role: {}, Members: {}'.format(binding.role, binding.members)) | ||
| 39 | + print("Role: {}, Members: {}".format(binding.role, binding.members)) | ||
| 40 | 40 | # [END pubsub_get_topic_policy] | |
| 41 | 41 | ||
| 42 | 42 | ||
@@ -48,9 +48,9 @@ def get_subscription_policy(project, subscription_name): | |||
| 48 | 48 | ||
| 49 | 49 | policy = client.get_iam_policy(subscription_path) | |
| 50 | 50 | ||
| 51 | - print('Policy for subscription {}:'.format(subscription_path)) | ||
| 51 | + print("Policy for subscription {}:".format(subscription_path)) | ||
| 52 | 52 | for binding in policy.bindings: | |
| 53 | - print('Role: {}, Members: {}'.format(binding.role, binding.members)) | ||
| 53 | + print("Role: {}, Members: {}".format(binding.role, binding.members)) | ||
| 54 | 54 | # [END pubsub_get_subscription_policy] | |
| 55 | 55 | ||
| 56 | 56 | ||
@@ -63,20 +63,17 @@ def set_topic_policy(project, topic_name): | |||
| 63 | 63 | policy = client.get_iam_policy(topic_path) | |
| 64 | 64 | ||
| 65 | 65 | # Add all users as viewers. | |
| 66 | - policy.bindings.add( | ||
| 67 | - role='roles/pubsub.viewer', | ||
| 68 | - members=['allUsers']) | ||
| 66 | + policy.bindings.add(role="roles/pubsub.viewer", members=["allUsers"]) | ||
| 69 | 67 | ||
| 70 | 68 | # Add a group as a publisher. | |
| 71 | 69 | policy.bindings.add( | |
| 72 | - role='roles/pubsub.publisher', | ||
| 73 | - members=['group:cloud-logs@google.com']) | ||
| 70 | + role="roles/pubsub.publisher", members=["group:cloud-logs@google.com"] | ||
| 71 | + ) | ||
| 74 | 72 | ||
| 75 | 73 | # Set the policy | |
| 76 | 74 | policy = client.set_iam_policy(topic_path, policy) | |
| 77 | 75 | ||
| 78 | - print('IAM policy for topic {} set: {}'.format( | ||
| 79 | - topic_name, policy)) | ||
| 76 | + print("IAM policy for topic {} set: {}".format(topic_name, policy)) | ||
| 80 | 77 | # [END pubsub_set_topic_policy] | |
| 81 | 78 | ||
| 82 | 79 | ||
@@ -89,20 +86,21 @@ def set_subscription_policy(project, subscription_name): | |||
| 89 | 86 | policy = client.get_iam_policy(subscription_path) | |
| 90 | 87 | ||
| 91 | 88 | # Add all users as viewers. | |
| 92 | - policy.bindings.add( | ||
| 93 | - role='roles/pubsub.viewer', | ||
| 94 | - members=['allUsers']) | ||
| 89 | + policy.bindings.add(role="roles/pubsub.viewer", members=["allUsers"]) | ||
| 95 | 90 | ||
| 96 | 91 | # Add a group as an editor. | |
| 97 | 92 | policy.bindings.add( | |
| 98 | - role='roles/editor', | ||
| 99 | - members=['group:cloud-logs@google.com']) | ||
| 93 | + role="roles/editor", members=["group:cloud-logs@google.com"] | ||
| 94 | + ) | ||
| 100 | 95 | ||
| 101 | 96 | # Set the policy | |
| 102 | 97 | policy = client.set_iam_policy(subscription_path, policy) | |
| 103 | 98 | ||
| 104 | - print('IAM policy for subscription {} set: {}'.format( | ||
| 105 | - subscription_name, policy)) | ||
| 99 | + print( | ||
| 100 | + "IAM policy for subscription {} set: {}".format( | ||
| 101 | + subscription_name, policy | ||
| 102 | + ) | ||
| 103 | + ) | ||
| 106 | 104 | # [END pubsub_set_subscription_policy] | |
| 107 | 105 | ||
| 108 | 106 | ||
@@ -112,16 +110,17 @@ def check_topic_permissions(project, topic_name): | |||
| 112 | 110 | client = pubsub_v1.PublisherClient() | |
| 113 | 111 | topic_path = client.topic_path(project, topic_name) | |
| 114 | 112 | ||
| 115 | - permissions_to_check = [ | ||
| 116 | - 'pubsub.topics.publish', | ||
| 117 | - 'pubsub.topics.update' | ||
| 118 | - ] | ||
| 113 | + permissions_to_check = ["pubsub.topics.publish", "pubsub.topics.update"] | ||
| 119 | 114 | ||
| 120 | 115 | allowed_permissions = client.test_iam_permissions( | |
| 121 | - topic_path, permissions_to_check) | ||
| 116 | + topic_path, permissions_to_check | ||
| 117 | + ) | ||
| 122 | 118 | ||
| 123 | - print('Allowed permissions for topic {}: {}'.format( | ||
| 124 | - topic_path, allowed_permissions)) | ||
| 119 | + print( | ||
| 120 | + "Allowed permissions for topic {}: {}".format( | ||
| 121 | + topic_path, allowed_permissions | ||
| 122 | + ) | ||
| 123 | + ) | ||
| 125 | 124 | # [END pubsub_test_topic_permissions] | |
| 126 | 125 | ||
| 127 | 126 | ||
@@ -132,63 +131,73 @@ def check_subscription_permissions(project, subscription_name): | |||
| 132 | 131 | subscription_path = client.subscription_path(project, subscription_name) | |
| 133 | 132 | ||
| 134 | 133 | permissions_to_check = [ | |
| 135 | - 'pubsub.subscriptions.consume', | ||
| 136 | - 'pubsub.subscriptions.update' | ||
| 134 | + "pubsub.subscriptions.consume", | ||
| 135 | + "pubsub.subscriptions.update", | ||
| 137 | 136 | ] | |
| 138 | 137 | ||
| 139 | 138 | allowed_permissions = client.test_iam_permissions( | |
| 140 | - subscription_path, permissions_to_check) | ||
| 139 | + subscription_path, permissions_to_check | ||
| 140 | + ) | ||
| 141 | 141 | ||
| 142 | - print('Allowed permissions for subscription {}: {}'.format( | ||
| 143 | - subscription_path, allowed_permissions)) | ||
| 142 | + print( | ||
| 143 | + "Allowed permissions for subscription {}: {}".format( | ||
| 144 | + subscription_path, allowed_permissions | ||
| 145 | + ) | ||
| 146 | + ) | ||
| 144 | 147 | # [END pubsub_test_subscription_permissions] | |
| 145 | 148 | ||
| 146 | 149 | ||
| 147 | - if __name__ == '__main__': | ||
| 150 | + if __name__ == "__main__": | ||
| 148 | 151 | parser = argparse.ArgumentParser( | |
| 149 | 152 | description=__doc__, | |
| 150 | - formatter_class=argparse.RawDescriptionHelpFormatter | ||
| 153 | + formatter_class=argparse.RawDescriptionHelpFormatter, | ||
| 151 | 154 | ) | |
| 152 | - parser.add_argument('project', help='Your Google Cloud project ID') | ||
| 155 | + parser.add_argument("project", help="Your Google Cloud project ID") | ||
| 153 | 156 | ||
| 154 | - subparsers = parser.add_subparsers(dest='command') | ||
| 157 | + subparsers = parser.add_subparsers(dest="command") | ||
| 155 | 158 | ||
| 156 | 159 | get_topic_policy_parser = subparsers.add_parser( | |
| 157 | - 'get-topic-policy', help=get_topic_policy.__doc__) | ||
| 158 | - get_topic_policy_parser.add_argument('topic_name') | ||
| 160 | + "get-topic-policy", help=get_topic_policy.__doc__ | ||
| 161 | + ) | ||
| 162 | + get_topic_policy_parser.add_argument("topic_name") | ||
| 159 | 163 | ||
| 160 | 164 | get_subscription_policy_parser = subparsers.add_parser( | |
| 161 | - 'get-subscription-policy', help=get_subscription_policy.__doc__) | ||
| 162 | - get_subscription_policy_parser.add_argument('subscription_name') | ||
| 165 | + "get-subscription-policy", help=get_subscription_policy.__doc__ | ||
| 166 | + ) | ||
| 167 | + get_subscription_policy_parser.add_argument("subscription_name") | ||
| 163 | 168 | ||
| 164 | 169 | set_topic_policy_parser = subparsers.add_parser( | |
| 165 | - 'set-topic-policy', help=set_topic_policy.__doc__) | ||
| 166 | - set_topic_policy_parser.add_argument('topic_name') | ||
| 170 | + "set-topic-policy", help=set_topic_policy.__doc__ | ||
| 171 | + ) | ||
| 172 | + set_topic_policy_parser.add_argument("topic_name") | ||
| 167 | 173 | ||
| 168 | 174 | set_subscription_policy_parser = subparsers.add_parser( | |
| 169 | - 'set-subscription-policy', help=set_subscription_policy.__doc__) | ||
| 170 | - set_subscription_policy_parser.add_argument('subscription_name') | ||
| 175 | + "set-subscription-policy", help=set_subscription_policy.__doc__ | ||
| 176 | + ) | ||
| 177 | + set_subscription_policy_parser.add_argument("subscription_name") | ||
| 171 | 178 | ||
| 172 | 179 | check_topic_permissions_parser = subparsers.add_parser( | |
| 173 | - 'check-topic-permissions', help=check_topic_permissions.__doc__) | ||
| 174 | - check_topic_permissions_parser.add_argument('topic_name') | ||
| 180 | + "check-topic-permissions", help=check_topic_permissions.__doc__ | ||
| 181 | + ) | ||
| 182 | + check_topic_permissions_parser.add_argument("topic_name") | ||
| 175 | 183 | ||
| 176 | 184 | check_subscription_permissions_parser = subparsers.add_parser( | |
| 177 | - 'check-subscription-permissions', | ||
| 178 | - help=check_subscription_permissions.__doc__) | ||
| 179 | - check_subscription_permissions_parser.add_argument('subscription_name') | ||
| 185 | + "check-subscription-permissions", | ||
| 186 | + help=check_subscription_permissions.__doc__, | ||
| 187 | + ) | ||
| 188 | + check_subscription_permissions_parser.add_argument("subscription_name") | ||
| 180 | 189 | ||
| 181 | 190 | args = parser.parse_args() | |
| 182 | 191 | ||
| 183 | - if args.command == 'get-topic-policy': | ||
| 192 | + if args.command == "get-topic-policy": | ||
| 184 | 193 | get_topic_policy(args.project, args.topic_name) | |
| 185 | - elif args.command == 'get-subscription-policy': | ||
| 194 | + elif args.command == "get-subscription-policy": | ||
| 186 | 195 | get_subscription_policy(args.project, args.subscription_name) | |
| 187 | - elif args.command == 'set-topic-policy': | ||
| 196 | + elif args.command == "set-topic-policy": | ||
| 188 | 197 | set_topic_policy(args.project, args.topic_name) | |
| 189 | - elif args.command == 'set-subscription-policy': | ||
| 198 | + elif args.command == "set-subscription-policy": | ||
| 190 | 199 | set_subscription_policy(args.project, args.subscription_name) | |
| 191 | - elif args.command == 'check-topic-permissions': | ||
| 200 | + elif args.command == "check-topic-permissions": | ||
| 192 | 201 | check_topic_permissions(args.project, args.topic_name) | |
| 193 | - elif args.command == 'check-subscription-permissions': | ||
| 202 | + elif args.command == "check-subscription-permissions": | ||
| 194 | 203 | check_subscription_permissions(args.project, args.subscription_name) | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -13,23 +13,25 @@ | |||
| 13 | 13 | # limitations under the License. | |
| 14 | 14 | ||
| 15 | 15 | import os | |
| 16 | + import uuid | ||
| 16 | 17 | ||
| 17 | 18 | from google.cloud import pubsub_v1 | |
| 18 | 19 | import pytest | |
| 19 | 20 | ||
| 20 | 21 | import iam | |
| 21 | 22 | ||
| 22 | - PROJECT = os.environ['GCLOUD_PROJECT'] | ||
| 23 | - TOPIC = 'iam-test-topic' | ||
| 24 | - SUBSCRIPTION = 'iam-test-subscription' | ||
| 23 | + UUID = uuid.uuid4().hex | ||
| 24 | + PROJECT = os.environ["GCLOUD_PROJECT"] | ||
| 25 | + TOPIC = "iam-test-topic-" + UUID | ||
| 26 | + SUBSCRIPTION = "iam-test-subscription-" + UUID | ||
| 25 | 27 | ||
| 26 | 28 | ||
| 27 | - @pytest.fixture(scope='module') | ||
| 29 | + @pytest.fixture(scope="module") | ||
| 28 | 30 | def publisher_client(): | |
| 29 | 31 | yield pubsub_v1.PublisherClient() | |
| 30 | 32 | ||
| 31 | 33 | ||
| 32 | - @pytest.fixture(scope='module') | ||
| 34 | + @pytest.fixture(scope="module") | ||
| 33 | 35 | def topic(publisher_client): | |
| 34 | 36 | topic_path = publisher_client.topic_path(PROJECT, TOPIC) | |
| 35 | 37 | ||
@@ -42,16 +44,19 @@ def topic(publisher_client): | |||
| 42 | 44 | ||
| 43 | 45 | yield topic_path | |
| 44 | 46 | ||
| 47 | + publisher_client.delete_topic(topic_path) | ||
| 45 | 48 | ||
| 46 | - @pytest.fixture(scope='module') | ||
| 49 | + | ||
| 50 | + @pytest.fixture(scope="module") | ||
| 47 | 51 | def subscriber_client(): | |
| 48 | 52 | yield pubsub_v1.SubscriberClient() | |
| 49 | 53 | ||
| 50 | 54 | ||
| 51 | 55 | @pytest.fixture | |
| 52 | 56 | def subscription(subscriber_client, topic): | |
| 53 | 57 | subscription_path = subscriber_client.subscription_path( | |
| 54 | - PROJECT, SUBSCRIPTION) | ||
| 58 | + PROJECT, SUBSCRIPTION | ||
| 59 | + ) | ||
| 55 | 60 | ||
| 56 | 61 | try: | |
| 57 | 62 | subscriber_client.delete_subscription(subscription_path) | |
@@ -62,6 +67,8 @@ def subscription(subscriber_client, topic): | |||
| 62 | 67 | ||
| 63 | 68 | yield subscription_path | |
| 64 | 69 | ||
| 70 | + subscriber_client.delete_subscription(subscription_path) | ||
| 71 | + | ||
| 65 | 72 | ||
| 66 | 73 | def test_get_topic_policy(topic, capsys): | |
| 67 | 74 | iam.get_topic_policy(PROJECT, TOPIC) | |
@@ -81,16 +88,16 @@ def test_set_topic_policy(publisher_client, topic): | |||
| 81 | 88 | iam.set_topic_policy(PROJECT, TOPIC) | |
| 82 | 89 | ||
| 83 | 90 | policy = publisher_client.get_iam_policy(topic) | |
| 84 | - assert 'roles/pubsub.publisher' in str(policy) | ||
| 85 | - assert 'allUsers' in str(policy) | ||
| 91 | + assert "roles/pubsub.publisher" in str(policy) | ||
| 92 | + assert "allUsers" in str(policy) | ||
| 86 | 93 | ||
| 87 | 94 | ||
| 88 | 95 | def test_set_subscription_policy(subscriber_client, subscription): | |
| 89 | 96 | iam.set_subscription_policy(PROJECT, SUBSCRIPTION) | |
| 90 | 97 | ||
| 91 | 98 | policy = subscriber_client.get_iam_policy(subscription) | |
| 92 | - assert 'roles/pubsub.viewer' in str(policy) | ||
| 93 | - assert 'allUsers' in str(policy) | ||
| 99 | + assert "roles/pubsub.viewer" in str(policy) | ||
| 100 | + assert "allUsers" in str(policy) | ||
| 94 | 101 | ||
| 95 | 102 | ||
| 96 | 103 | def test_check_topic_permissions(topic, capsys): | |
@@ -99,7 +106,7 @@ def test_check_topic_permissions(topic, capsys): | |||
| 99 | 106 | out, _ = capsys.readouterr() | |
| 100 | 107 | ||
| 101 | 108 | assert topic in out | |
| 102 | - assert 'pubsub.topics.publish' in out | ||
| 109 | + assert "pubsub.topics.publish" in out | ||
| 103 | 110 | ||
| 104 | 111 | ||
| 105 | 112 | def test_check_subscription_permissions(subscription, capsys): | |
@@ -108,4 +115,4 @@ def test_check_subscription_permissions(subscription, capsys): | |||
| 108 | 115 | out, _ = capsys.readouterr() | |
| 109 | 116 | ||
| 110 | 117 | assert subscription in out | |
| 111 | - assert 'pubsub.subscriptions.consume' in out | ||
| 118 | + assert "pubsub.subscriptions.consume" in out | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments