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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fa40108edbcc0c4837ddd71c24a8524e11d55a37793c14608e03a9106e63d88b
4
- data.tar.gz: a8e291c06bdc9bdf3f0e801a45c8b089d0cd170cd4e2762cc5b12ab2eb0240b1
3
+ metadata.gz: 68f8ebe0dac34e3d97e12368cdfc6cf1a39b1b62cc88efd0ed84c3a5331b4263
4
+ data.tar.gz: b81c314a23ddd49d65a9987ffadf6a296de351b97690c874be0cc825a8080b14
5
5
  SHA512:
6
- metadata.gz: 7a50e21c3c649b6c8b46316f3b91c23f3bc3476be1a17f7fdc4b034003aee7687fe3a8ac7692308f26dd8c5634d20f70c85ddef4bf2d19e165a2083e80d1afea
7
- data.tar.gz: d4a51eab2725e0e32a13757b33b49b9aac4b4efc433b1545341dbca5e4b9d947b0df9116d5e7de13cace00cbb78d75e1c4816c5eeaa9ab22383085ff8e717ac8
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
@@ -17,7 +17,7 @@
17
17
  module Gapic
18
18
  module Generator
19
19
  module Cloud
20
- VERSION = "0.2.3"
20
+ VERSION = "0.3.0"
21
21
  end
22
22
  end
23
23
  end
@@ -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/dashed.erb", "lib/#{gem.name}.rb", gem: gem) if gem.needs_dashed_ruby_file?
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 needs_dashed_ruby_file?
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", "~> 0.6.9"
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
- Exclude:
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
- Exclude:
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
- Exclude:
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
- Exclude:
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
- Exclude:
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
- Exclude:
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
- Exclude:
62
- <%- gem.packages.each do |package| -%>
63
- <%- package.services.each do |service| -%>
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
- <%- if gem.needs_dashed_ruby_file? -%>
4
- require "<%= gem.name %>"
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| -%>
@@ -0,0 +1,4 @@
1
+ <%- assert_locals gem -%>
2
+ <%= render partial: "shared/header" -%>
3
+
4
+ require "<%= gem.namespace_require %>"
@@ -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 [Stackdriver Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
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.2.3
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-06 00:00:00.000000000 Z
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.2.3
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.2.3
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/dashed.erb
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,2 +0,0 @@
1
- <%- assert_locals gem -%>
2
- require "<%= gem.version_require %>"
@@ -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 %>"