class Gitlab::QA::Scenario::Test::Integration::SAML

def before_perform(release)

def before_perform(release)
  # no-op
end

def configure(gitlab, saml)

def configure(gitlab, saml)
  raise NotImplementedError
end

def perform(release)

def perform(release)
  release = Release.new(release)
  before_perform(release)
  Component::Gitlab.perform do |gitlab|
    gitlab.release = release
    gitlab.network = 'test'
    gitlab.name = gitlab_name
    Component::SAML.perform do |saml|
      saml.network = 'test'
      configure(gitlab, saml)
      saml.instance do
        gitlab.instance do
          puts "Running #{spec_suite} specs!"
          Component::Specs.perform do |specs|
            specs.suite = spec_suite
            specs.release = release
            specs.network = gitlab.network
            specs.args = [gitlab.address]
          end
        end
      end
    end
  end
end