Module: Google::Cloud::Spanner::Admin::Database
- Defined in:
- lib/google/cloud/spanner/admin/database.rb,
lib/google/cloud/spanner/admin/database/v1.rb,
lib/google/cloud/spanner/admin/database/credentials.rb,
lib/google/cloud/spanner/admin/database/v1/credentials.rb,
lib/google/cloud/spanner/admin/database/v1/database_admin_client.rb
Overview
# Ruby Client for Cloud Spanner Database Admin API ([Alpha](github.com/GoogleCloudPlatform/google-cloud-ruby#versioning))
[Cloud Spanner Database Admin API][Product Documentation]:
- Product Documentation][
## Quick Start In order to use this library, you first need to go through the following steps:
-
[Select or create a Cloud Platform project.](console.cloud.google.com/project)
-
[Enable billing for your project.](cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
-
[Enable the Cloud Spanner Database Admin API.](console.cloud.google.com/apis/library/spanner.googleapis.com)
-
[Setup Authentication.](googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud/master/guides/authentication)
### Installation “‘ $ gem install google-cloud-spanner “`
### Next Steps
-
Read the [Cloud Spanner Database Admin API Product documentation][Product Documentation] to learn more about the product and see How-to Guides.
-
View this [repository’s main README](github.com/GoogleCloudPlatform/google-cloud-ruby/blob/master/README.md) to see the full list of Cloud APIs that we cover.
[Product Documentation]: cloud.google.com/spanner
## Enabling Logging
To enable logging for this library, set the logger for the underlying [gRPC](github.com/grpc/grpc/tree/master/src/ruby) library. The logger that you set may be a Ruby stdlib [‘Logger`](ruby-doc.org/stdlib-2.5.0/libdoc/logger/rdoc/Logger.html) as shown below, or a [`Google::Cloud::Logging::Logger`](googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-logging/latest/google/cloud/logging/logger) that will write logs to [Stackdriver Logging](cloud.google.com/logging/). See [grpc/logconfig.rb](github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb) and the gRPC [spec_helper.rb](github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
Configuring a Ruby stdlib logger:
“‘ruby require “logger”
module MyLogger
LOGGER = Logger.new $stderr, level: Logger::WARN
def logger
LOGGER
end
end
# Define a gRPC module-level logger method before grpc/logconfig.rb loads. module GRPC
extend MyLogger
end “‘
Defined Under Namespace
Modules: V1
Constant Summary collapse
- FILE_DIR =
rubocop:enable LineLength
File.realdirpath(Pathname.new(__FILE__).join("..").join("database"))
- AVAILABLE_VERSIONS =
Dir["#{FILE_DIR}/*"] .select { |file| File.directory?(file) } .select { |dir| Google::Gax::VERSION_MATCHER.match(File.basename(dir)) } .select { |dir| File.exist?(dir + ".rb") } .map { |dir| File.basename(dir) }
- Credentials =
Deprecated.
Use version-specific credentials classes
Google::Cloud::Spanner::Admin::Database::V1::Credentials
Class Method Summary collapse
-
.new(version: , credentials: , scopes: , client_config: , timeout: ) ⇒ Object
Cloud Spanner Database Admin API.
Class Method Details
.new(version: , credentials: , scopes: , client_config: , timeout: ) ⇒ Object
Cloud Spanner Database Admin API
The Cloud Spanner Database Admin API can be used to create, drop, and list databases. It also enables updating the schema of pre-existing databases.
131 132 133 134 135 136 137 138 139 140 141 142 143 |
# File 'lib/google/cloud/spanner/admin/database.rb', line 131 def self.new(*args, version: :v1, **kwargs) unless AVAILABLE_VERSIONS.include?(version.to_s.downcase) raise "The version: #{version} is not available. The available versions " \ "are: [#{AVAILABLE_VERSIONS.join(", ")}]" end require "#{FILE_DIR}/#{version.to_s.downcase}" version_module = Google::Cloud::Spanner::Admin::Database .constants .select {|sym| sym.to_s.downcase == version.to_s.downcase} .first Google::Cloud::Spanner::Admin::Database.const_get(version_module).new(*args, **kwargs) end |