gapic-generator-cloud 0.2.3 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- 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 %>"
|