gapic-generator-cloud 0.8.0 → 0.10.1

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: ac86ed068a512a634033c1c1d15336857f9d3cc4fdc3818e37d339dc80df7814
4
- data.tar.gz: 19553dab1dc41089de60dd030760e362d14335575283f8d3229acfeb018c4615
3
+ metadata.gz: e19aa05da89d8cd2c3786a6b8df6aabdf3a1e350a759d693f157f7aa97403da5
4
+ data.tar.gz: 686c3ec9da22e5d3d6de80c53ba6ff7f98cbf32ae92dc60a91f62dee5849b15b
5
5
  SHA512:
6
- metadata.gz: 014b1551a395518c0da9182cda3d183040af720bb47079c68325597bb44baa251a634c697feacd19fdf20ec53430837a6efbd36bc75f8d8214d44ba4b4a0c7fb
7
- data.tar.gz: 398bc287670e347e178c6e7e84c604866162e1e69733cdc72311ef98832c9a783b8956a14f9695d5a178117dbfb01d260eb5e45d2717fa2997d9233fa6b13724
6
+ metadata.gz: 5040c06a7e04e7d8a1f020bfe3332495ad1c346966237d14e813442b58416ff332eb955443191328c68b0ee35de907f0587d5b821d6015d86b7ce11dd96747cf
7
+ data.tar.gz: 36d887e5fd2669fe1220f8a57816b1f06efd3a100ff18c9882458bfd57d364a618d8e76be2b514adf1596af1a6554f416fe38881767b98e8b9d7909bffb5bdd9
data/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # Release History for gapic-generator-cloud
2
2
 
3
+ ### 0.10.1 / 2021-08-27
4
+
5
+ * Includes changes from gapic-generator 0.10.1
6
+
7
+ ### 0.10.0 / 2021-08-09
8
+
9
+ * Includes changes from gapic-generator 0.10.0
10
+
11
+ ### 0.9.2 / 2021-07-07
12
+
13
+ * Includes changes from gapic-generator 0.9.2
14
+ * Disable Style/BlockDelimiters check for sample acceptance tests
15
+ * Flags `--ruby-cloud-generate-standalone-snippets` and `--ruby-cloud-generate-yardoc-snippets` are now recognized
16
+
17
+ ### 0.9.1 / 2021-07-07
18
+
19
+ * Includes changes from gapic-generator 0.9.1
20
+ * Clarify some text in generated authentication docs
21
+
22
+ ### 0.9.0 / 2021-06-29
23
+
24
+ * Includes changes from gapic-generator 0.9.0
25
+
3
26
  ### 0.8.0 / 2021-06-16
4
27
 
5
28
  * Includes changes from gapic-generator 0.8.0
@@ -18,7 +18,7 @@
18
18
  module Gapic
19
19
  module Generator
20
20
  module Cloud
21
- VERSION = "0.8.0"
21
+ VERSION = "0.10.1"
22
22
  end
23
23
  end
24
24
  end
@@ -21,10 +21,12 @@ module Gapic
21
21
  # Contains the cloud generator's parameters
22
22
  module CloudGeneratorParameters
23
23
  BOOL_PARAMETERS_ALIASES = {
24
- "ruby-cloud-free-tier" => ":gem.:free_tier",
25
- "ruby-cloud-yard-strict" => ":gem.:yard_strict",
26
- "ruby-cloud-generic-endpoint" => ":gem.:generic_endpoint",
27
- "ruby-cloud-generate-metadata" => ":generate_metadata"
24
+ "ruby-cloud-free-tier" => ":gem.:free_tier",
25
+ "ruby-cloud-yard-strict" => ":gem.:yard_strict",
26
+ "ruby-cloud-generic-endpoint" => ":gem.:generic_endpoint",
27
+ "ruby-cloud-generate-metadata" => ":generate_metadata",
28
+ "ruby-cloud-generate-standalone-snippets" => ":generate_standalone_snippets",
29
+ "ruby-cloud-generate-yardoc-snippets" => ":generate_yardoc_snippets"
28
30
  }.freeze
29
31
 
30
32
  STRING_PARAMETERS_ALIASES = {
@@ -42,6 +44,8 @@ module Gapic
42
44
  "ruby-cloud-api-id" => ":gem.:api_id",
43
45
  "ruby-cloud-api-shortname" => ":gem.:api_shortname",
44
46
  "ruby-cloud-factory-method-suffix" => ":gem.:factory_method_suffix",
47
+ "ruby-cloud-quick-start-service" => ":gem.:quick_start_service",
48
+ "ruby-cloud-quick-start-method" => ":gem.:quick_start_method",
45
49
  "ruby-cloud-default-service-host" => ":defaults.:service.:default_host",
46
50
  "ruby-cloud-grpc-service-config" => "grpc_service_config",
47
51
  "ruby-cloud-wrapper-gem-override" => ":overrides.:wrapper_gem_name"
@@ -47,7 +47,7 @@ module Gapic
47
47
 
48
48
  ##
49
49
  # The name of the wrapper gem corresponding to this versioned gem
50
- # @return [String, Nil]
50
+ # @return [String, nil]
51
51
  #
52
52
  def wrapper_name
53
53
  return @api.wrapper_gem_name_override if @api.wrapper_gem_name_override?
@@ -77,6 +77,10 @@ module Gapic
77
77
  desc
78
78
  end
79
79
 
80
+ def cloud_env_prefix
81
+ env_prefix || "GOOGLE_CLOUD"
82
+ end
83
+
80
84
  ##
81
85
  # Returns a hash of extra generator arguments to be rendered into the
82
86
  # repo-metadata.json file.
@@ -84,12 +88,14 @@ module Gapic
84
88
  def generator_args_for_metadata
85
89
  result = {}
86
90
  result["ruby-cloud-description"] = description
87
- result["ruby-cloud-env-prefix"] = env_prefix
91
+ result["ruby-cloud-env-prefix"] = env_prefix if env_prefix
88
92
  result["ruby-cloud-product-url"] = product_documentation_url if product_documentation_url
89
93
  path_overrides = @api.overrides_of(:file_path).map { |k, v| "#{k}=#{v}" }.join ";"
90
94
  result["ruby-cloud-path-override"] = path_overrides unless path_overrides.empty?
91
95
  namespace_overrides = @api.overrides_of(:namespace).map { |k, v| "#{k}=#{v}" }.join ";"
92
96
  result["ruby-cloud-namespace-override"] = namespace_overrides unless namespace_overrides.empty?
97
+ service_overrides = @api.overrides_of(:service).map { |k, v| "#{k}=#{v}" }.join ";"
98
+ result["ruby-cloud-service-override"] = service_overrides unless service_overrides.empty?
93
99
  result
94
100
  end
95
101
  end
@@ -107,9 +107,18 @@ module Gapic
107
107
 
108
108
  def dependencies
109
109
  @dependencies ||= begin
110
- deps = { "google-cloud-core" => "~> 1.5" }
110
+ deps = { "google-cloud-core" => "~> 1.6" }
111
111
  version_dependencies.each do |version, requirement|
112
- deps["#{name}-#{version}"] = "~> #{requirement}"
112
+ # For pre-release dependencies on versioned clients, support both
113
+ # 0.x and 1.x versions to ease the transition to 1.0 (GA) releases
114
+ # for those dependencies. (Note the 0.x->1.0 transition is
115
+ # generally not breaking.)
116
+ deps["#{name}-#{version}"] =
117
+ if requirement.start_with? "0."
118
+ [">= #{requirement}", "< 2.a"]
119
+ else
120
+ "~> #{requirement}"
121
+ end
113
122
  end
114
123
  extra_deps = gem_config_dependencies
115
124
  deps.merge! extra_deps if extra_deps
@@ -1,5 +1,5 @@
1
1
  <%- assert_locals gem -%>
2
- <%- service = gem.first_non_common_service -%>
2
+ <%- service = gem.first_non_common_service.usable_service_presenter -%>
3
3
  <%- assert_locals service -%>
4
4
  # Authentication
5
5
 
@@ -22,7 +22,7 @@ during development.
22
22
  2. Set the [environment variable](#environment-variables).
23
23
 
24
24
  ```sh
25
- export <%= gem.env_prefix %>_CREDENTIALS=path/to/keyfile.json
25
+ export <%= gem.cloud_env_prefix %>_CREDENTIALS=path/to/keyfile.json
26
26
  ```
27
27
 
28
28
  3. Initialize the client.
@@ -69,24 +69,26 @@ The environment variables that <%= gem.name %>
69
69
  checks for credentials are configured on the service Credentials class (such as
70
70
  <%= service.credentials_class_xref %>):
71
71
 
72
- 1. `<%= gem.env_prefix %>_CREDENTIALS` - Path to JSON file, or JSON contents
73
- 2. `<%= gem.env_prefix %>_KEYFILE` - Path to JSON file, or JSON contents
74
- 3. `GOOGLE_CLOUD_CREDENTIALS` - Path to JSON file, or JSON contents
75
- 4. `GOOGLE_CLOUD_KEYFILE` - Path to JSON file, or JSON contents
76
- 5. `GOOGLE_APPLICATION_CREDENTIALS` - Path to JSON file
72
+ <%- if gem.env_prefix -%>
73
+ * `<%= gem.env_prefix %>_CREDENTIALS` - Path to JSON file, or JSON contents
74
+ * `<%= gem.env_prefix %>_KEYFILE` - Path to JSON file, or JSON contents
75
+ <%- end -%>
76
+ * `GOOGLE_CLOUD_CREDENTIALS` - Path to JSON file, or JSON contents
77
+ * `GOOGLE_CLOUD_KEYFILE` - Path to JSON file, or JSON contents
78
+ * `GOOGLE_APPLICATION_CREDENTIALS` - Path to JSON file
77
79
 
78
80
  ```ruby
79
81
  require "<%= gem.entrypoint_require %>"
80
82
 
81
- ENV["<%= gem.env_prefix %>_CREDENTIALS"] = "path/to/keyfile.json"
83
+ ENV["<%= gem.cloud_env_prefix %>_CREDENTIALS"] = "path/to/keyfile.json"
82
84
 
83
85
  client = <%= service.create_client_call %>
84
86
  ```
85
87
 
86
88
  ### Configuration
87
89
 
88
- The **Credentials JSON** can be configured instead of placing them in
89
- environment variables. Either on an individual client initialization:
90
+ The path to the **Credentials JSON** file can be configured instead of storing
91
+ it in an environment variable. Either on an individual client initialization:
90
92
 
91
93
  ```ruby
92
94
  require "<%= gem.entrypoint_require %>"
@@ -96,7 +98,7 @@ client = <%= service.create_client_call %> do |config|
96
98
  end
97
99
  ```
98
100
 
99
- Or configured globally for all clients:
101
+ Or globally for all clients:
100
102
 
101
103
  ```ruby
102
104
  require "<%= gem.entrypoint_require %>"
@@ -56,29 +56,29 @@ task :acceptance, :project, :keyfile do |t, args|
56
56
  <%- if service && !gem.generic_endpoint? -%>
57
57
  project = args[:project]
58
58
  project ||=
59
- ENV["<%= gem.env_prefix %>_TEST_PROJECT"] ||
59
+ ENV["<%= gem.cloud_env_prefix %>_TEST_PROJECT"] ||
60
60
  ENV["GCLOUD_TEST_PROJECT"]
61
61
  keyfile = args[:keyfile]
62
62
  keyfile ||=
63
- ENV["<%= gem.env_prefix %>_TEST_KEYFILE"] ||
63
+ ENV["<%= gem.cloud_env_prefix %>_TEST_KEYFILE"] ||
64
64
  ENV["GCLOUD_TEST_KEYFILE"]
65
65
  if keyfile
66
66
  keyfile = File.read keyfile
67
67
  else
68
68
  keyfile ||=
69
- ENV["<%= gem.env_prefix %>_TEST_KEYFILE_JSON"] ||
69
+ ENV["<%= gem.cloud_env_prefix %>_TEST_KEYFILE_JSON"] ||
70
70
  ENV["GCLOUD_TEST_KEYFILE_JSON"]
71
71
  end
72
72
  if project.nil? || keyfile.nil?
73
- fail "You must provide a project and keyfile. e.g. rake acceptance[test123, /path/to/keyfile.json] or <%= gem.env_prefix %>_TEST_PROJECT=test123 <%= gem.env_prefix %>_TEST_KEYFILE=/path/to/keyfile.json rake acceptance"
73
+ fail "You must provide a project and keyfile. e.g. rake acceptance[test123, /path/to/keyfile.json] or <%= gem.cloud_env_prefix %>_TEST_PROJECT=test123 <%= gem.cloud_env_prefix %>_TEST_KEYFILE=/path/to/keyfile.json rake acceptance"
74
74
  end
75
75
  require "<%= service.credentials_require %>"
76
76
  <%= service.credentials_name_full %>.env_vars.each do |path|
77
77
  ENV[path] = nil
78
78
  end
79
- ENV["<%= gem.env_prefix %>_PROJECT"] = project
80
- ENV["<%= gem.env_prefix %>_TEST_PROJECT"] = project
81
- ENV["<%= gem.env_prefix %>_KEYFILE_JSON"] = keyfile
79
+ ENV["<%= gem.cloud_env_prefix %>_PROJECT"] = project
80
+ ENV["<%= gem.cloud_env_prefix %>_TEST_PROJECT"] = project
81
+ ENV["<%= gem.cloud_env_prefix %>_KEYFILE_JSON"] = keyfile
82
82
 
83
83
  <%- end -%>
84
84
  Rake::Task["acceptance:run"].invoke
@@ -44,12 +44,12 @@ In order to use this library, you first need to go through the following steps:
44
44
  <%- if gem.packages? -%>
45
45
  ```ruby
46
46
  require "<%= gem.entrypoint_require %>"
47
- <%- service = gem.first_non_common_service -%>
48
- <%- method = service&.methods.first -%>
47
+ <%- service = gem.quick_start_service.usable_service_presenter -%>
48
+ <%- method = service&.quick_start_method -%>
49
49
  <%- if service && method -%>
50
50
 
51
51
  client = <%= service.create_client_call %>
52
- request = my_create_request
52
+ request = <%= method.request_type %>.new # (request fields as keyword arguments...)
53
53
  response = client.<%= method.name %> request
54
54
  <%- end -%>
55
55
  ```
@@ -65,6 +65,7 @@ See also the [Product Documentation](<%= gem.product_documentation_url %>)
65
65
  for general usage information.
66
66
 
67
67
  <%- end -%>
68
+ <%- if gem.show_grpc_logging_docs? -%>
68
69
  ## Enabling Logging
69
70
 
70
71
  To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
@@ -91,6 +92,7 @@ module GRPC
91
92
  end
92
93
  ```
93
94
 
95
+ <%- end -%>
94
96
  ## Supported Ruby Versions
95
97
 
96
98
  This library is supported on Ruby 2.5+.
@@ -9,6 +9,7 @@ AllCops:
9
9
  - "proto_docs/**/*"
10
10
  - "test/**/*"
11
11
  - "acceptance/**/*"
12
+ - "samples/acceptance/**/*"
12
13
  - "Rakefile"
13
14
 
14
15
  Layout/LineLength:
@@ -13,13 +13,17 @@ class <%= service.credentials_name %> < ::Google::Auth::Credentials
13
13
  ]
14
14
  <%- end -%>
15
15
  self.env_vars = [
16
+ <%- if service.gem.env_prefix -%>
16
17
  "<%= service.gem.env_prefix %>_CREDENTIALS",
17
18
  "<%= service.gem.env_prefix %>_KEYFILE",
19
+ <%- end -%>
18
20
  "GOOGLE_CLOUD_CREDENTIALS",
19
21
  "GOOGLE_CLOUD_KEYFILE",
20
22
  "GCLOUD_KEYFILE",
23
+ <%- if service.gem.env_prefix -%>
21
24
  "<%= service.gem.env_prefix %>_CREDENTIALS_JSON",
22
25
  "<%= service.gem.env_prefix %>_KEYFILE_JSON",
26
+ <%- end -%>
23
27
  "GOOGLE_CLOUD_CREDENTIALS_JSON",
24
28
  "GOOGLE_CLOUD_KEYFILE_JSON",
25
29
  "GCLOUD_KEYFILE_JSON"
@@ -56,29 +56,29 @@ desc "Run the <%= gem.name %> acceptance tests."
56
56
  task :acceptance, :project, :keyfile do |t, args|
57
57
  project = args[:project]
58
58
  project ||=
59
- ENV["<%= gem.env_prefix %>_TEST_PROJECT"] ||
59
+ ENV["<%= gem.cloud_env_prefix %>_TEST_PROJECT"] ||
60
60
  ENV["GCLOUD_TEST_PROJECT"]
61
61
  keyfile = args[:keyfile]
62
62
  keyfile ||=
63
- ENV["<%= gem.env_prefix %>_TEST_KEYFILE"] ||
63
+ ENV["<%= gem.cloud_env_prefix %>_TEST_KEYFILE"] ||
64
64
  ENV["GCLOUD_TEST_KEYFILE"]
65
65
  if keyfile
66
66
  keyfile = File.read keyfile
67
67
  else
68
68
  keyfile ||=
69
- ENV["<%= gem.env_prefix %>_TEST_KEYFILE_JSON"] ||
69
+ ENV["<%= gem.cloud_env_prefix %>_TEST_KEYFILE_JSON"] ||
70
70
  ENV["GCLOUD_TEST_KEYFILE_JSON"]
71
71
  end
72
72
  if project.nil? || keyfile.nil?
73
- fail "You must provide a project and keyfile. e.g. rake acceptance[test123, /path/to/keyfile.json] or <%= gem.env_prefix %>_TEST_PROJECT=test123 <%= gem.env_prefix %>_TEST_KEYFILE=/path/to/keyfile.json rake acceptance"
73
+ fail "You must provide a project and keyfile. e.g. rake acceptance[test123, /path/to/keyfile.json] or <%= gem.cloud_env_prefix %>_TEST_PROJECT=test123 <%= gem.cloud_env_prefix %>_TEST_KEYFILE=/path/to/keyfile.json rake acceptance"
74
74
  end
75
75
  require "<%= service.credentials_require %>"
76
76
  <%= service.credentials_name_full %>.env_vars.each do |path|
77
77
  ENV[path] = nil
78
78
  end
79
- ENV["<%= gem.env_prefix %>_PROJECT"] = project
80
- ENV["<%= gem.env_prefix %>_TEST_PROJECT"] = project
81
- ENV["<%= gem.env_prefix %>_KEYFILE_JSON"] = keyfile
79
+ ENV["<%= gem.cloud_env_prefix %>_PROJECT"] = project
80
+ ENV["<%= gem.cloud_env_prefix %>_TEST_PROJECT"] = project
81
+ ENV["<%= gem.cloud_env_prefix %>_KEYFILE_JSON"] = keyfile
82
82
 
83
83
  Rake::Task["acceptance:run"].invoke
84
84
  end
@@ -34,3 +34,7 @@ Metrics/PerceivedComplexity:
34
34
  Naming/FileName:
35
35
  Exclude:
36
36
  - "lib/<%= gem.name %>.rb"
37
+
38
+ Style/BlockDelimiters:
39
+ Exclude:
40
+ - "samples/**/acceptance/*.rb"
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.8.0
4
+ version: 0.10.1
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: 2021-06-16 00:00:00.000000000 Z
13
+ date: 2021-08-27 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.8.0
35
+ version: 0.10.1
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.8.0
42
+ version: 0.10.1
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: google-style
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -211,7 +211,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
211
211
  - !ruby/object:Gem::Version
212
212
  version: '0'
213
213
  requirements: []
214
- rubygems_version: 3.1.6
214
+ rubygems_version: 3.1.2
215
215
  signing_key:
216
216
  specification_version: 4
217
217
  summary: An API Client Generator for Ruby in Ruby!