Sha256: a6f516b32b37c7460abddc0b137bc3d8f1bc89baf01978f04f1cc6ae638b65d7

Contents?: true

Size: 999 Bytes

Versions: 5

Compression:

Stored size: 999 Bytes

Contents

module Souls
  module Gcloud
    module Sql
      class << self
        def create_instance(instance_name: "", root_pass: "Postgre123!", zone: "asia-northeast1-b")
          instance_name = "#{Souls.configuration.app}-db" if instance_name.blank?
          system(
            "gcloud sql instances create #{instance_name} \
              --database-version=POSTGRES_13 --cpu=2 --memory=7680MB --zone=#{zone} \
              --root-password='#{root_pass}' --database-flags cloudsql.iam_authentication=on"
          )
        end

        def pathch_instance(instance_name: "")
          app_name = Souls.configuration.app
          instance_name = "#{Souls.configuration.app}-db" if instance_name.blank?
          project_id = Souls.configuration.project_id
          system(
            "gcloud beta sql instances patch #{instance_name} \
              --project=#{project_id} \
              --network=#{app_name} \
              --no-assign-ip"
          )
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
souls-0.41.3 lib/souls/cli/gcloud/sql/index.rb
souls-0.41.2 lib/souls/cli/gcloud/sql/index.rb
souls-0.41.1 lib/souls/cli/gcloud/sql/index.rb
souls-0.41.0 lib/souls/cli/gcloud/sql/index.rb
souls-0.40.3 lib/souls/cli/gcloud/sql/index.rb