Sha256: 3d1282a9b675f58ef8dafc900928da0e29982a5d0c17f402904f9d167a7060b1

Contents?: true

Size: 1.43 KB

Versions: 45

Compression:

Stored size: 1.43 KB

Contents

require_relative "../ddl_statements/latest_verification_ids_for_consumer_and_provider"

Sequel.migration do
  up do
    # The latest verification id for each consumer/provider
    create_view(:latest_verification_ids_for_consumer_and_provider,
      LATEST_VERIFICATION_IDS_FOR_CONSUMER_AND_PROVIDER_V1)

    # The most recent verification for each consumer/consumer version tag/provider
    latest_verifications = from(:verifications)
      .select(
        Sequel[:lv][:consumer_id],
        Sequel[:lv][:provider_id],
        Sequel[:pv][:sha].as(:pact_version_sha),
        Sequel[:prv][:number].as(:provider_version_number),
        Sequel[:prv][:order].as(:provider_version_order),
        )
      .select_append{ verifications.* }
      .join(:latest_verification_ids_for_consumer_and_provider,
        {
          Sequel[:verifications][:id] => Sequel[:lv][:latest_verification_id],
        }, { table_alias: :lv })
      .join(:versions,
        {
          Sequel[:verifications][:provider_version_id] => Sequel[:prv][:id]
        }, { table_alias: :prv })
      .join(:pact_versions,
        {
          Sequel[:verifications][:pact_version_id] => Sequel[:pv][:id]
        }, { table_alias: :pv })

    create_or_replace_view(:latest_verifications_for_consumer_and_provider, latest_verifications)
  end

  down do
    drop_view(:latest_verifications_for_consumer_and_provider)
    drop_view(:latest_verification_ids_for_consumer_and_provider)
  end
end

Version data entries

45 entries across 45 versions & 1 rubygems

Version Path
pact_broker-2.113.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.112.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.111.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.109.1 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.109.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.108.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.107.1 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.107.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.107.0.beta.1 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.106.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.105.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.104.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.103.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.102.2 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.102.1 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.102.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.101.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.100.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.99.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb
pact_broker-2.98.0 db/migrations/20180524_create_latest_verifications_for_consumer_and_provider.rb