google-apis-dns_v1 0.19.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ec8acfa6021f5c3453e168d5fbd09dbc04fd6404205de8ec79515faea5b9339c
4
- data.tar.gz: 87f77c5ade7757ab5dd868f2c7250143816033980671d2960c71b3037d09bbc4
3
+ metadata.gz: 0a3ea610b01252bd8328277ec581ab0898b8b039f69a529340e7ecb861320a1a
4
+ data.tar.gz: 840575a14bb1e2bf2615806603eb3fd934035f7f6d96f955ce254db448b5ff18
5
5
  SHA512:
6
- metadata.gz: 2dce7fea0f8db9e1142e12392aebbe74056839388c9d34dbbb299cf80af0918f2a9980986d23c78d0e1ceafe3aca46478c61c11343b3173615086a5b98b01a7f
7
- data.tar.gz: 2e0bd3f35b635de93d2b26e922473796c6e04982d2c71bc35359a6323fb50cadc9c9680f930fce2a5a3d4edcd693a0afe5ccd644ce1907246b2ea78481192902
6
+ metadata.gz: 7382f5ce360abcaf91a8c67b5b09506edf38bc0f440d32cc18051646fd04b27c041ef96b79c2c6eb9db4b32b5c3adb52d8e8c5da39a9a9a398ee5a37980259b5
7
+ data.tar.gz: dbf108f07885d5478b99600a43ecfd348325e38ce0c99df50f20447a0cb6fd2f6bf7576aa07d3f996e0d7093a556d7c380a5502879c7a9660dbe08efd63593dc
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-dns_v1
2
2
 
3
+ ### v0.20.0 (2022-05-25)
4
+
5
+ * Regenerated from discovery document revision 20220518
6
+
3
7
  ### v0.19.0 (2022-02-01)
4
8
 
5
9
  * Regenerated from discovery document revision 20220127
@@ -340,6 +340,437 @@ module Google
340
340
  end
341
341
  end
342
342
 
343
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
344
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
345
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
346
+ # "Summary size limit" description: "Determines if a summary is less than 100
347
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
348
+ # Requestor is owner" description: "Determines if requestor is the document
349
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
350
+ # Logic): title: "Public documents" description: "Determine whether the document
351
+ # should be publicly visible" expression: "document.type != 'private' &&
352
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
353
+ # string" description: "Create a notification string with a timestamp."
354
+ # expression: "'New message received at ' + string(document.create_time)" The
355
+ # exact variables and functions that may be referenced within an expression are
356
+ # determined by the service that evaluates it. See the service documentation for
357
+ # additional information.
358
+ class Expr
359
+ include Google::Apis::Core::Hashable
360
+
361
+ # Optional. Description of the expression. This is a longer text which describes
362
+ # the expression, e.g. when hovered over it in a UI.
363
+ # Corresponds to the JSON property `description`
364
+ # @return [String]
365
+ attr_accessor :description
366
+
367
+ # Textual representation of an expression in Common Expression Language syntax.
368
+ # Corresponds to the JSON property `expression`
369
+ # @return [String]
370
+ attr_accessor :expression
371
+
372
+ # Optional. String indicating the location of the expression for error reporting,
373
+ # e.g. a file name and a position in the file.
374
+ # Corresponds to the JSON property `location`
375
+ # @return [String]
376
+ attr_accessor :location
377
+
378
+ # Optional. Title for the expression, i.e. a short string describing its purpose.
379
+ # This can be used e.g. in UIs which allow to enter the expression.
380
+ # Corresponds to the JSON property `title`
381
+ # @return [String]
382
+ attr_accessor :title
383
+
384
+ def initialize(**args)
385
+ update!(**args)
386
+ end
387
+
388
+ # Update properties of this object
389
+ def update!(**args)
390
+ @description = args[:description] if args.key?(:description)
391
+ @expression = args[:expression] if args.key?(:expression)
392
+ @location = args[:location] if args.key?(:location)
393
+ @title = args[:title] if args.key?(:title)
394
+ end
395
+ end
396
+
397
+ # Specifies the audit configuration for a service. The configuration determines
398
+ # which permission types are logged, and what identities, if any, are exempted
399
+ # from logging. An AuditConfig must have one or more AuditLogConfigs. If there
400
+ # are AuditConfigs for both `allServices` and a specific service, the union of
401
+ # the two AuditConfigs is used for that service: the log_types specified in each
402
+ # AuditConfig are enabled, and the exempted_members in each AuditLogConfig are
403
+ # exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` "
404
+ # service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", "
405
+ # exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `,
406
+ # ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com",
407
+ # "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE"
408
+ # , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice,
409
+ # this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also
410
+ # exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com`
411
+ # from DATA_WRITE logging.
412
+ class GoogleIamV1AuditConfig
413
+ include Google::Apis::Core::Hashable
414
+
415
+ # The configuration for logging of each type of permission.
416
+ # Corresponds to the JSON property `auditLogConfigs`
417
+ # @return [Array<Google::Apis::DnsV1::GoogleIamV1AuditLogConfig>]
418
+ attr_accessor :audit_log_configs
419
+
420
+ # Specifies a service that will be enabled for audit logging. For example, `
421
+ # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
422
+ # value that covers all services.
423
+ # Corresponds to the JSON property `service`
424
+ # @return [String]
425
+ attr_accessor :service
426
+
427
+ def initialize(**args)
428
+ update!(**args)
429
+ end
430
+
431
+ # Update properties of this object
432
+ def update!(**args)
433
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
434
+ @service = args[:service] if args.key?(:service)
435
+ end
436
+ end
437
+
438
+ # Provides the configuration for logging a type of permissions. Example: ` "
439
+ # audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user:
440
+ # jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables '
441
+ # DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from
442
+ # DATA_READ logging.
443
+ class GoogleIamV1AuditLogConfig
444
+ include Google::Apis::Core::Hashable
445
+
446
+ # Specifies the identities that do not cause logging for this type of permission.
447
+ # Follows the same format of Binding.members.
448
+ # Corresponds to the JSON property `exemptedMembers`
449
+ # @return [Array<String>]
450
+ attr_accessor :exempted_members
451
+
452
+ # The log type that this config enables.
453
+ # Corresponds to the JSON property `logType`
454
+ # @return [String]
455
+ attr_accessor :log_type
456
+
457
+ def initialize(**args)
458
+ update!(**args)
459
+ end
460
+
461
+ # Update properties of this object
462
+ def update!(**args)
463
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
464
+ @log_type = args[:log_type] if args.key?(:log_type)
465
+ end
466
+ end
467
+
468
+ # Associates `members`, or principals, with a `role`.
469
+ class GoogleIamV1Binding
470
+ include Google::Apis::Core::Hashable
471
+
472
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
473
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
474
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
475
+ # "Summary size limit" description: "Determines if a summary is less than 100
476
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
477
+ # Requestor is owner" description: "Determines if requestor is the document
478
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
479
+ # Logic): title: "Public documents" description: "Determine whether the document
480
+ # should be publicly visible" expression: "document.type != 'private' &&
481
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
482
+ # string" description: "Create a notification string with a timestamp."
483
+ # expression: "'New message received at ' + string(document.create_time)" The
484
+ # exact variables and functions that may be referenced within an expression are
485
+ # determined by the service that evaluates it. See the service documentation for
486
+ # additional information.
487
+ # Corresponds to the JSON property `condition`
488
+ # @return [Google::Apis::DnsV1::Expr]
489
+ attr_accessor :condition
490
+
491
+ # Specifies the principals requesting access for a Google Cloud resource. `
492
+ # members` can have the following values: * `allUsers`: A special identifier
493
+ # that represents anyone who is on the internet; with or without a Google
494
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
495
+ # anyone who is authenticated with a Google account or a service account. * `
496
+ # user:`emailid``: An email address that represents a specific Google account.
497
+ # For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
498
+ # address that represents a service account. For example, `my-other-app@appspot.
499
+ # gserviceaccount.com`. * `group:`emailid``: An email address that represents a
500
+ # Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
501
+ # `uniqueid``: An email address (plus unique identifier) representing a user
502
+ # that has been recently deleted. For example, `alice@example.com?uid=
503
+ # 123456789012345678901`. If the user is recovered, this value reverts to `user:`
504
+ # emailid`` and the recovered user retains the role in the binding. * `deleted:
505
+ # serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
506
+ # identifier) representing a service account that has been recently deleted. For
507
+ # example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
508
+ # If the service account is undeleted, this value reverts to `serviceAccount:`
509
+ # emailid`` and the undeleted service account retains the role in the binding. *
510
+ # `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
511
+ # identifier) representing a Google group that has been recently deleted. For
512
+ # example, `admins@example.com?uid=123456789012345678901`. If the group is
513
+ # recovered, this value reverts to `group:`emailid`` and the recovered group
514
+ # retains the role in the binding. * `domain:`domain``: The G Suite domain (
515
+ # primary) that represents all the users of that domain. For example, `google.
516
+ # com` or `example.com`.
517
+ # Corresponds to the JSON property `members`
518
+ # @return [Array<String>]
519
+ attr_accessor :members
520
+
521
+ # Role that is assigned to the list of `members`, or principals. For example, `
522
+ # roles/viewer`, `roles/editor`, or `roles/owner`.
523
+ # Corresponds to the JSON property `role`
524
+ # @return [String]
525
+ attr_accessor :role
526
+
527
+ def initialize(**args)
528
+ update!(**args)
529
+ end
530
+
531
+ # Update properties of this object
532
+ def update!(**args)
533
+ @condition = args[:condition] if args.key?(:condition)
534
+ @members = args[:members] if args.key?(:members)
535
+ @role = args[:role] if args.key?(:role)
536
+ end
537
+ end
538
+
539
+ # Request message for `GetIamPolicy` method.
540
+ class GoogleIamV1GetIamPolicyRequest
541
+ include Google::Apis::Core::Hashable
542
+
543
+ # Encapsulates settings provided to GetIamPolicy.
544
+ # Corresponds to the JSON property `options`
545
+ # @return [Google::Apis::DnsV1::GoogleIamV1GetPolicyOptions]
546
+ attr_accessor :options
547
+
548
+ def initialize(**args)
549
+ update!(**args)
550
+ end
551
+
552
+ # Update properties of this object
553
+ def update!(**args)
554
+ @options = args[:options] if args.key?(:options)
555
+ end
556
+ end
557
+
558
+ # Encapsulates settings provided to GetIamPolicy.
559
+ class GoogleIamV1GetPolicyOptions
560
+ include Google::Apis::Core::Hashable
561
+
562
+ # Optional. The maximum policy version that will be used to format the policy.
563
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
564
+ # rejected. Requests for policies with any conditional role bindings must
565
+ # specify version 3. Policies with no conditional role bindings may specify any
566
+ # valid value or leave the field unset. The policy in the response might use the
567
+ # policy version that you specified, or it might use a lower policy version. For
568
+ # example, if you specify version 3, but the policy has no conditional role
569
+ # bindings, the response uses version 1. To learn which resources support
570
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
571
+ # google.com/iam/help/conditions/resource-policies).
572
+ # Corresponds to the JSON property `requestedPolicyVersion`
573
+ # @return [Fixnum]
574
+ attr_accessor :requested_policy_version
575
+
576
+ def initialize(**args)
577
+ update!(**args)
578
+ end
579
+
580
+ # Update properties of this object
581
+ def update!(**args)
582
+ @requested_policy_version = args[:requested_policy_version] if args.key?(:requested_policy_version)
583
+ end
584
+ end
585
+
586
+ # An Identity and Access Management (IAM) policy, which specifies access
587
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
588
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
589
+ # Principals can be user accounts, service accounts, Google groups, and domains (
590
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
591
+ # an IAM predefined role or a user-created custom role. For some types of Google
592
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
593
+ # logical expression that allows access to a resource only if the expression
594
+ # evaluates to `true`. A condition can add constraints based on attributes of
595
+ # the request, the resource, or both. To learn which resources support
596
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
597
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
598
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
599
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
600
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
601
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
602
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
603
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
604
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
605
+ # bindings: - members: - user:mike@example.com - group:admins@example.com -
606
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
607
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
608
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
609
+ # access description: Does not grant access after Sep 2020 expression: request.
610
+ # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
611
+ # a description of IAM and its features, see the [IAM documentation](https://
612
+ # cloud.google.com/iam/docs/).
613
+ class GoogleIamV1Policy
614
+ include Google::Apis::Core::Hashable
615
+
616
+ # Specifies cloud audit logging configuration for this policy.
617
+ # Corresponds to the JSON property `auditConfigs`
618
+ # @return [Array<Google::Apis::DnsV1::GoogleIamV1AuditConfig>]
619
+ attr_accessor :audit_configs
620
+
621
+ # Associates a list of `members`, or principals, with a `role`. Optionally, may
622
+ # specify a `condition` that determines how and when the `bindings` are applied.
623
+ # Each of the `bindings` must contain at least one principal. The `bindings` in
624
+ # a `Policy` can refer to up to 1,500 principals; up to 250 of these principals
625
+ # can be Google groups. Each occurrence of a principal counts towards these
626
+ # limits. For example, if the `bindings` grant 50 different roles to `user:alice@
627
+ # example.com`, and not to any other principal, then you can add another 1,450
628
+ # principals to the `bindings` in the `Policy`.
629
+ # Corresponds to the JSON property `bindings`
630
+ # @return [Array<Google::Apis::DnsV1::GoogleIamV1Binding>]
631
+ attr_accessor :bindings
632
+
633
+ # `etag` is used for optimistic concurrency control as a way to help prevent
634
+ # simultaneous updates of a policy from overwriting each other. It is strongly
635
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
636
+ # to perform policy updates in order to avoid race conditions: An `etag` is
637
+ # returned in the response to `getIamPolicy`, and systems are expected to put
638
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
639
+ # applied to the same version of the policy. **Important:** If you use IAM
640
+ # Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
641
+ # If you omit this field, then IAM allows you to overwrite a version `3` policy
642
+ # with a version `1` policy, and all of the conditions in the version `3` policy
643
+ # are lost.
644
+ # Corresponds to the JSON property `etag`
645
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
646
+ # @return [String]
647
+ attr_accessor :etag
648
+
649
+ # Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
650
+ # Requests that specify an invalid value are rejected. Any operation that
651
+ # affects conditional role bindings must specify version `3`. This requirement
652
+ # applies to the following operations: * Getting a policy that includes a
653
+ # conditional role binding * Adding a conditional role binding to a policy *
654
+ # Changing a conditional role binding in a policy * Removing any role binding,
655
+ # with or without a condition, from a policy that includes conditions **
656
+ # Important:** If you use IAM Conditions, you must include the `etag` field
657
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
658
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
659
+ # conditions in the version `3` policy are lost. If a policy does not include
660
+ # any conditions, operations on that policy may specify any valid version or
661
+ # leave the field unset. To learn which resources support conditions in their
662
+ # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
663
+ # conditions/resource-policies).
664
+ # Corresponds to the JSON property `version`
665
+ # @return [Fixnum]
666
+ attr_accessor :version
667
+
668
+ def initialize(**args)
669
+ update!(**args)
670
+ end
671
+
672
+ # Update properties of this object
673
+ def update!(**args)
674
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
675
+ @bindings = args[:bindings] if args.key?(:bindings)
676
+ @etag = args[:etag] if args.key?(:etag)
677
+ @version = args[:version] if args.key?(:version)
678
+ end
679
+ end
680
+
681
+ # Request message for `SetIamPolicy` method.
682
+ class GoogleIamV1SetIamPolicyRequest
683
+ include Google::Apis::Core::Hashable
684
+
685
+ # An Identity and Access Management (IAM) policy, which specifies access
686
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
687
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
688
+ # Principals can be user accounts, service accounts, Google groups, and domains (
689
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
690
+ # an IAM predefined role or a user-created custom role. For some types of Google
691
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
692
+ # logical expression that allows access to a resource only if the expression
693
+ # evaluates to `true`. A condition can add constraints based on attributes of
694
+ # the request, the resource, or both. To learn which resources support
695
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
696
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
697
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
698
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
699
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
700
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
701
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
702
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
703
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
704
+ # bindings: - members: - user:mike@example.com - group:admins@example.com -
705
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
706
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
707
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
708
+ # access description: Does not grant access after Sep 2020 expression: request.
709
+ # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
710
+ # a description of IAM and its features, see the [IAM documentation](https://
711
+ # cloud.google.com/iam/docs/).
712
+ # Corresponds to the JSON property `policy`
713
+ # @return [Google::Apis::DnsV1::GoogleIamV1Policy]
714
+ attr_accessor :policy
715
+
716
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
717
+ # the fields in the mask will be modified. If no mask is provided, the following
718
+ # default mask is used: `paths: "bindings, etag"`
719
+ # Corresponds to the JSON property `updateMask`
720
+ # @return [String]
721
+ attr_accessor :update_mask
722
+
723
+ def initialize(**args)
724
+ update!(**args)
725
+ end
726
+
727
+ # Update properties of this object
728
+ def update!(**args)
729
+ @policy = args[:policy] if args.key?(:policy)
730
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
731
+ end
732
+ end
733
+
734
+ # Request message for `TestIamPermissions` method.
735
+ class GoogleIamV1TestIamPermissionsRequest
736
+ include Google::Apis::Core::Hashable
737
+
738
+ # The set of permissions to check for the `resource`. Permissions with wildcards
739
+ # (such as `*` or `storage.*`) are not allowed. For more information see [IAM
740
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
741
+ # Corresponds to the JSON property `permissions`
742
+ # @return [Array<String>]
743
+ attr_accessor :permissions
744
+
745
+ def initialize(**args)
746
+ update!(**args)
747
+ end
748
+
749
+ # Update properties of this object
750
+ def update!(**args)
751
+ @permissions = args[:permissions] if args.key?(:permissions)
752
+ end
753
+ end
754
+
755
+ # Response message for `TestIamPermissions` method.
756
+ class GoogleIamV1TestIamPermissionsResponse
757
+ include Google::Apis::Core::Hashable
758
+
759
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
760
+ # Corresponds to the JSON property `permissions`
761
+ # @return [Array<String>]
762
+ attr_accessor :permissions
763
+
764
+ def initialize(**args)
765
+ update!(**args)
766
+ end
767
+
768
+ # Update properties of this object
769
+ def update!(**args)
770
+ @permissions = args[:permissions] if args.key?(:permissions)
771
+ end
772
+ end
773
+
343
774
  # A zone is a subtree of the DNS namespace under one administrative
344
775
  # responsibility. A ManagedZone is a resource that represents a DNS zone hosted
345
776
  # by the Cloud DNS service.
@@ -1309,6 +1740,22 @@ module Google
1309
1740
  # @return [Fixnum]
1310
1741
  attr_accessor :dns_keys_per_managed_zone
1311
1742
 
1743
+ # Maximum allowed number of GKE clusters to which a privately scoped zone can be
1744
+ # attached.
1745
+ # Corresponds to the JSON property `gkeClustersPerManagedZone`
1746
+ # @return [Fixnum]
1747
+ attr_accessor :gke_clusters_per_managed_zone
1748
+
1749
+ # Maximum allowed number of GKE clusters per policy.
1750
+ # Corresponds to the JSON property `gkeClustersPerPolicy`
1751
+ # @return [Fixnum]
1752
+ attr_accessor :gke_clusters_per_policy
1753
+
1754
+ # Maximum allowed number of GKE clusters per response policy.
1755
+ # Corresponds to the JSON property `gkeClustersPerResponsePolicy`
1756
+ # @return [Fixnum]
1757
+ attr_accessor :gke_clusters_per_response_policy
1758
+
1312
1759
  # Maximum allowed number of items per routing policy.
1313
1760
  # Corresponds to the JSON property `itemsPerRoutingPolicy`
1314
1761
  # @return [Fixnum]
@@ -1324,6 +1771,11 @@ module Google
1324
1771
  # @return [Fixnum]
1325
1772
  attr_accessor :managed_zones
1326
1773
 
1774
+ # Maximum allowed number of managed zones which can be attached to a GKE cluster.
1775
+ # Corresponds to the JSON property `managedZonesPerGkeCluster`
1776
+ # @return [Fixnum]
1777
+ attr_accessor :managed_zones_per_gke_cluster
1778
+
1327
1779
  # Maximum allowed number of managed zones which can be attached to a network.
1328
1780
  # Corresponds to the JSON property `managedZonesPerNetwork`
1329
1781
  # @return [Fixnum]
@@ -1340,6 +1792,11 @@ module Google
1340
1792
  # @return [Fixnum]
1341
1793
  attr_accessor :networks_per_policy
1342
1794
 
1795
+ # Maximum allowed number of networks per response policy.
1796
+ # Corresponds to the JSON property `networksPerResponsePolicy`
1797
+ # @return [Fixnum]
1798
+ attr_accessor :networks_per_response_policy
1799
+
1343
1800
  # Maximum allowed number of consumer peering zones per target network owned by
1344
1801
  # this producer project
1345
1802
  # Corresponds to the JSON property `peeringZonesPerTargetNetwork`
@@ -1356,6 +1813,16 @@ module Google
1356
1813
  # @return [Fixnum]
1357
1814
  attr_accessor :resource_records_per_rrset
1358
1815
 
1816
+ # Maximum allowed number of response policies per project.
1817
+ # Corresponds to the JSON property `responsePolicies`
1818
+ # @return [Fixnum]
1819
+ attr_accessor :response_policies
1820
+
1821
+ # Maximum allowed number of rules per response policy.
1822
+ # Corresponds to the JSON property `responsePolicyRulesPerResponsePolicy`
1823
+ # @return [Fixnum]
1824
+ attr_accessor :response_policy_rules_per_response_policy
1825
+
1359
1826
  # Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.
1360
1827
  # Corresponds to the JSON property `rrsetAdditionsPerChange`
1361
1828
  # @return [Fixnum]
@@ -1399,15 +1866,22 @@ module Google
1399
1866
  # Update properties of this object
1400
1867
  def update!(**args)
1401
1868
  @dns_keys_per_managed_zone = args[:dns_keys_per_managed_zone] if args.key?(:dns_keys_per_managed_zone)
1869
+ @gke_clusters_per_managed_zone = args[:gke_clusters_per_managed_zone] if args.key?(:gke_clusters_per_managed_zone)
1870
+ @gke_clusters_per_policy = args[:gke_clusters_per_policy] if args.key?(:gke_clusters_per_policy)
1871
+ @gke_clusters_per_response_policy = args[:gke_clusters_per_response_policy] if args.key?(:gke_clusters_per_response_policy)
1402
1872
  @items_per_routing_policy = args[:items_per_routing_policy] if args.key?(:items_per_routing_policy)
1403
1873
  @kind = args[:kind] if args.key?(:kind)
1404
1874
  @managed_zones = args[:managed_zones] if args.key?(:managed_zones)
1875
+ @managed_zones_per_gke_cluster = args[:managed_zones_per_gke_cluster] if args.key?(:managed_zones_per_gke_cluster)
1405
1876
  @managed_zones_per_network = args[:managed_zones_per_network] if args.key?(:managed_zones_per_network)
1406
1877
  @networks_per_managed_zone = args[:networks_per_managed_zone] if args.key?(:networks_per_managed_zone)
1407
1878
  @networks_per_policy = args[:networks_per_policy] if args.key?(:networks_per_policy)
1879
+ @networks_per_response_policy = args[:networks_per_response_policy] if args.key?(:networks_per_response_policy)
1408
1880
  @peering_zones_per_target_network = args[:peering_zones_per_target_network] if args.key?(:peering_zones_per_target_network)
1409
1881
  @policies = args[:policies] if args.key?(:policies)
1410
1882
  @resource_records_per_rrset = args[:resource_records_per_rrset] if args.key?(:resource_records_per_rrset)
1883
+ @response_policies = args[:response_policies] if args.key?(:response_policies)
1884
+ @response_policy_rules_per_response_policy = args[:response_policy_rules_per_response_policy] if args.key?(:response_policy_rules_per_response_policy)
1411
1885
  @rrset_additions_per_change = args[:rrset_additions_per_change] if args.key?(:rrset_additions_per_change)
1412
1886
  @rrset_deletions_per_change = args[:rrset_deletions_per_change] if args.key?(:rrset_deletions_per_change)
1413
1887
  @rrsets_per_managed_zone = args[:rrsets_per_managed_zone] if args.key?(:rrsets_per_managed_zone)
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module DnsV1
18
18
  # Version of the google-apis-dns_v1 gem
19
- GEM_VERSION = "0.19.0"
19
+ GEM_VERSION = "0.20.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.4.1"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20220127"
25
+ REVISION = "20220518"
26
26
  end
27
27
  end
28
28
  end
@@ -58,6 +58,66 @@ module Google
58
58
  include Google::Apis::Core::JsonObjectSupport
59
59
  end
60
60
 
61
+ class Expr
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class GoogleIamV1AuditConfig
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
73
+ class GoogleIamV1AuditLogConfig
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
79
+ class GoogleIamV1Binding
80
+ class Representation < Google::Apis::Core::JsonRepresentation; end
81
+
82
+ include Google::Apis::Core::JsonObjectSupport
83
+ end
84
+
85
+ class GoogleIamV1GetIamPolicyRequest
86
+ class Representation < Google::Apis::Core::JsonRepresentation; end
87
+
88
+ include Google::Apis::Core::JsonObjectSupport
89
+ end
90
+
91
+ class GoogleIamV1GetPolicyOptions
92
+ class Representation < Google::Apis::Core::JsonRepresentation; end
93
+
94
+ include Google::Apis::Core::JsonObjectSupport
95
+ end
96
+
97
+ class GoogleIamV1Policy
98
+ class Representation < Google::Apis::Core::JsonRepresentation; end
99
+
100
+ include Google::Apis::Core::JsonObjectSupport
101
+ end
102
+
103
+ class GoogleIamV1SetIamPolicyRequest
104
+ class Representation < Google::Apis::Core::JsonRepresentation; end
105
+
106
+ include Google::Apis::Core::JsonObjectSupport
107
+ end
108
+
109
+ class GoogleIamV1TestIamPermissionsRequest
110
+ class Representation < Google::Apis::Core::JsonRepresentation; end
111
+
112
+ include Google::Apis::Core::JsonObjectSupport
113
+ end
114
+
115
+ class GoogleIamV1TestIamPermissionsResponse
116
+ class Representation < Google::Apis::Core::JsonRepresentation; end
117
+
118
+ include Google::Apis::Core::JsonObjectSupport
119
+ end
120
+
61
121
  class ManagedZone
62
122
  class Representation < Google::Apis::Core::JsonRepresentation; end
63
123
 
@@ -403,6 +463,93 @@ module Google
403
463
  end
404
464
  end
405
465
 
466
+ class Expr
467
+ # @private
468
+ class Representation < Google::Apis::Core::JsonRepresentation
469
+ property :description, as: 'description'
470
+ property :expression, as: 'expression'
471
+ property :location, as: 'location'
472
+ property :title, as: 'title'
473
+ end
474
+ end
475
+
476
+ class GoogleIamV1AuditConfig
477
+ # @private
478
+ class Representation < Google::Apis::Core::JsonRepresentation
479
+ collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::DnsV1::GoogleIamV1AuditLogConfig, decorator: Google::Apis::DnsV1::GoogleIamV1AuditLogConfig::Representation
480
+
481
+ property :service, as: 'service'
482
+ end
483
+ end
484
+
485
+ class GoogleIamV1AuditLogConfig
486
+ # @private
487
+ class Representation < Google::Apis::Core::JsonRepresentation
488
+ collection :exempted_members, as: 'exemptedMembers'
489
+ property :log_type, as: 'logType'
490
+ end
491
+ end
492
+
493
+ class GoogleIamV1Binding
494
+ # @private
495
+ class Representation < Google::Apis::Core::JsonRepresentation
496
+ property :condition, as: 'condition', class: Google::Apis::DnsV1::Expr, decorator: Google::Apis::DnsV1::Expr::Representation
497
+
498
+ collection :members, as: 'members'
499
+ property :role, as: 'role'
500
+ end
501
+ end
502
+
503
+ class GoogleIamV1GetIamPolicyRequest
504
+ # @private
505
+ class Representation < Google::Apis::Core::JsonRepresentation
506
+ property :options, as: 'options', class: Google::Apis::DnsV1::GoogleIamV1GetPolicyOptions, decorator: Google::Apis::DnsV1::GoogleIamV1GetPolicyOptions::Representation
507
+
508
+ end
509
+ end
510
+
511
+ class GoogleIamV1GetPolicyOptions
512
+ # @private
513
+ class Representation < Google::Apis::Core::JsonRepresentation
514
+ property :requested_policy_version, as: 'requestedPolicyVersion'
515
+ end
516
+ end
517
+
518
+ class GoogleIamV1Policy
519
+ # @private
520
+ class Representation < Google::Apis::Core::JsonRepresentation
521
+ collection :audit_configs, as: 'auditConfigs', class: Google::Apis::DnsV1::GoogleIamV1AuditConfig, decorator: Google::Apis::DnsV1::GoogleIamV1AuditConfig::Representation
522
+
523
+ collection :bindings, as: 'bindings', class: Google::Apis::DnsV1::GoogleIamV1Binding, decorator: Google::Apis::DnsV1::GoogleIamV1Binding::Representation
524
+
525
+ property :etag, :base64 => true, as: 'etag'
526
+ property :version, as: 'version'
527
+ end
528
+ end
529
+
530
+ class GoogleIamV1SetIamPolicyRequest
531
+ # @private
532
+ class Representation < Google::Apis::Core::JsonRepresentation
533
+ property :policy, as: 'policy', class: Google::Apis::DnsV1::GoogleIamV1Policy, decorator: Google::Apis::DnsV1::GoogleIamV1Policy::Representation
534
+
535
+ property :update_mask, as: 'updateMask'
536
+ end
537
+ end
538
+
539
+ class GoogleIamV1TestIamPermissionsRequest
540
+ # @private
541
+ class Representation < Google::Apis::Core::JsonRepresentation
542
+ collection :permissions, as: 'permissions'
543
+ end
544
+ end
545
+
546
+ class GoogleIamV1TestIamPermissionsResponse
547
+ # @private
548
+ class Representation < Google::Apis::Core::JsonRepresentation
549
+ collection :permissions, as: 'permissions'
550
+ end
551
+ end
552
+
406
553
  class ManagedZone
407
554
  # @private
408
555
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -679,15 +826,22 @@ module Google
679
826
  # @private
680
827
  class Representation < Google::Apis::Core::JsonRepresentation
681
828
  property :dns_keys_per_managed_zone, as: 'dnsKeysPerManagedZone'
829
+ property :gke_clusters_per_managed_zone, as: 'gkeClustersPerManagedZone'
830
+ property :gke_clusters_per_policy, as: 'gkeClustersPerPolicy'
831
+ property :gke_clusters_per_response_policy, as: 'gkeClustersPerResponsePolicy'
682
832
  property :items_per_routing_policy, as: 'itemsPerRoutingPolicy'
683
833
  property :kind, as: 'kind'
684
834
  property :managed_zones, as: 'managedZones'
835
+ property :managed_zones_per_gke_cluster, as: 'managedZonesPerGkeCluster'
685
836
  property :managed_zones_per_network, as: 'managedZonesPerNetwork'
686
837
  property :networks_per_managed_zone, as: 'networksPerManagedZone'
687
838
  property :networks_per_policy, as: 'networksPerPolicy'
839
+ property :networks_per_response_policy, as: 'networksPerResponsePolicy'
688
840
  property :peering_zones_per_target_network, as: 'peeringZonesPerTargetNetwork'
689
841
  property :policies, as: 'policies'
690
842
  property :resource_records_per_rrset, as: 'resourceRecordsPerRrset'
843
+ property :response_policies, as: 'responsePolicies'
844
+ property :response_policy_rules_per_response_policy, as: 'responsePolicyRulesPerResponsePolicy'
691
845
  property :rrset_additions_per_change, as: 'rrsetAdditionsPerChange'
692
846
  property :rrset_deletions_per_change, as: 'rrsetDeletionsPerChange'
693
847
  property :rrsets_per_managed_zone, as: 'rrsetsPerManagedZone'
@@ -468,6 +468,42 @@ module Google
468
468
  execute_or_queue_command(command, &block)
469
469
  end
470
470
 
471
+ # Gets the access control policy for a resource. Returns an empty policy if the
472
+ # resource exists and does not have a policy set.
473
+ # @param [String] resource
474
+ # REQUIRED: The resource for which the policy is being requested. See [Resource
475
+ # names](https://cloud.google.com/apis/design/resource_names) for the
476
+ # appropriate value for this field.
477
+ # @param [Google::Apis::DnsV1::GoogleIamV1GetIamPolicyRequest] google_iam_v1_get_iam_policy_request_object
478
+ # @param [String] fields
479
+ # Selector specifying which fields to include in a partial response.
480
+ # @param [String] quota_user
481
+ # Available to use for quota purposes for server-side applications. Can be any
482
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
483
+ # @param [Google::Apis::RequestOptions] options
484
+ # Request-specific options
485
+ #
486
+ # @yield [result, err] Result & error if block supplied
487
+ # @yieldparam result [Google::Apis::DnsV1::GoogleIamV1Policy] parsed result object
488
+ # @yieldparam err [StandardError] error object if request failed
489
+ #
490
+ # @return [Google::Apis::DnsV1::GoogleIamV1Policy]
491
+ #
492
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
493
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
494
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
495
+ def get_managed_zone_iam_policy(resource, google_iam_v1_get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
496
+ command = make_simple_command(:post, 'dns/v1/{+resource}:getIamPolicy', options)
497
+ command.request_representation = Google::Apis::DnsV1::GoogleIamV1GetIamPolicyRequest::Representation
498
+ command.request_object = google_iam_v1_get_iam_policy_request_object
499
+ command.response_representation = Google::Apis::DnsV1::GoogleIamV1Policy::Representation
500
+ command.response_class = Google::Apis::DnsV1::GoogleIamV1Policy
501
+ command.params['resource'] = resource unless resource.nil?
502
+ command.query['fields'] = fields unless fields.nil?
503
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
504
+ execute_or_queue_command(command, &block)
505
+ end
506
+
471
507
  # Enumerates ManagedZones that have been created but not yet deleted.
472
508
  # @param [String] project
473
509
  # Identifies the project addressed by this request.
@@ -550,6 +586,82 @@ module Google
550
586
  execute_or_queue_command(command, &block)
551
587
  end
552
588
 
589
+ # Sets the access control policy on the specified resource. Replaces any
590
+ # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
591
+ # PERMISSION_DENIED` errors.
592
+ # @param [String] resource
593
+ # REQUIRED: The resource for which the policy is being specified. See [Resource
594
+ # names](https://cloud.google.com/apis/design/resource_names) for the
595
+ # appropriate value for this field.
596
+ # @param [Google::Apis::DnsV1::GoogleIamV1SetIamPolicyRequest] google_iam_v1_set_iam_policy_request_object
597
+ # @param [String] fields
598
+ # Selector specifying which fields to include in a partial response.
599
+ # @param [String] quota_user
600
+ # Available to use for quota purposes for server-side applications. Can be any
601
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
602
+ # @param [Google::Apis::RequestOptions] options
603
+ # Request-specific options
604
+ #
605
+ # @yield [result, err] Result & error if block supplied
606
+ # @yieldparam result [Google::Apis::DnsV1::GoogleIamV1Policy] parsed result object
607
+ # @yieldparam err [StandardError] error object if request failed
608
+ #
609
+ # @return [Google::Apis::DnsV1::GoogleIamV1Policy]
610
+ #
611
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
612
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
613
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
614
+ def set_managed_zone_iam_policy(resource, google_iam_v1_set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
615
+ command = make_simple_command(:post, 'dns/v1/{+resource}:setIamPolicy', options)
616
+ command.request_representation = Google::Apis::DnsV1::GoogleIamV1SetIamPolicyRequest::Representation
617
+ command.request_object = google_iam_v1_set_iam_policy_request_object
618
+ command.response_representation = Google::Apis::DnsV1::GoogleIamV1Policy::Representation
619
+ command.response_class = Google::Apis::DnsV1::GoogleIamV1Policy
620
+ command.params['resource'] = resource unless resource.nil?
621
+ command.query['fields'] = fields unless fields.nil?
622
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
623
+ execute_or_queue_command(command, &block)
624
+ end
625
+
626
+ # Returns permissions that a caller has on the specified resource. If the
627
+ # resource does not exist, this will return an empty set of permissions, not a `
628
+ # NOT_FOUND` error. Note: This operation is designed to be used for building
629
+ # permission-aware UIs and command-line tools, not for authorization checking.
630
+ # This operation may "fail open" without warning.
631
+ # @param [String] resource
632
+ # REQUIRED: The resource for which the policy detail is being requested. See [
633
+ # Resource names](https://cloud.google.com/apis/design/resource_names) for the
634
+ # appropriate value for this field.
635
+ # @param [Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsRequest] google_iam_v1_test_iam_permissions_request_object
636
+ # @param [String] fields
637
+ # Selector specifying which fields to include in a partial response.
638
+ # @param [String] quota_user
639
+ # Available to use for quota purposes for server-side applications. Can be any
640
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
641
+ # @param [Google::Apis::RequestOptions] options
642
+ # Request-specific options
643
+ #
644
+ # @yield [result, err] Result & error if block supplied
645
+ # @yieldparam result [Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsResponse] parsed result object
646
+ # @yieldparam err [StandardError] error object if request failed
647
+ #
648
+ # @return [Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsResponse]
649
+ #
650
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
651
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
652
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
653
+ def test_managed_zone_iam_permissions(resource, google_iam_v1_test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
654
+ command = make_simple_command(:post, 'dns/v1/{+resource}:testIamPermissions', options)
655
+ command.request_representation = Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsRequest::Representation
656
+ command.request_object = google_iam_v1_test_iam_permissions_request_object
657
+ command.response_representation = Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsResponse::Representation
658
+ command.response_class = Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsResponse
659
+ command.params['resource'] = resource unless resource.nil?
660
+ command.query['fields'] = fields unless fields.nil?
661
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
662
+ execute_or_queue_command(command, &block)
663
+ end
664
+
553
665
  # Updates an existing ManagedZone.
554
666
  # @param [String] project
555
667
  # Identifies the project addressed by this request.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-dns_v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0
4
+ version: 0.20.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-07 00:00:00.000000000 Z
11
+ date: 2022-05-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-dns_v1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-dns_v1/v0.19.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-dns_v1/v0.20.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-dns_v1
63
63
  post_install_message:
64
64
  rdoc_options: []
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  requirements: []
78
- rubygems_version: 3.3.5
78
+ rubygems_version: 3.3.14
79
79
  signing_key:
80
80
  specification_version: 4
81
81
  summary: Simple REST client for Cloud DNS API V1