gapic-generator-cloud 0.2.3 → 0.3.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 +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/gapic/generator/cloud/version.rb +1 -1
- data/lib/gapic/generators/cloud_generator.rb +1 -2
- data/lib/gapic/presenters/wrapper_gem_presenter.rb +5 -1
- data/templates/cloud/gem/gemspec.erb +1 -1
- data/templates/cloud/gem/readme.erb +93 -0
- data/templates/cloud/gem/rubocop.erb +9 -44
- data/templates/cloud/wrapper_gem/_main.erb +17 -2
- data/templates/cloud/wrapper_gem/entrypoint.erb +4 -0
- data/templates/cloud/wrapper_gem/readme.erb +1 -1
- metadata +6 -6
- data/templates/cloud/gem/dashed.erb +0 -2
- data/templates/cloud/wrapper_gem/dashed.erb +0 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 68f8ebe0dac34e3d97e12368cdfc6cf1a39b1b62cc88efd0ed84c3a5331b4263
|
4
|
+
data.tar.gz: b81c314a23ddd49d65a9987ffadf6a296de351b97690c874be0cc825a8080b14
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ed45770c75247968a0600b210fe25eb14334560266c003fee38fabc486db1d2ca2f83290d6b3e0b9d7aba4d90266833e7b02238dd7b7e6947a13e21262ee576e
|
7
|
+
data.tar.gz: 6000c4fac479e42e5e672a5ac6caeb70b3827ed9c68aa214f1603cac54a37885725a1741a523368fe86596a50e82a37a7dbf068632774f8c07eb5fa6a32e9589
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# Release History for gapic-generator-cloud
|
2
2
|
|
3
|
+
### 0.3.0 / 2020-04-10
|
4
|
+
|
5
|
+
* Includes changes from gapic-generator 0.3.0
|
6
|
+
* Generated readmes include quickstart, project/auth/billing setup instructions, and logging instructions.
|
7
|
+
|
3
8
|
### 0.2.3 / 2020-04-06
|
4
9
|
|
5
10
|
* Includes changes from gapic-generator 0.2.3
|
@@ -55,7 +55,6 @@ module Gapic
|
|
55
55
|
# Additional Gem level files
|
56
56
|
cloud_files << g("gem/repo-metadata.erb", ".repo-metadata.json", gem: gem)
|
57
57
|
cloud_files << g("gem/authentication.erb", "AUTHENTICATION.md", gem: gem) unless gem.services.empty?
|
58
|
-
cloud_files << g("gem/dashed.erb", "lib/#{gem.name}.rb", gem: gem)
|
59
58
|
|
60
59
|
format_files cloud_files
|
61
60
|
|
@@ -87,7 +86,7 @@ module Gapic
|
|
87
86
|
files << g("wrapper_gem/rakefile.erb", "Rakefile", gem: gem)
|
88
87
|
files << g("wrapper_gem/readme.erb", "README.md", gem: gem)
|
89
88
|
files << g("wrapper_gem/gemspec.erb", "#{gem.name}.gemspec", gem: gem)
|
90
|
-
files << g("wrapper_gem/
|
89
|
+
files << g("wrapper_gem/entrypoint.erb", "lib/#{gem.name}.rb", gem: gem) if gem.needs_entrypoint?
|
91
90
|
files << g("wrapper_gem/main.erb", "lib/#{gem.namespace_file_path}", gem: gem)
|
92
91
|
files << g("gem/version.erb", "lib/#{gem.version_file_path}", gem: gem)
|
93
92
|
files << g("wrapper_gem/test_helper.erb", "test/helper.rb", gem: gem)
|
@@ -42,10 +42,14 @@ module Gapic
|
|
42
42
|
"#{namespace_require}.rb"
|
43
43
|
end
|
44
44
|
|
45
|
-
def
|
45
|
+
def needs_entrypoint?
|
46
46
|
name != namespace_file_path
|
47
47
|
end
|
48
48
|
|
49
|
+
def needs_default_config_block?
|
50
|
+
needs_entrypoint? && !google_cloud_short_name.nil?
|
51
|
+
end
|
52
|
+
|
49
53
|
def migration_version
|
50
54
|
gem_config :migration_version
|
51
55
|
end
|
@@ -26,7 +26,7 @@ Gem::Specification.new do |gem|
|
|
26
26
|
gem.add_dependency "gapic-common", "~> 0.2"
|
27
27
|
gem.add_dependency "google-cloud-errors", "~> 1.0"
|
28
28
|
<%- if gem.iam_dependency? -%>
|
29
|
-
gem.add_dependency "grpc-google-iam-v1", "
|
29
|
+
gem.add_dependency "grpc-google-iam-v1", ">= 0.6.10", "< 2.0"
|
30
30
|
<%- end -%>
|
31
31
|
|
32
32
|
gem.add_development_dependency "google-style", "~> 1.24.0"
|
@@ -0,0 +1,93 @@
|
|
1
|
+
# Ruby Client for the <%= gem.title %> API
|
2
|
+
|
3
|
+
<%= gem.summary %>
|
4
|
+
|
5
|
+
<%= gem.description %>
|
6
|
+
|
7
|
+
<%= gem.homepage %>
|
8
|
+
|
9
|
+
## Installation
|
10
|
+
|
11
|
+
```
|
12
|
+
$ gem install <%= gem.name %>
|
13
|
+
```
|
14
|
+
|
15
|
+
## Before You Begin
|
16
|
+
|
17
|
+
In order to use this library, you first need to go through the following steps:
|
18
|
+
|
19
|
+
1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
|
20
|
+
<%- if gem.free_tier? -%>
|
21
|
+
1. This API has a free tier. You may not need to
|
22
|
+
[enable billing](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
|
23
|
+
to get started.
|
24
|
+
<%- else -%>
|
25
|
+
1. [Enable billing for your project.](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
|
26
|
+
<%- end -%>
|
27
|
+
<%- if gem.api_id -%>
|
28
|
+
1. [Enable the API.](https://console.cloud.google.com/apis/library/<%= gem.api_id %>.googleapis.com)
|
29
|
+
<%- end -%>
|
30
|
+
1. {file:AUTHENTICATION.md Set up authentication.}
|
31
|
+
|
32
|
+
## Quick Start
|
33
|
+
|
34
|
+
<%- if gem.packages? -%>
|
35
|
+
```ruby
|
36
|
+
require "<%= gem.entrypoint_require %>"
|
37
|
+
<%- service = gem.packages.first.services.first -%>
|
38
|
+
<%- method = service&.methods.first -%>
|
39
|
+
<%- if service && method -%>
|
40
|
+
|
41
|
+
client = <%= service.create_client_call %>
|
42
|
+
request = my_create_request
|
43
|
+
response = client.<%= method.name %> request
|
44
|
+
<%- end -%>
|
45
|
+
```
|
46
|
+
|
47
|
+
<%- end -%>
|
48
|
+
<%- unless gem.library_documentation_url.to_s.empty? -%>
|
49
|
+
View the [Client Library Documentation](<%= gem.library_documentation_url %>)
|
50
|
+
for class and method documentation.
|
51
|
+
|
52
|
+
<%- end -%>
|
53
|
+
<%- if gem.product_documentation_url -%>
|
54
|
+
See also the [Product Documentation](<%= gem.product_documentation_url %>)
|
55
|
+
for general usage information.
|
56
|
+
|
57
|
+
<%- end -%>
|
58
|
+
## Enabling Logging
|
59
|
+
|
60
|
+
To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
|
61
|
+
The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib/libdoc/logger/rdoc/Logger.html) as shown below,
|
62
|
+
or a [`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
|
63
|
+
that will write logs to [Cloud Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
|
64
|
+
and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
|
65
|
+
|
66
|
+
Configuring a Ruby stdlib logger:
|
67
|
+
|
68
|
+
```ruby
|
69
|
+
require "logger"
|
70
|
+
|
71
|
+
module MyLogger
|
72
|
+
LOGGER = Logger.new $stderr, level: Logger::WARN
|
73
|
+
def logger
|
74
|
+
LOGGER
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
# Define a gRPC module-level logger method before grpc/logconfig.rb loads.
|
79
|
+
module GRPC
|
80
|
+
extend MyLogger
|
81
|
+
end
|
82
|
+
```
|
83
|
+
|
84
|
+
## Supported Ruby Versions
|
85
|
+
|
86
|
+
This library is supported on Ruby 2.4+.
|
87
|
+
|
88
|
+
Google provides official support for Ruby versions that are actively supported
|
89
|
+
by Ruby Core—that is, Ruby versions that are either in normal maintenance or
|
90
|
+
in security maintenance, and not end of life. Currently, this means Ruby 2.4
|
91
|
+
and later. Older versions of Ruby _may_ still work, but are unsupported and not
|
92
|
+
recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details
|
93
|
+
about the Ruby support schedule.
|
@@ -12,58 +12,23 @@ AllCops:
|
|
12
12
|
- "Rakefile"
|
13
13
|
|
14
14
|
Metrics/AbcSize:
|
15
|
-
|
16
|
-
<%- gem.packages.each do |package| -%>
|
17
|
-
<%- package.services.each do |service| -%>
|
18
|
-
- "lib/<%= service.client_file_path.sub "client.rb", "*.rb" %>"
|
19
|
-
<%- end -%>
|
20
|
-
<%- end -%>
|
15
|
+
Enabled: false
|
21
16
|
Metrics/ClassLength:
|
22
|
-
|
23
|
-
<%- gem.packages.each do |package| -%>
|
24
|
-
<%- package.services.each do |service| -%>
|
25
|
-
- "lib/<%= service.client_file_path.sub "client.rb", "*.rb" %>"
|
26
|
-
<%- end -%>
|
27
|
-
<%- end -%>
|
17
|
+
Enabled: false
|
28
18
|
Metrics/CyclomaticComplexity:
|
29
|
-
|
30
|
-
<%- gem.packages.each do |package| -%>
|
31
|
-
<%- package.services.each do |service| -%>
|
32
|
-
- "lib/<%= service.client_file_path.sub "client.rb", "*.rb" %>"
|
33
|
-
<%- end -%>
|
34
|
-
<%- end -%>
|
19
|
+
Enabled: false
|
35
20
|
Metrics/LineLength:
|
36
|
-
|
37
|
-
<%- gem.packages.each do |package| -%>
|
38
|
-
<%- package.services.each do |service| -%>
|
39
|
-
- "lib/<%= service.client_file_path.sub "client.rb", "*.rb" %>"
|
40
|
-
<%- end -%>
|
41
|
-
<%- end -%>
|
42
|
-
- "<%= gem.name %>.gemspec"
|
21
|
+
Enabled: false
|
43
22
|
Metrics/MethodLength:
|
44
|
-
|
45
|
-
<%- gem.packages.each do |package| -%>
|
46
|
-
<%- package.services.each do |service| -%>
|
47
|
-
- "lib/<%= service.client_file_path.sub "client.rb", "*.rb" %>"
|
48
|
-
<%- end -%>
|
49
|
-
<%- end -%>
|
23
|
+
Enabled: false
|
50
24
|
Metrics/PerceivedComplexity:
|
51
|
-
|
52
|
-
<%- gem.packages.each do |package| -%>
|
53
|
-
<%- package.services.each do |service| -%>
|
54
|
-
- "lib/<%= service.client_file_path.sub "client.rb", "*.rb" %>"
|
55
|
-
<%- end -%>
|
56
|
-
<%- end -%>
|
25
|
+
Enabled: false
|
57
26
|
Naming/FileName:
|
58
27
|
Exclude:
|
59
28
|
- "lib/<%= gem.name %>.rb"
|
60
29
|
Style/CaseEquality:
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
- "lib/<%= service.client_file_path.sub "client.rb", "*.rb" %>"
|
65
|
-
<%- end -%>
|
66
|
-
<%- end -%>
|
67
|
-
- "lib/<%= gem.name.tr "-", "/" %>.rb"
|
30
|
+
Enabled: false
|
31
|
+
Style/IfUnlessModifier:
|
32
|
+
Enabled: false
|
68
33
|
Style/ModuleFunction:
|
69
34
|
Enabled: false
|
@@ -1,7 +1,22 @@
|
|
1
1
|
<%- assert_locals gem -%>
|
2
2
|
<% @requires = capture do %>
|
3
|
-
|
4
|
-
require "
|
3
|
+
require "<%= gem.version_require %>"
|
4
|
+
require "googleauth"
|
5
|
+
<%- if gem.needs_default_config_block? -%>
|
6
|
+
gem "google-cloud-core"
|
7
|
+
require "google/cloud" unless defined? Google::Cloud.new
|
8
|
+
require "google/cloud/config"
|
9
|
+
|
10
|
+
# Set the default configuration
|
11
|
+
Google::Cloud.configure.add_config! :<%= gem.google_cloud_short_name %> do |config|
|
12
|
+
config.add_field! :credentials, nil, match: [String, Hash, Google::Auth::Credentials]
|
13
|
+
config.add_field! :lib_name, nil, match: String
|
14
|
+
config.add_field! :lib_version, nil, match: String
|
15
|
+
config.add_field! :interceptors, nil, match: Array
|
16
|
+
config.add_field! :timeout, nil, match: Numeric
|
17
|
+
config.add_field! :metadata, nil, match: Hash
|
18
|
+
config.add_field! :retry_policy, nil, match: [Hash, Proc]
|
19
|
+
end
|
5
20
|
<%- end -%>
|
6
21
|
<% end %>
|
7
22
|
<%- gem.services.each do |service| -%>
|
@@ -62,7 +62,7 @@ See the {file:MIGRATING.md MIGRATING.md} document for more information.
|
|
62
62
|
To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
|
63
63
|
The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib/libdoc/logger/rdoc/Logger.html) as shown below,
|
64
64
|
or a [`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
|
65
|
-
that will write logs to [
|
65
|
+
that will write logs to [Cloud Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
|
66
66
|
and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
|
67
67
|
|
68
68
|
Configuring a Ruby stdlib logger:
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gapic-generator-cloud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ernest Landrito
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2020-04-
|
13
|
+
date: 2020-04-10 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: actionpack
|
@@ -32,14 +32,14 @@ dependencies:
|
|
32
32
|
requirements:
|
33
33
|
- - '='
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version: 0.
|
35
|
+
version: 0.3.0
|
36
36
|
type: :runtime
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
40
|
- - '='
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version: 0.
|
42
|
+
version: 0.3.0
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: google-style
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
@@ -175,11 +175,11 @@ files:
|
|
175
175
|
- lib/gapic/presenters/wrapper_gem_presenter.rb
|
176
176
|
- lib/gapic/presenters/wrapper_service_presenter.rb
|
177
177
|
- templates/cloud/gem/authentication.erb
|
178
|
-
- templates/cloud/gem/dashed.erb
|
179
178
|
- templates/cloud/gem/gemspec.erb
|
180
179
|
- templates/cloud/gem/gitignore.erb
|
181
180
|
- templates/cloud/gem/license.erb
|
182
181
|
- templates/cloud/gem/rakefile.erb
|
182
|
+
- templates/cloud/gem/readme.erb
|
183
183
|
- templates/cloud/gem/repo-metadata.erb
|
184
184
|
- templates/cloud/gem/rubocop.erb
|
185
185
|
- templates/cloud/gem/yardopts.erb
|
@@ -191,7 +191,7 @@ files:
|
|
191
191
|
- templates/cloud/shared/_license.erb
|
192
192
|
- templates/cloud/wrapper_gem/_main.erb
|
193
193
|
- templates/cloud/wrapper_gem/client_test.erb
|
194
|
-
- templates/cloud/wrapper_gem/
|
194
|
+
- templates/cloud/wrapper_gem/entrypoint.erb
|
195
195
|
- templates/cloud/wrapper_gem/gemfile.erb
|
196
196
|
- templates/cloud/wrapper_gem/gemspec.erb
|
197
197
|
- templates/cloud/wrapper_gem/main.erb
|
@@ -1,22 +0,0 @@
|
|
1
|
-
<%- assert_locals gem -%>
|
2
|
-
<%= render partial: "shared/header" -%>
|
3
|
-
|
4
|
-
<%- if gem.google_cloud_short_name -%>
|
5
|
-
gem "google-cloud-core"
|
6
|
-
require "google/cloud" unless defined? Google::Cloud.new
|
7
|
-
require "google/cloud/config"
|
8
|
-
require "googleauth"
|
9
|
-
|
10
|
-
# Set the default configuration
|
11
|
-
Google::Cloud.configure.add_config! :<%= gem.google_cloud_short_name %> do |config|
|
12
|
-
config.add_field! :credentials, nil, match: [String, Hash, Google::Auth::Credentials]
|
13
|
-
config.add_field! :lib_name, nil, match: String
|
14
|
-
config.add_field! :lib_version, nil, match: String
|
15
|
-
config.add_field! :interceptors, nil, match: Array
|
16
|
-
config.add_field! :timeout, nil, match: Numeric
|
17
|
-
config.add_field! :metadata, nil, match: Hash
|
18
|
-
config.add_field! :retry_policy, nil, match: [Hash, Proc]
|
19
|
-
end
|
20
|
-
|
21
|
-
<%- end -%>
|
22
|
-
require "<%= gem.version_require %>"
|