# File lib/coveralls/configuration.rb, line 7
    def self.configuration
      config = {
        :environment => self.relevant_env,
        :git => git
      }
      yml = self.yaml_config
      if yml
        config[:configuration] = yml
        config[:repo_token] = yml['repo_token'] || yml['repo_secret_token']
      end
      if ENV['COVERALLS_REPO_TOKEN']
        config[:repo_token] = ENV['COVERALLS_REPO_TOKEN']
      end
      if ENV['COVERALLS_PARALLEL'] && ENV['COVERALLS_PARALLEL'] != "false"
        config[:parallel] = true
      end
      if ENV['COVERALLS_FLAG_NAME']
        config[:flag_name] = ENV['COVERALLS_FLAG_NAME']
      end
      if ENV['TRAVIS']
        set_service_params_for_travis(config, yml ? yml['service_name'] : nil)
      elsif ENV['CIRCLECI']
        set_service_params_for_circleci(config)
      elsif ENV['SEMAPHORE']
        set_service_params_for_semaphore(config)
      elsif ENV['JENKINS_URL'] || ENV['JENKINS_HOME']
        set_service_params_for_jenkins(config)
      elsif ENV['APPVEYOR']
        set_service_params_for_appveyor(config)
      elsif ENV['TDDIUM']
        set_service_params_for_tddium(config)
      elsif ENV['GITLAB_CI']
        set_service_params_for_gitlab(config)
      elsif ENV['COVERALLS_RUN_LOCALLY'] || Coveralls.testing
        set_service_params_for_coveralls_local(config)
      end

      # standardized env vars
      set_standard_service_params_for_generic_ci(config)

      if service_name = ENV['COVERALLS_SERVICE_NAME']
        config[:service_name] = service_name
      end

      config
    end