Bug #6238

hammer lifecycle-environment list with a not created --name is not working

Added by Martin Bacovsky over 3 years ago. Updated over 3 years ago.

Status:Closed
Priority:Normal
Assigned To:Martin Bacovsky
Category:Hammer core
Target version:Foreman - Sprint 25
Difficulty: Bugzilla link:1109313
Found in release: Pull request:
Story points-
Velocity based estimate-

Description

Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1109313
Description of problem:
Hammer is raising an exception when trying to list passing a --name of a lifecycle environment that was not created or have been deleted. The error is not raised when passing a --name of a created lifecycle environment.

Version-Release number of selected component (if applicable):
  1. hammer --version
    hammer (0.1.1) * hammer_cli_foreman (0.1.1) * hammer_cli_katello (0.0.4)

How reproducible:
Aways

Steps to Reproduce:
1. LANG=en_US hammer -v -u admin -p changeme --output csv lifecycle-environment list --name=<not_created_name> --organization-id=<org_id>

Actual results:
Error "Error: undefined method `map' for nil:NilClass" is raised

Expected results:
Return a list with no result

Additional info:
  1. LANG=en_US hammer -v -d -u admin -p changeme --output csv lifecycle-environment list --name='q2h09tnk' --organization-id='224'
    [ INFO 2014-06-13 10:20:07 Init] Initialization of Hammer CLI (0.1.1) has started...
    [DEBUG 2014-06-13 10:20:07 Init] Running at ruby 1.8.7-p352
    [ INFO 2014-06-13 10:20:07 Init] Configuration from the file /etc/hammer/cli_config.yml has been loaded
    [ INFO 2014-06-13 10:20:07 Init] Configuration from the file /etc/hammer/cli.modules.d/foreman.yml has been loaded
    [ INFO 2014-06-13 10:20:07 Init] Configuration from the file /etc/hammer/cli.modules.d/katello.yml has been loaded
    [DEBUG 2014-06-13 10:20:07 Connection] Registered: foreman
    [DEBUG 2014-06-13 10:20:07 API] Global headers: {
    "Accept-Language" => "en",
    :accept => "application/json;version=2",
    :content_type => "application/json"
    }
    [ INFO 2014-06-13 10:20:07 API] GET /apidoc/apipie_checksum
    [DEBUG 2014-06-13 10:20:07 API] Params: {}
    [DEBUG 2014-06-13 10:20:07 API] Headers: {
    :accept => "application/json",
    :params => {}
    }
    [DEBUG 2014-06-13 10:20:07 API] Response {
    "checksum" => "c1ab9a17632a976fd006a97155bdfbbe"
    }
    [ INFO 2014-06-13 10:20:08 Modules] Extension module hammer_cli_foreman (0.1.1) loaded
    [ INFO 2014-06-13 10:20:08 HammerCLI::MainCommand] subcommand organization (HammerCLIForeman::Organization) was removed.
    [ INFO 2014-06-13 10:20:08 HammerCLI::MainCommand] subcommand organization (HammerCLIKatello::Organization) was created.
    [ INFO 2014-06-13 10:20:09 Modules] Extension module hammer_cli_katello (0.0.4) loaded
    [DEBUG 2014-06-13 10:20:09 Init] Using locale 'en'
    [DEBUG 2014-06-13 10:20:09 Init] 'mo' files for locale domain 'hammer-cli' loaded from '/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/locale'
    [DEBUG 2014-06-13 10:20:09 Init] 'mo' files for locale domain 'hammer-cli-foreman' loaded from '/usr/lib/ruby/gems/1.8/gems/hammer_cli_foreman-0.1.1/locale'
    [DEBUG 2014-06-13 10:20:09 Init] 'mo' files for locale domain 'hammer-cli-katello' loaded from '/usr/lib/ruby/gems/1.8/gems/hammer_cli_katello-0.0.4/locale'
    [ INFO 2014-06-13 10:20:09 HammerCLI::MainCommand] Called with options: {"option_verbose"=>true, "option_username"=>"admin", "option_password"=>"***", "option_debug"=>true, "option_output"=>"csv"}
    [ INFO 2014-06-13 10:20:09 HammerCLIKatello::LifecycleEnvironmentCommand] Called with options: {}
    [ INFO 2014-06-13 10:20:09 HammerCLIKatello::LifecycleEnvironmentCommand::ListCommand] Called with options: {"option_name"=>"q2h09tnk", "option_organization_id"=>"224"}
    [ INFO 2014-06-13 10:20:09 API] GET /apidoc/apipie_checksum
    [DEBUG 2014-06-13 10:20:09 API] Params: {}
    [DEBUG 2014-06-13 10:20:09 API] Headers: {
    :accept => "application/json",
    :params => {}
    }
    [DEBUG 2014-06-13 10:20:09 API] Response {
    "checksum" => "c1ab9a17632a976fd006a97155bdfbbe"
    }
    [ INFO 2014-06-13 10:20:09 API] GET /katello/api/organizations/224/environments
    [DEBUG 2014-06-13 10:20:09 API] Params: {
    "name" => "q2h09tnk"
    }
    [DEBUG 2014-06-13 10:20:09 API] Headers: {
    :params => {
    "name" => "q2h09tnk"
    }
    }
    [DEBUG 2014-06-13 10:20:09 API] Response {
    "sort" => {
    "order" => nil,
    "by" => nil
    },
    "per_page" => 20,
    "results" => [],
    "total" => 0,
    "page" => 1,
    "search" => nil,
    "subtotal" => 0
    }
    [ERROR 2014-06-13 10:20:09 Exception] Error: undefined method `map' for nil:NilClass
    Error: undefined method `map' for nil:NilClass
    [ERROR 2014-06-13 10:20:09 Exception]

NoMethodError (undefined method `map' for nil:NilClass):
/usr/lib/ruby/gems/1.8/gems/fastercsv-1.5.4/lib/faster_csv.rb:1490:in `<<'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/output/adapter/csv.rb:155:in `print_collection'
/usr/lib/ruby/gems/1.8/gems/fastercsv-1.5.4/lib/faster_csv.rb:1077:in `generate'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/output/adapter/csv.rb:194:in `generate'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/output/adapter/csv.rb:154:in `print_collection'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/output/output.rb:27:in `print_collection'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/./apipie/../abstract.rb:166:in `print_collection'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/./apipie/command.rb:57:in `print_data'
/usr/lib/ruby/gems/1.8/gems/hammer_cli_foreman-0.1.1/lib/hammer_cli_foreman/commands.rb:234:in `retrieve_and_print'
/usr/lib/ruby/gems/1.8/gems/hammer_cli_foreman-0.1.1/lib/hammer_cli_foreman/commands.rb:207:in `execute'
/usr/lib/ruby/gems/1.8/gems/clamp-0.6.2/lib/clamp/command.rb:67:in `run'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/./apipie/../abstract.rb:22:in `run'
/usr/lib/ruby/gems/1.8/gems/clamp-0.6.2/lib/clamp/subcommand/execution.rb:11:in `execute'
/usr/lib/ruby/gems/1.8/gems/clamp-0.6.2/lib/clamp/command.rb:67:in `run'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/./apipie/../abstract.rb:22:in `run'
/usr/lib/ruby/gems/1.8/gems/clamp-0.6.2/lib/clamp/subcommand/execution.rb:11:in `execute'
/usr/lib/ruby/gems/1.8/gems/clamp-0.6.2/lib/clamp/command.rb:67:in `run'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/lib/hammer_cli/./apipie/../abstract.rb:22:in `run'
/usr/lib/ruby/gems/1.8/gems/clamp-0.6.2/lib/clamp/command.rb:125:in `run'
/usr/lib/ruby/gems/1.8/gems/hammer_cli-0.1.1/bin/hammer:100
/usr/bin/hammer:19:in `load'
/usr/bin/hammer:19

Associated revisions

Revision fcc7a427
Added by Martin Bačovský over 3 years ago

Fixes #6238 - empty list in csv adapter does not work

Revision 81ebb749
Added by mbacovsky over 3 years ago

Merge pull request #119 from mbacovsky/6238_csv_no_data_fail

Fixes #6238 - empty list in csv adapter does not work

History

#1 Updated by Martin Bacovsky over 3 years ago

  • Category set to Hammer core
  • Status changed from New to Ready For Testing
  • Target version set to Sprint 25

#2 Updated by Anonymous over 3 years ago

  • Status changed from Ready For Testing to Closed
  • % Done changed from 0 to 100

Also available in: Atom PDF