google-cloud-billing 0.2.0 → 1.0.2

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: 5308627b4b3c0a88df8d248f7323c58461c9efc175df5e71fd87fcdc45ddd3b3
4
- data.tar.gz: 9821f6470e8766192bc5b2b69dc1d098d091b0bce2b6ba727842c74fcb0758b6
3
+ metadata.gz: 0be7b0b5603363b7e91cedf697bd74578f985b69c369848d19474b0deb79cdca
4
+ data.tar.gz: 1272d89453dfbe02613810d1507cf581443389f5eb9abc3c0b68a5663c24b717
5
5
  SHA512:
6
- metadata.gz: df9529f12b3ec24daa02b53e88c98a42ad0bc699eed73b01a8f0dca107ecc55fe58b528861a7e137eb026e204a286cb3a77b961bd979d29795e5a63701829294
7
- data.tar.gz: ce8233e54d88fdc423b4bca1286d2066a0848ca4f28343d41fb9553e208cc4f9b6c5e723013e0e78737704dab84f5076eabe335bde66ff3eee0d80652223f2e1
6
+ metadata.gz: c55349a868cd6c29c49c51520621cc29a0025f7075b3a5d379aac8c041086b26e4702e4b4c1bb66c39505f4a3ed0d179ccad85bcc7a903f9e3221177198ebd92
7
+ data.tar.gz: 5c052fc30567f425c069630db670863fb972adabc91c3d5f5551450e5ec5508b50eebf8fc0331bd41101e9e9bdba4d8648bae88ad83a82dd29719e15d1a27dc1
data/AUTHENTICATION.md CHANGED
@@ -64,7 +64,7 @@ containers where writing files is difficult or not encouraged.
64
64
 
65
65
  The environment variables that google-cloud-billing
66
66
  checks for credentials are configured on the service Credentials class (such as
67
- `Google::Cloud::Billing::V1::CloudBilling::Credentials`):
67
+ `::Google::Cloud::Billing::V1::CloudBilling::Credentials`):
68
68
 
69
69
  1. `BILLING_CREDENTIALS` - Path to JSON file, or JSON contents
70
70
  2. `BILLING_KEYFILE` - Path to JSON file, or JSON contents
data/README.md CHANGED
@@ -6,9 +6,10 @@ Allows developers to manage billing for their Google Cloud Platform projects pro
6
6
 
7
7
  Actual client classes for the various versions of this API are defined in
8
8
  _versioned_ client gems, with names of the form `google-cloud-billing-v*`.
9
- The gem `google-cloud-billing` is a convenience wrapper library that brings the
9
+ The gem `google-cloud-billing` is the main client library that brings the
10
10
  verisoned gems in as dependencies, and provides high-level methods for
11
- constructing clients.
11
+ constructing clients. More information on versioned clients can be found below
12
+ in the section titled *Which client should I use?*.
12
13
 
13
14
  View the [Client Library Documentation](https://googleapis.dev/ruby/google-cloud-billing/latest)
14
15
  for this library, google-cloud-billing, to see the convenience methods for
@@ -69,3 +70,61 @@ in security maintenance, and not end of life. Currently, this means Ruby 2.4
69
70
  and later. Older versions of Ruby _may_ still work, but are unsupported and not
70
71
  recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details
71
72
  about the Ruby support schedule.
73
+
74
+ ## Which client should I use?
75
+
76
+ Most modern Ruby client libraries for Google APIs come in two flavors: the main
77
+ client library with a name such as `google-cloud-billing`,
78
+ and lower-level _versioned_ client libraries with names such as
79
+ `google-cloud-billing-v1`.
80
+ _In most cases, you should install the main client._
81
+
82
+ ### What's the difference between the main client and a versioned client?
83
+
84
+ A _versioned client_ provides a basic set of data types and client classes for
85
+ a _single version_ of a specific service. (That is, for a service with multiple
86
+ versions, there might be a separate versioned client for each service version.)
87
+ Most versioned clients are written and maintained by a code generator.
88
+
89
+ The _main client_ is designed to provide you with the _recommended_ client
90
+ interfaces for the service. There will be only one main client for any given
91
+ service, even a service with multiple versions. The main client includes
92
+ factory methods for constructing the client objects we recommend for most
93
+ users. In some cases, those will be classes provided by an underlying versioned
94
+ client; in other cases, they will be handwritten higher-level client objects
95
+ with additional capabilities, convenience methods, or best practices built in.
96
+ Generally, the main client will default to a recommended service version,
97
+ although in some cases you can override this if you need to talk to a specific
98
+ service version.
99
+
100
+ ### Why would I want to use the main client?
101
+
102
+ We recommend that most users install the main client gem for a service. You can
103
+ identify this gem as the one _without_ a version in its name, e.g.
104
+ `google-cloud-billing`.
105
+ The main client is recommended because it will embody the best practices for
106
+ accessing the service, and may also provide more convenient interfaces or
107
+ tighter integration into frameworks and third-party libraries. In addition, the
108
+ documentation and samples published by Google will generally demonstrate use of
109
+ the main client.
110
+
111
+ ### Why would I want to use a versioned client?
112
+
113
+ You can use a versioned client if you are content with a possibly lower-level
114
+ class interface, you explicitly want to avoid features provided by the main
115
+ client, or you want to access a specific service version not be covered by the
116
+ main client. You can identify versioned client gems because the service version
117
+ is part of the name, e.g. `google-cloud-billing-v1`.
118
+
119
+ ### What about the google-apis-<name> clients?
120
+
121
+ Client library gems with names that begin with `google-apis-` are based on an
122
+ older code generation technology. They talk to a REST/JSON backend (whereas
123
+ most modern clients talk to a [gRPC](https://grpc.io/) backend) and they may
124
+ not offer the same performance, features, and ease of use provided by more
125
+ modern clients.
126
+
127
+ The `google-apis-` clients have wide coverage across Google services, so you
128
+ might need to use one if there is no modern client available for the service.
129
+ However, if a modern client is available, we generally recommend it over the
130
+ older `google-apis-` clients.
@@ -16,4 +16,4 @@
16
16
 
17
17
  # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
18
 
19
- require "google/cloud/billing"
19
+ require "google/cloud/billing" unless defined? Google::Cloud::Billing::VERSION
@@ -16,21 +16,29 @@
16
16
 
17
17
  # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
18
 
19
+ # Require this file early so that the version constant gets defined before
20
+ # requiring "google/cloud". This is because google-cloud-core will load the
21
+ # entrypoint (gem name) file, which in turn re-requires this file (hence
22
+ # causing a require cycle) unless the version constant is already defined.
19
23
  require "google/cloud/billing/version"
24
+
20
25
  require "googleauth"
21
26
  gem "google-cloud-core"
22
- require "google/cloud" unless defined? Google::Cloud.new
27
+ require "google/cloud" unless defined? ::Google::Cloud.new
23
28
  require "google/cloud/config"
24
29
 
25
30
  # Set the default configuration
26
- Google::Cloud.configure.add_config! :billing do |config|
27
- config.add_field! :credentials, nil, match: [String, Hash, Google::Auth::Credentials]
28
- config.add_field! :lib_name, nil, match: String
29
- config.add_field! :lib_version, nil, match: String
30
- config.add_field! :interceptors, nil, match: Array
31
- config.add_field! :timeout, nil, match: Numeric
32
- config.add_field! :metadata, nil, match: Hash
33
- config.add_field! :retry_policy, nil, match: [Hash, Proc]
31
+ ::Google::Cloud.configure.add_config! :billing do |config|
32
+ config.add_field! :endpoint, "cloudbilling.googleapis.com", match: ::String
33
+ config.add_field! :credentials, nil, match: [::String, ::Hash, ::Google::Auth::Credentials]
34
+ config.add_field! :scope, nil, match: [::Array, ::String]
35
+ config.add_field! :lib_name, nil, match: ::String
36
+ config.add_field! :lib_version, nil, match: ::String
37
+ config.add_field! :interceptors, nil, match: ::Array
38
+ config.add_field! :timeout, nil, match: ::Numeric
39
+ config.add_field! :metadata, nil, match: ::Hash
40
+ config.add_field! :retry_policy, nil, match: [::Hash, ::Proc]
41
+ config.add_field! :quota_project, nil, match: ::String
34
42
  end
35
43
 
36
44
  module Google
@@ -51,7 +59,7 @@ module Google
51
59
  #
52
60
  # Retrieves GCP Console billing accounts and associates them with projects.
53
61
  #
54
- # @param version [String, Symbol] The API version to connect to. Optional.
62
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
55
63
  # Defaults to `:v1`.
56
64
  # @return [CloudBilling::Client] A client object for the specified version.
57
65
  #
@@ -83,7 +91,7 @@ module Google
83
91
  # Provides pricing information and metadata on Google Cloud Platform services
84
92
  # and SKUs.
85
93
  #
86
- # @param version [String, Symbol] The API version to connect to. Optional.
94
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
87
95
  # Defaults to `:v1`.
88
96
  # @return [CloudCatalog::Client] A client object for the specified version.
89
97
  #
@@ -112,8 +120,8 @@ module Google
112
120
  # The library version as recorded in instrumentation and logging.
113
121
  # * `interceptors` (*type:* `Array<GRPC::ClientInterceptor>`) -
114
122
  # An array of interceptors that are run before calls are executed.
115
- # * `timeout` (*type:* `Integer`) -
116
- # Default timeout in milliseconds.
123
+ # * `timeout` (*type:* `Numeric`) -
124
+ # Default timeout in seconds.
117
125
  # * `metadata` (*type:* `Hash{Symbol=>String}`) -
118
126
  # Additional gRPC headers to be sent with the call.
119
127
  # * `retry_policy` (*type:* `Hash`) -
@@ -124,13 +132,16 @@ module Google
124
132
  # * `:retry_codes` (*type:* `Array<String>`) -
125
133
  # The error codes that should trigger a retry.
126
134
  #
127
- # @return [Google::Cloud::Config] The default configuration used by this library
135
+ # @return [::Google::Cloud::Config] The default configuration used by this library
128
136
  #
129
137
  def self.configure
130
- yield Google::Cloud.configure.billing if block_given?
138
+ yield ::Google::Cloud.configure.billing if block_given?
131
139
 
132
- Google::Cloud.configure.billing
140
+ ::Google::Cloud.configure.billing
133
141
  end
134
142
  end
135
143
  end
136
144
  end
145
+
146
+ helper_path = ::File.join __dir__, "billing", "helpers.rb"
147
+ require "google/cloud/billing/helpers" if ::File.file? helper_path
@@ -16,7 +16,7 @@
16
16
  module Google
17
17
  module Cloud
18
18
  module Billing
19
- VERSION = "0.2.0".freeze
19
+ VERSION = "1.0.2".freeze
20
20
  end
21
21
  end
22
22
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-billing
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-13 00:00:00.000000000 Z
11
+ date: 2021-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: google-cloud-core
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '1.5'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '1.5'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: google-cloud-billing-v1
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -39,19 +25,19 @@ dependencies:
39
25
  - !ruby/object:Gem::Version
40
26
  version: '0.1'
41
27
  - !ruby/object:Gem::Dependency
42
- name: autotest-suffix
28
+ name: google-cloud-core
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - "~>"
46
32
  - !ruby/object:Gem::Version
47
- version: '1.1'
48
- type: :development
33
+ version: '1.5'
34
+ type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
38
  - - "~>"
53
39
  - !ruby/object:Gem::Version
54
- version: '1.1'
40
+ version: '1.5'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: google-style
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -72,56 +58,56 @@ dependencies:
72
58
  requirements:
73
59
  - - "~>"
74
60
  - !ruby/object:Gem::Version
75
- version: '5.10'
61
+ version: '5.14'
76
62
  type: :development
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
66
  - - "~>"
81
67
  - !ruby/object:Gem::Version
82
- version: '5.10'
68
+ version: '5.14'
83
69
  - !ruby/object:Gem::Dependency
84
- name: minitest-autotest
70
+ name: minitest-focus
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: '1.0'
75
+ version: '1.1'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: '1.0'
82
+ version: '1.1'
97
83
  - !ruby/object:Gem::Dependency
98
- name: minitest-focus
84
+ name: minitest-rg
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
87
  - - "~>"
102
88
  - !ruby/object:Gem::Version
103
- version: '1.1'
89
+ version: '5.2'
104
90
  type: :development
105
91
  prerelease: false
106
92
  version_requirements: !ruby/object:Gem::Requirement
107
93
  requirements:
108
94
  - - "~>"
109
95
  - !ruby/object:Gem::Version
110
- version: '1.1'
96
+ version: '5.2'
111
97
  - !ruby/object:Gem::Dependency
112
- name: minitest-rg
98
+ name: rake
113
99
  requirement: !ruby/object:Gem::Requirement
114
100
  requirements:
115
- - - "~>"
101
+ - - ">="
116
102
  - !ruby/object:Gem::Version
117
- version: '5.2'
103
+ version: '12.0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
- - - "~>"
108
+ - - ">="
123
109
  - !ruby/object:Gem::Version
124
- version: '5.2'
110
+ version: '12.0'
125
111
  - !ruby/object:Gem::Dependency
126
112
  name: redcarpet
127
113
  requirement: !ruby/object:Gem::Requirement
@@ -197,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
197
183
  - !ruby/object:Gem::Version
198
184
  version: '0'
199
185
  requirements: []
200
- rubygems_version: 3.0.6
186
+ rubygems_version: 3.2.6
201
187
  signing_key:
202
188
  specification_version: 4
203
189
  summary: API Client library for the Billing API