google-apis-dns_v1 0.19.0 → 0.20.0

Sign up to get free protection for your applications and to get access to all the features.
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