google-api-client 0.46.1 → 0.46.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/autoapprove.yml +49 -0
  3. data/.gitignore +2 -0
  4. data/CHANGELOG.md +58 -0
  5. data/api_list_config.yaml +8 -0
  6. data/bin/generate-api +77 -15
  7. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  9. data/generated/google/apis/admin_directory_v1.rb +1 -1
  10. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  11. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  12. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  13. data/generated/google/apis/admin_reports_v1.rb +1 -1
  14. data/generated/google/apis/admob_v1.rb +1 -1
  15. data/generated/google/apis/admob_v1/classes.rb +29 -29
  16. data/generated/google/apis/analyticsadmin_v1alpha.rb +1 -1
  17. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +6 -6
  18. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +8 -9
  19. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  20. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +1 -1
  21. data/generated/google/apis/analyticsdata_v1alpha/service.rb +7 -7
  22. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  23. data/generated/google/apis/androidpublisher_v3/service.rb +5 -2
  24. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  25. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +7 -0
  26. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  27. data/generated/google/apis/bigquery_v2.rb +1 -1
  28. data/generated/google/apis/bigquery_v2/classes.rb +80 -5
  29. data/generated/google/apis/bigquery_v2/representations.rb +33 -0
  30. data/generated/google/apis/bigquery_v2/service.rb +46 -0
  31. data/generated/google/apis/billingbudgets_v1.rb +1 -1
  32. data/generated/google/apis/billingbudgets_v1/classes.rb +1 -1
  33. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  34. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +1 -1
  35. data/generated/google/apis/civicinfo_v2.rb +1 -1
  36. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  37. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  38. data/generated/google/apis/classroom_v1.rb +1 -1
  39. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  40. data/generated/google/apis/container_v1.rb +1 -1
  41. data/generated/google/apis/container_v1/classes.rb +22 -10
  42. data/generated/google/apis/container_v1beta1.rb +1 -1
  43. data/generated/google/apis/container_v1beta1/classes.rb +22 -10
  44. data/generated/google/apis/content_v2.rb +1 -1
  45. data/generated/google/apis/content_v2_1.rb +1 -1
  46. data/generated/google/apis/content_v2_1/classes.rb +6 -3
  47. data/generated/google/apis/displayvideo_v1.rb +1 -1
  48. data/generated/google/apis/displayvideo_v1/classes.rb +30 -30
  49. data/generated/google/apis/displayvideo_v1/service.rb +8 -8
  50. data/generated/google/apis/dlp_v2.rb +1 -1
  51. data/generated/google/apis/dlp_v2/classes.rb +4 -3
  52. data/generated/google/apis/dns_v1.rb +1 -1
  53. data/generated/google/apis/dns_v1/classes.rb +181 -0
  54. data/generated/google/apis/dns_v1/representations.rb +83 -0
  55. data/generated/google/apis/dns_v1beta2.rb +1 -1
  56. data/generated/google/apis/dns_v1beta2/classes.rb +181 -0
  57. data/generated/google/apis/dns_v1beta2/representations.rb +83 -0
  58. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  59. data/generated/google/apis/domains_v1alpha2/classes.rb +1534 -0
  60. data/generated/google/apis/domains_v1alpha2/representations.rb +605 -0
  61. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  62. data/generated/google/apis/domains_v1beta1.rb +34 -0
  63. data/generated/google/apis/domains_v1beta1/classes.rb +1534 -0
  64. data/generated/google/apis/domains_v1beta1/representations.rb +605 -0
  65. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  66. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  67. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +1 -1
  68. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  69. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +1 -1
  70. data/generated/google/apis/drive_v2.rb +1 -1
  71. data/generated/google/apis/drive_v2/classes.rb +2 -0
  72. data/generated/google/apis/drive_v3.rb +1 -1
  73. data/generated/google/apis/drive_v3/classes.rb +4 -2
  74. data/generated/google/apis/fitness_v1.rb +1 -1
  75. data/generated/google/apis/fitness_v1/service.rb +3 -1
  76. data/generated/google/apis/gameservices_v1.rb +1 -1
  77. data/generated/google/apis/gameservices_v1/classes.rb +15 -14
  78. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  79. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  80. data/generated/google/apis/gameservices_v1beta/classes.rb +15 -14
  81. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  82. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  83. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  84. data/generated/google/apis/healthcare_v1.rb +1 -1
  85. data/generated/google/apis/healthcare_v1/classes.rb +4 -4
  86. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  87. data/generated/google/apis/healthcare_v1beta1/classes.rb +7 -6
  88. data/generated/google/apis/licensing_v1.rb +1 -1
  89. data/generated/google/apis/licensing_v1/service.rb +2 -2
  90. data/generated/google/apis/localservices_v1.rb +1 -1
  91. data/generated/google/apis/localservices_v1/service.rb +20 -20
  92. data/generated/google/apis/managedidentities_v1.rb +1 -1
  93. data/generated/google/apis/managedidentities_v1/classes.rb +1 -1
  94. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  95. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  96. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +80 -9
  97. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +33 -1
  98. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  99. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  100. data/generated/google/apis/managedidentities_v1beta1/classes.rb +81 -9
  101. data/generated/google/apis/managedidentities_v1beta1/representations.rb +33 -1
  102. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  103. data/generated/google/apis/monitoring_v3.rb +1 -1
  104. data/generated/google/apis/monitoring_v3/classes.rb +8 -8
  105. data/generated/google/apis/people_v1.rb +1 -1
  106. data/generated/google/apis/people_v1/classes.rb +45 -45
  107. data/generated/google/apis/playablelocations_v3.rb +1 -1
  108. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  109. data/generated/google/apis/poly_v1.rb +3 -4
  110. data/generated/google/apis/poly_v1/classes.rb +65 -79
  111. data/generated/google/apis/poly_v1/service.rb +50 -63
  112. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  113. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  114. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  115. data/generated/google/apis/realtimebidding_v1/classes.rb +33 -33
  116. data/generated/google/apis/realtimebidding_v1/service.rb +4 -4
  117. data/generated/google/apis/run_v1.rb +1 -1
  118. data/generated/google/apis/run_v1/classes.rb +7 -6
  119. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  120. data/generated/google/apis/servicenetworking_v1/classes.rb +107 -4
  121. data/generated/google/apis/servicenetworking_v1/representations.rb +34 -0
  122. data/generated/google/apis/servicenetworking_v1/service.rb +2 -2
  123. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  124. data/generated/google/apis/servicenetworking_v1beta/classes.rb +107 -4
  125. data/generated/google/apis/servicenetworking_v1beta/representations.rb +34 -0
  126. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  127. data/generated/google/apis/storagetransfer_v1/classes.rb +8 -0
  128. data/generated/google/apis/storagetransfer_v1/representations.rb +1 -0
  129. data/generated/google/apis/storagetransfer_v1/service.rb +17 -18
  130. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  131. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  132. data/generated/google/apis/sts_v1beta.rb +1 -1
  133. data/generated/google/apis/sts_v1beta/classes.rb +12 -11
  134. data/generated/google/apis/tpu_v1.rb +1 -1
  135. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  136. data/generated/google/apis/tpu_v1/service.rb +8 -8
  137. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  138. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  139. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  140. data/generated/google/apis/vault_v1.rb +1 -1
  141. data/generated/google/apis/vault_v1/classes.rb +333 -0
  142. data/generated/google/apis/vault_v1/representations.rb +162 -0
  143. data/generated/google/apis/vault_v1/service.rb +151 -0
  144. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  145. data/generated/google/apis/youtube_v3.rb +1 -1
  146. data/generated/google/apis/youtube_v3/service.rb +2 -2
  147. data/google-api-client.gemspec +1 -1
  148. data/lib/google/apis/core/api_command.rb +1 -0
  149. data/lib/google/apis/version.rb +1 -1
  150. data/synth.py +40 -0
  151. metadata +13 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 741a077cf8300e1469da6edd9ff0b1701d41c03e62aee255fd926c1c6842fdf4
4
- data.tar.gz: 8f7bb006114218fcc70983ef36178d51f9876be86215a3971acffc289ea24762
3
+ metadata.gz: 27a2a0001a6c9b86aaa04200c457f9be550e54c06666a77c992d098825140782
4
+ data.tar.gz: 451dabfba4dfc030cc242cceb118aca9ee5323ce196a5309991304f57be34a3e
5
5
  SHA512:
6
- metadata.gz: be3d87f2dfd479473b2b59513a7dbdfa93ef0ea4ad2a9116b3b767de48910a92a0aadb3684a66644d35ceb3ebf11030985daaed3d9dea9dff12273952c464c7c
7
- data.tar.gz: 92305adbeb449885f12a15fe03377ea16b74103a9faac2141230b877708187a7d5ccdf8391c6b01dce7a97a0a48189c4f22d9d16ada8bc2a48c719e70ef4e133
6
+ metadata.gz: 8ad0a46fd820b66ae8e6143e292eded6f61a299857d85db7d1942f63e1f759c8fc603251860a5c546d1e7d48a82079881f0397c8c51a6b72dd8268330e1a7642
7
+ data.tar.gz: 515fb3c8f9f5960dc93d7e8b78cac755711cbe79db5bdcae2c541ad09ccc5b76e957d4b27e040c87fa6f22838269f78f5f8960b6eaeea19f1b4ba6d567e431f3
@@ -0,0 +1,49 @@
1
+ name: AutoApprove
2
+
3
+ on:
4
+ pull_request:
5
+ branches:
6
+ - master
7
+ types:
8
+ - opened
9
+
10
+ jobs:
11
+ auto-approve:
12
+ runs-on: ubuntu-latest
13
+ if: contains(github.head_ref, 'autosynth')
14
+ env:
15
+ ENABLE_AUTO_APPROVE: ${{ secrets.ENABLE_AUTO_APPROVE }}
16
+ steps:
17
+ - name: AutoApprove
18
+ uses: actions/github-script@v2
19
+ with:
20
+ github-token: ${{secrets.YOSHI_APPROVER_TOKEN}}
21
+ script: |
22
+ if (context.payload.sender.login != "yoshi-automation") {
23
+ core.error("AutoApprove: Not running for this sender.");
24
+ return;
25
+ }
26
+ if (!context.payload.pull_request.title.startsWith("feat: Automated ")) {
27
+ core.error("AutoApprove: Not running for this PR title.");
28
+ return;
29
+ }
30
+ if (!process.env.ENABLE_AUTO_APPROVE) {
31
+ core.error("AutoApprove: PR conditions passed but ENABLE_AUTO_APPROVE is not set.");
32
+ return;
33
+ }
34
+ core.info("AutoApprove: PR conditions passed!");
35
+ await github.pulls.createReview({
36
+ owner: context.repo.owner,
37
+ repo: context.repo.repo,
38
+ body: "AutoApprove: Rubber stamped client regeneration!",
39
+ pull_number: context.payload.pull_request.number,
40
+ event: "APPROVE"
41
+ });
42
+ core.info("AutoApprove: Rubber stamped client regeneration!");
43
+ await github.issues.addLabels({
44
+ owner: context.repo.owner,
45
+ repo: context.repo.repo,
46
+ issue_number: context.payload.pull_request.number,
47
+ labels: ["automerge"]
48
+ });
49
+ core.info("AutoApprove: Applied automerge label!");
data/.gitignore CHANGED
@@ -19,3 +19,5 @@ tmp/
19
19
  *.iml
20
20
  atlassian*
21
21
 
22
+ __pycache__/
23
+ /vendor/
@@ -1,3 +1,61 @@
1
+ # 0.46.2
2
+ * Backwards compatible changes:
3
+ * Added `domains_v1alpha2`
4
+ * Added `domains_v1beta1`
5
+ * Updated `adexchangebuyer2_v2beta1`
6
+ * Updated `admin_directory_v1`
7
+ * Updated `admin_reports_v1`
8
+ * Updated `admob_v1`
9
+ * Updated `analyticsadmin_v1alpha`
10
+ * Updated `analyticsdata_v1alpha`
11
+ * Updated `androidpublisher_v3`
12
+ * Updated `artifactregistry_v1beta1`
13
+ * Updated `bigquery_v2`
14
+ * Updated `billingbudgets_v1`
15
+ * Updated `billingbudgets_v1beta1`
16
+ * Updated `civicinfo_v2`
17
+ * Updated `classroom_v1`
18
+ * Updated `container_v1`
19
+ * Updated `container_v1beta1`
20
+ * Updated `content_v2`
21
+ * Updated `content_v2_1`
22
+ * Updated `displayvideo_v1`
23
+ * Updated `dlp_v2`
24
+ * Updated `dns_v1`
25
+ * Updated `dns_v1beta2`
26
+ * Updated `doubleclickbidmanager_v1`
27
+ * Updated `doubleclickbidmanager_v1_1`
28
+ * Updated `drive_v2`
29
+ * Updated `drive_v3`
30
+ * Updated `fitness_v1`
31
+ * Updated `gameservices_v1`
32
+ * Updated `gameservices_v1beta`
33
+ * Updated `gmailpostmastertools_v1beta1`
34
+ * Updated `healthcare_v1`
35
+ * Updated `healthcare_v1beta1`
36
+ * Updated `licensing_v1`
37
+ * Updated `localservices_v1`
38
+ * Updated `managedidentities_v1`
39
+ * Updated `managedidentities_v1alpha1`
40
+ * Updated `managedidentities_v1beta1`
41
+ * Updated `monitoring_v3`
42
+ * Updated `people_v1`
43
+ * Updated `playablelocations_v3`
44
+ * Updated `poly_v1`
45
+ * Updated `prod_tt_sasportal_v1alpha1`
46
+ * Updated `realtimebidding_v1`
47
+ * Updated `run_v1`
48
+ * Updated `servicenetworking_v1`
49
+ * Updated `servicenetworking_v1beta`
50
+ * Updated `storagetransfer_v1`
51
+ * Updated `streetviewpublish_v1`
52
+ * Updated `sts_v1beta`
53
+ * Updated `tpu_v1`
54
+ * Updated `tpu_v1alpha1`
55
+ * Updated `vault_v1`
56
+ * Updated `youtube_partner_v1`
57
+ * Updated `youtube_v3`
58
+
1
59
  # 0.46.1
2
60
  * Backwards compatible changes:
3
61
  * Added `billingbudgets_v1`
@@ -1 +1,9 @@
1
+ include:
2
+ - name: appsmarket
3
+ version: v2
4
+ discovery_rest_url: https://content.googleapis.com/discovery/v1/apis/appsmarket/v2/rest
5
+ - name: youtubePartner
6
+ version: v1
7
+ discovery_rest_url: https://content.googleapis.com/discovery/v1/apis/youtubePartner/v1/rest
1
8
  exclude: []
9
+ pause: []
@@ -28,32 +28,34 @@ module Google
28
28
 
29
29
  desc 'gen OUTDIR', 'Generate ruby API from an API description'
30
30
  method_options url: :array, file: :array, from_discovery: :boolean, preferred_only: :boolean,
31
- verbose: :boolean, names: :string, names_out: :string
31
+ verbose: :boolean, names: :string, names_out: :string, api: :string, clean: :boolean
32
32
  def gen(dir)
33
33
  ensure_active_support
34
34
  require 'google/apis/generator'
35
35
 
36
36
  self.destination_root = dir
37
37
  Google::Apis.logger.level = Logger::DEBUG if options[:verbose]
38
- generate_from_url(options[:url]) if options[:url]
39
- generate_from_file(options[:file]) if options[:file]
40
- generate_from_discovery(preferred_only: options[:preferred_only]) if options[:from_discovery]
41
- create_file(options[:names_out]) { |*| generator.dump_api_names } if options[:names_out]
38
+ count = 0
39
+ count += generate_from_url(options[:url]) if options[:url]
40
+ count += generate_from_file(options[:file]) if options[:file]
41
+ count += generate_specific_apis(options[:api]) if options[:api]
42
+ count += generate_from_discovery(preferred_only: options[:preferred_only]) if options[:from_discovery]
43
+ count += clean_from_discovery if options[:clean]
44
+ create_file(options[:names_out]) { |*| generator.dump_api_names } if count > 0 && options[:names_out]
42
45
  end
43
46
 
44
47
  desc 'list', 'List public APIs'
45
48
  method_options verbose: :boolean, preferred_only: :boolean
46
49
  def list
47
50
  Google::Apis.logger.level = Logger::DEBUG if options[:verbose]
48
- discovery = Discovery::DiscoveryService.new
49
- apis = discovery.list_apis
50
- apis.items.each do |api|
51
+ discovery_api_list.each do |api|
51
52
  say sprintf('%s - %s', api.id, api.description).strip unless options[:preferred_only] && !api.preferred?
52
53
  end
53
54
  end
54
55
 
55
56
  no_commands do
56
- def generate_from_url(urls)
57
+ def generate_from_url(urls, first_only: false)
58
+ count = 0
57
59
  Array(urls).each do |url|
58
60
  begin
59
61
  json = discovery.http(:get, url)
@@ -62,7 +64,10 @@ module Google
62
64
  next
63
65
  end
64
66
  generate_api(json)
67
+ return 1 if first_only
68
+ count += 1
65
69
  end
70
+ count
66
71
  end
67
72
 
68
73
  def generate_from_file(files)
@@ -71,15 +76,38 @@ module Google
71
76
  generate_api(f.read)
72
77
  end
73
78
  end
79
+ Array(files).size
80
+ end
81
+
82
+ def generate_specific_apis(apis)
83
+ discovery_apis = discovery_api_list.each_with_object({}) do |api, hash|
84
+ hash["#{api.name}.#{api.version}"] = api
85
+ end
86
+ paused_apis = Array(api_list_config["pause"])
87
+ count = 0
88
+ Array(apis).each do |name_version|
89
+ api = discovery_apis[name_version]
90
+ if api.nil?
91
+ say "API #{api} is not in the discovery list."
92
+ elsif paused_apis.include? name_version
93
+ say "Ignoring paused API #{api.name} #{api.version}"
94
+ else
95
+ discovery_rest_url = "https://raw.githubusercontent.com/googleapis/discovery-artifact-manager/master/discoveries/#{api.name}.#{api.version}.json"
96
+ say sprintf('Loading %s, version %s from %s', api.name, api.version, discovery_rest_url)
97
+ generate_from_url([discovery_rest_url, api.discovery_rest_url], first_only: true)
98
+ count += 1
99
+ end
100
+ end
101
+ count
74
102
  end
75
103
 
76
104
  def generate_from_discovery(preferred_only: false)
77
105
  say 'Fetching API list'
78
- apis = discovery.list_apis
79
- exclude_apis = api_list_config["exclude"] || []
80
- apis.items.each do |api|
81
- if exclude_apis.include? "#{api.name}.#{api.version}"
82
- say "Ignoring excluded API #{api.name} #{api.version}"
106
+ paused_apis = Array(api_list_config["pause"])
107
+ count = 0
108
+ discovery_api_list.each do |api|
109
+ if paused_apis.include? "#{api.name}.#{api.version}"
110
+ say "Ignoring paused API #{api.name} #{api.version}"
83
111
  elsif (preferred_only && !api.preferred?)
84
112
  say sprintf('Ignoring disoverable API %s', api.id)
85
113
  else
@@ -91,9 +119,27 @@ module Google
91
119
  # by the Discovery index.
92
120
  discovery_rest_url = "https://raw.githubusercontent.com/googleapis/discovery-artifact-manager/master/discoveries/#{api.name}.#{api.version}.json"
93
121
  say sprintf('Loading %s, version %s from %s', api.name, api.version, discovery_rest_url)
94
- generate_from_url(discovery_rest_url)
122
+ generate_from_url([discovery_rest_url, api.discovery_rest_url], first_only: true)
123
+ count += 1
95
124
  end
96
125
  end
126
+ count
127
+ end
128
+
129
+ def clean_from_discovery
130
+ count = 0
131
+ apis = discovery_api_list.map { |api| "#{api.name.underscore}_#{api.version.tr '.', '_'}" }
132
+ Dir.chdir("#{destination_root}/google/apis") do
133
+ Dir.glob("*.rb").each do |filename|
134
+ filename = File.basename(filename, ".rb")
135
+ unless apis.include? filename
136
+ FileUtils.rm_r filename
137
+ FileUtils.rm "#{filename}.rb"
138
+ count += 1
139
+ end
140
+ end
141
+ end
142
+ count
97
143
  end
98
144
 
99
145
  def generate_api(json)
@@ -107,6 +153,20 @@ module Google
107
153
  @discovery ||= Discovery::DiscoveryService.new
108
154
  end
109
155
 
156
+ def discovery_api_list
157
+ @discovery_api_list ||= begin
158
+ items = discovery.list_apis.items
159
+ excluded = Array(api_list_config["exclude"])
160
+ items.delete_if { |item| excluded.include? "#{item.name}.#{item.version}" }
161
+ Array(api_list_config["include"]).each do |include_hash|
162
+ include_hash.symbolize_keys!
163
+ include_item = Discovery::DirectoryList::Item.new(**include_hash)
164
+ items << include_item unless items.any? { |item| item.name == include_item.name && item.version == include_item.version }
165
+ end
166
+ items
167
+ end
168
+ end
169
+
110
170
  def generator
111
171
  @generator ||= Google::Apis::Generator.new(api_names: options[:names], api_names_out: options[:names_out])
112
172
  end
@@ -117,7 +177,9 @@ module Google
117
177
 
118
178
  def ensure_active_support
119
179
  begin
180
+ require 'active_support'
120
181
  require 'active_support/inflector'
182
+ require 'active_support/core_ext'
121
183
  rescue LoadError => e
122
184
  error 'ActiveSupport is required, please run:'
123
185
  error 'gem install activesupport'
@@ -27,7 +27,7 @@ module Google
27
27
  # @see https://developers.google.com/authorized-buyers/apis/reference/rest/
28
28
  module Adexchangebuyer2V2beta1
29
29
  VERSION = 'V2beta1'
30
- REVISION = '20200822'
30
+ REVISION = '20201013'
31
31
 
32
32
  # Manage your Ad Exchange buyer account configuration
33
33
  AUTH_ADEXCHANGE_BUYER = 'https://www.googleapis.com/auth/adexchange.buyer'
@@ -29,26 +29,26 @@ module Google
29
29
  class AbsoluteDateRange
30
30
  include Google::Apis::Core::Hashable
31
31
 
32
- # Represents a whole or partial calendar date, e.g. a birthday. The time of day
33
- # and time zone are either specified elsewhere or are not significant. The date
34
- # is relative to the Proleptic Gregorian Calendar. This can represent: * A full
35
- # date, with non-zero year, month and day values * A month and day value, with a
36
- # zero year, e.g. an anniversary * A year on its own, with zero month and day
37
- # values * A year and month value, with a zero day, e.g. a credit card
38
- # expiration date Related types are google.type.TimeOfDay and `google.protobuf.
39
- # Timestamp`.
32
+ # Represents a whole or partial calendar date, such as a birthday. The time of
33
+ # day and time zone are either specified elsewhere or are insignificant. The
34
+ # date is relative to the Gregorian Calendar. This can represent one of the
35
+ # following: * A full date, with non-zero year, month, and day values * A month
36
+ # and day value, with a zero year, such as an anniversary * A year on its own,
37
+ # with zero month and day values * A year and month value, with a zero day, such
38
+ # as a credit card expiration date Related types are google.type.TimeOfDay and `
39
+ # google.protobuf.Timestamp`.
40
40
  # Corresponds to the JSON property `endDate`
41
41
  # @return [Google::Apis::Adexchangebuyer2V2beta1::Date]
42
42
  attr_accessor :end_date
43
43
 
44
- # Represents a whole or partial calendar date, e.g. a birthday. The time of day
45
- # and time zone are either specified elsewhere or are not significant. The date
46
- # is relative to the Proleptic Gregorian Calendar. This can represent: * A full
47
- # date, with non-zero year, month and day values * A month and day value, with a
48
- # zero year, e.g. an anniversary * A year on its own, with zero month and day
49
- # values * A year and month value, with a zero day, e.g. a credit card
50
- # expiration date Related types are google.type.TimeOfDay and `google.protobuf.
51
- # Timestamp`.
44
+ # Represents a whole or partial calendar date, such as a birthday. The time of
45
+ # day and time zone are either specified elsewhere or are insignificant. The
46
+ # date is relative to the Gregorian Calendar. This can represent one of the
47
+ # following: * A full date, with non-zero year, month, and day values * A month
48
+ # and day value, with a zero year, such as an anniversary * A year on its own,
49
+ # with zero month and day values * A year and month value, with a zero day, such
50
+ # as a credit card expiration date Related types are google.type.TimeOfDay and `
51
+ # google.protobuf.Timestamp`.
52
52
  # Corresponds to the JSON property `startDate`
53
53
  # @return [Google::Apis::Adexchangebuyer2V2beta1::Date]
54
54
  attr_accessor :start_date
@@ -1047,31 +1047,31 @@ module Google
1047
1047
  end
1048
1048
  end
1049
1049
 
1050
- # Represents a whole or partial calendar date, e.g. a birthday. The time of day
1051
- # and time zone are either specified elsewhere or are not significant. The date
1052
- # is relative to the Proleptic Gregorian Calendar. This can represent: * A full
1053
- # date, with non-zero year, month and day values * A month and day value, with a
1054
- # zero year, e.g. an anniversary * A year on its own, with zero month and day
1055
- # values * A year and month value, with a zero day, e.g. a credit card
1056
- # expiration date Related types are google.type.TimeOfDay and `google.protobuf.
1057
- # Timestamp`.
1050
+ # Represents a whole or partial calendar date, such as a birthday. The time of
1051
+ # day and time zone are either specified elsewhere or are insignificant. The
1052
+ # date is relative to the Gregorian Calendar. This can represent one of the
1053
+ # following: * A full date, with non-zero year, month, and day values * A month
1054
+ # and day value, with a zero year, such as an anniversary * A year on its own,
1055
+ # with zero month and day values * A year and month value, with a zero day, such
1056
+ # as a credit card expiration date Related types are google.type.TimeOfDay and `
1057
+ # google.protobuf.Timestamp`.
1058
1058
  class Date
1059
1059
  include Google::Apis::Core::Hashable
1060
1060
 
1061
- # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if
1062
- # specifying a year by itself or a year and month where the day is not
1063
- # significant.
1061
+ # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
1062
+ # specify a year by itself or a year and month where the day isn't significant.
1064
1063
  # Corresponds to the JSON property `day`
1065
1064
  # @return [Fixnum]
1066
1065
  attr_accessor :day
1067
1066
 
1068
- # Month of year. Must be from 1 to 12, or 0 if specifying a year without a month
1067
+ # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
1069
1068
  # and day.
1070
1069
  # Corresponds to the JSON property `month`
1071
1070
  # @return [Fixnum]
1072
1071
  attr_accessor :month
1073
1072
 
1074
- # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
1073
+ # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
1074
+ # year.
1075
1075
  # Corresponds to the JSON property `year`
1076
1076
  # @return [Fixnum]
1077
1077
  attr_accessor :year
@@ -2669,7 +2669,7 @@ module Google
2669
2669
  class Money
2670
2670
  include Google::Apis::Core::Hashable
2671
2671
 
2672
- # The 3-letter currency code defined in ISO 4217.
2672
+ # The three-letter currency code defined in ISO 4217.
2673
2673
  # Corresponds to the JSON property `currencyCode`
2674
2674
  # @return [String]
2675
2675
  attr_accessor :currency_code
@@ -27,7 +27,7 @@ module Google
27
27
  # @see http://developers.google.com/admin-sdk/
28
28
  module AdminDirectoryV1
29
29
  VERSION = 'DirectoryV1'
30
- REVISION = '20200909'
30
+ REVISION = '20201013'
31
31
 
32
32
  # View and manage customer related information
33
33
  AUTH_ADMIN_DIRECTORY_CUSTOMER = 'https://www.googleapis.com/auth/admin.directory.customer'
@@ -1367,6 +1367,141 @@ module Google
1367
1367
  end
1368
1368
  end
1369
1369
 
1370
+ # Information regarding a command that was issued to a device.
1371
+ class DirectoryChromeosdevicesCommand
1372
+ include Google::Apis::Core::Hashable
1373
+
1374
+ # The time at which the command will expire. If the device doesn't execute the
1375
+ # command within this time the command will become expired.
1376
+ # Corresponds to the JSON property `commandExpireTime`
1377
+ # @return [String]
1378
+ attr_accessor :command_expire_time
1379
+
1380
+ # Unique ID of a device command.
1381
+ # Corresponds to the JSON property `commandId`
1382
+ # @return [Fixnum]
1383
+ attr_accessor :command_id
1384
+
1385
+ # The result of executing a command.
1386
+ # Corresponds to the JSON property `commandResult`
1387
+ # @return [Google::Apis::AdminDirectoryV1::DirectoryChromeosdevicesCommandResult]
1388
+ attr_accessor :command_result
1389
+
1390
+ # The timestamp when the command was issued by the admin.
1391
+ # Corresponds to the JSON property `issueTime`
1392
+ # @return [String]
1393
+ attr_accessor :issue_time
1394
+
1395
+ # The payload that the command specified, if any.
1396
+ # Corresponds to the JSON property `payload`
1397
+ # @return [String]
1398
+ attr_accessor :payload
1399
+
1400
+ # Indicates the command state.
1401
+ # Corresponds to the JSON property `state`
1402
+ # @return [String]
1403
+ attr_accessor :state
1404
+
1405
+ # The type of the command.
1406
+ # Corresponds to the JSON property `type`
1407
+ # @return [String]
1408
+ attr_accessor :type
1409
+
1410
+ def initialize(**args)
1411
+ update!(**args)
1412
+ end
1413
+
1414
+ # Update properties of this object
1415
+ def update!(**args)
1416
+ @command_expire_time = args[:command_expire_time] if args.key?(:command_expire_time)
1417
+ @command_id = args[:command_id] if args.key?(:command_id)
1418
+ @command_result = args[:command_result] if args.key?(:command_result)
1419
+ @issue_time = args[:issue_time] if args.key?(:issue_time)
1420
+ @payload = args[:payload] if args.key?(:payload)
1421
+ @state = args[:state] if args.key?(:state)
1422
+ @type = args[:type] if args.key?(:type)
1423
+ end
1424
+ end
1425
+
1426
+ # The result of executing a command.
1427
+ class DirectoryChromeosdevicesCommandResult
1428
+ include Google::Apis::Core::Hashable
1429
+
1430
+ # The error message with a short explanation as to why the command failed. Only
1431
+ # present if the command failed.
1432
+ # Corresponds to the JSON property `errorMessage`
1433
+ # @return [String]
1434
+ attr_accessor :error_message
1435
+
1436
+ # The time at which the command was executed or failed to execute.
1437
+ # Corresponds to the JSON property `executeTime`
1438
+ # @return [String]
1439
+ attr_accessor :execute_time
1440
+
1441
+ # The result of the command.
1442
+ # Corresponds to the JSON property `result`
1443
+ # @return [String]
1444
+ attr_accessor :result
1445
+
1446
+ def initialize(**args)
1447
+ update!(**args)
1448
+ end
1449
+
1450
+ # Update properties of this object
1451
+ def update!(**args)
1452
+ @error_message = args[:error_message] if args.key?(:error_message)
1453
+ @execute_time = args[:execute_time] if args.key?(:execute_time)
1454
+ @result = args[:result] if args.key?(:result)
1455
+ end
1456
+ end
1457
+
1458
+ # A request for issuing a command.
1459
+ class DirectoryChromeosdevicesIssueCommandRequest
1460
+ include Google::Apis::Core::Hashable
1461
+
1462
+ # The type of command.
1463
+ # Corresponds to the JSON property `commandType`
1464
+ # @return [String]
1465
+ attr_accessor :command_type
1466
+
1467
+ # The payload for the command, provide it only if command supports it. The
1468
+ # following commands support adding payload: - SET_VOLUME: Payload is a JSON
1469
+ # object in the form: ` "volume": 50 `. The volume has to be an integer in the
1470
+ # range [0,100].
1471
+ # Corresponds to the JSON property `payload`
1472
+ # @return [String]
1473
+ attr_accessor :payload
1474
+
1475
+ def initialize(**args)
1476
+ update!(**args)
1477
+ end
1478
+
1479
+ # Update properties of this object
1480
+ def update!(**args)
1481
+ @command_type = args[:command_type] if args.key?(:command_type)
1482
+ @payload = args[:payload] if args.key?(:payload)
1483
+ end
1484
+ end
1485
+
1486
+ # A response for issuing a command.
1487
+ class DirectoryChromeosdevicesIssueCommandResponse
1488
+ include Google::Apis::Core::Hashable
1489
+
1490
+ # The unique ID of the issued command, used to retrieve the command status.
1491
+ # Corresponds to the JSON property `commandId`
1492
+ # @return [Fixnum]
1493
+ attr_accessor :command_id
1494
+
1495
+ def initialize(**args)
1496
+ update!(**args)
1497
+ end
1498
+
1499
+ # Update properties of this object
1500
+ def update!(**args)
1501
+ @command_id = args[:command_id] if args.key?(:command_id)
1502
+ end
1503
+ end
1504
+
1370
1505
  #
1371
1506
  class DomainAlias
1372
1507
  include Google::Apis::Core::Hashable