Sha256: a6dc3947492e1a25111a230169115e814c33e6740448e1f41febab8384dc8896
Contents?: true
Size: 782 Bytes
Versions: 1
Compression:
Stored size: 782 Bytes
Contents
module Caco::Postgres class ExtensionCreate < Trailblazer::Operation step Subprocess(Caco::Postgres::Sql), input: ->(_ctx, extension:, **) {{ sql: "select extname from pg_extension where extname='#{extension}';", }}, id: :sql_find_extension step ->(_ctx, output:, extension:, **) { output.match?(/^\s#{extension}$/) }, Output(:success) => End(:success), Output(:failure) => Track(:success), id: :verify_extension_exists step Subprocess(Class.new(Caco::Postgres::Sql)), input: ->(_ctx, extension:, **) {{ sql: "create extension #{extension};", }}, id: :create_extension step ->(ctx, **) { ctx[:created] = ctx[:changed] = true }, id: :mark_created end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
caco-0.1.0 | lib/caco/postgres/extension_create.rb |