diff --git a/Rakefile b/Rakefile index a7caebd3d9..956411844f 100644 --- a/Rakefile +++ b/Rakefile @@ -82,7 +82,7 @@ task :live, :provider do |t, args| fail 'USAGE: rake live[]' end provider = args[:provider] - sh("export FOG_MOCK=false && bundle exec shindont tests/#{provider}") + sh("export FOG_MOCK=false PROVIDER=#{provider} && bundle exec shindont tests/#{provider}") end task :nuke do diff --git a/tests/helper.rb b/tests/helper.rb index e9d183aeb9..6aa99e9ebd 100644 --- a/tests/helper.rb +++ b/tests/helper.rb @@ -39,6 +39,12 @@ def array_differences(array_a, array_b) unavailable_providers = all_providers - available_providers +if !ENV['PROVIDER'].nil? && unavailable_providers.include?(ENV['PROVIDER']) + Formatador.display_line("[red]Requested provider #{ENV['PROVIDER']} is not available.[/]" + + "[red]Check if .fog file has correct configuration (see '#{Fog.credentials_path}')[/]") + exit(0) +end + for provider in unavailable_providers Formatador.display_line("[yellow]Skipping tests for [bold]#{provider}[/] [yellow]due to lacking credentials (add some to '#{Fog.credentials_path}' to run them)[/]") Thread.current[:tags] << ('-' << provider)