hammer_cli_katello 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/lib/hammer_cli_katello/lifecycle_environment.rb +4 -5
- data/lib/hammer_cli_katello/organization.rb +2 -6
- data/lib/hammer_cli_katello/ping.rb +2 -6
- data/lib/hammer_cli_katello/product.rb +117 -0
- data/lib/hammer_cli_katello/provider.rb +2 -35
- data/lib/hammer_cli_katello/resource.rb +0 -17
- data/lib/hammer_cli_katello/subscription.rb +47 -0
- data/lib/hammer_cli_katello/system.rb +60 -60
- data/lib/hammer_cli_katello/system_group.rb +3 -9
- data/lib/hammer_cli_katello/version.rb +1 -1
- data/lib/hammer_cli_katello.rb +7 -1
- metadata +127 -11
    
        checksums.yaml
    CHANGED
    
    | @@ -1,15 +1,15 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            !binary "U0hBMQ==":
         | 
| 3 3 | 
             
              metadata.gz: !binary |-
         | 
| 4 | 
            -
                 | 
| 4 | 
            +
                Yjk4ZTUyN2E0Y2I3MTMyOWNhYmY2MTE1ZGQzOTFiY2YwNjNlZmU1OQ==
         | 
| 5 5 | 
             
              data.tar.gz: !binary |-
         | 
| 6 | 
            -
                 | 
| 6 | 
            +
                YTAzZjUzNGY0ZDFjYmQ5OTFjOWRhNTNhNjc3NWM3ZjVlNzA2Yjg2OQ==
         | 
| 7 7 | 
             
            SHA512:
         | 
| 8 8 | 
             
              metadata.gz: !binary |-
         | 
| 9 | 
            -
                 | 
| 10 | 
            -
                 | 
| 11 | 
            -
                 | 
| 9 | 
            +
                MTYwZDIyMGMxMTc0NGM0NzRjODFiOWRmYzhjYjBjNzBjNjQ0N2ExZDljNjM0
         | 
| 10 | 
            +
                Y2I2MzNhYmRiMTc4OTdjY2NmMjQ4M2ExYzMwMzVmYjI2NmJmYTE3NDM0YTk0
         | 
| 11 | 
            +
                ZjEzNWU5MjBiODk1ZjFhNmZjMDA0ZTU0MjI2ZGY3MGI1ZTA3Yzg=
         | 
| 12 12 | 
             
              data.tar.gz: !binary |-
         | 
| 13 | 
            -
                 | 
| 14 | 
            -
                 | 
| 15 | 
            -
                 | 
| 13 | 
            +
                ZTVlYTUyZDVmNjFlNTRjYzkwYzI2NzZjZGQ5NDJjMTkzZjNlMjAxMDBiOWMz
         | 
| 14 | 
            +
                YjYzZDZmMjFkNjczZTUwYzMwZjUzMGNkOThiOGVjYjRjNDkwNzdkZmZmMDUw
         | 
| 15 | 
            +
                NmU3OWQ3MTY5MzlkZWY2MTJhMjQ4MDg0NzliOTM1MGFiNTI3ZWM=
         | 
| @@ -1,7 +1,3 @@ | |
| 1 | 
            -
            require 'hammer_cli'
         | 
| 2 | 
            -
            require 'hammer_cli_foreman'
         | 
| 3 | 
            -
            require 'hammer_cli_foreman/commands'
         | 
| 4 | 
            -
             | 
| 5 1 | 
             
            module HammerCLIKatello
         | 
| 6 2 |  | 
| 7 3 | 
             
              class LifecycleEnvironmentCommand < HammerCLI::AbstractCommand
         | 
| @@ -78,5 +74,8 @@ module HammerCLIKatello | |
| 78 74 | 
             
                autoload_subcommands
         | 
| 79 75 | 
             
              end
         | 
| 80 76 |  | 
| 81 | 
            -
               | 
| 77 | 
            +
              cmd_name = "lifecycle-environment"
         | 
| 78 | 
            +
              cmd_desc = "manipulate lifecycle_environments on the server"
         | 
| 79 | 
            +
              cmd_cls  = HammerCLIKatello::LifecycleEnvironmentCommand
         | 
| 80 | 
            +
              HammerCLI::MainCommand.subcommand(cmd_name, cmd_desc, cmd_cls)
         | 
| 82 81 | 
             
            end
         | 
| @@ -1,7 +1,3 @@ | |
| 1 | 
            -
            require 'hammer_cli'
         | 
| 2 | 
            -
            require 'katello_api'
         | 
| 3 | 
            -
            require 'hammer_cli_foreman/commands'
         | 
| 4 | 
            -
             | 
| 5 1 | 
             
            module HammerCLIKatello
         | 
| 6 2 |  | 
| 7 3 | 
             
              class Organization < HammerCLIForeman::Organization
         | 
| @@ -55,10 +51,10 @@ module HammerCLIKatello | |
| 55 51 | 
             
                  apipie_options
         | 
| 56 52 | 
             
                end
         | 
| 57 53 |  | 
| 58 | 
            -
             | 
| 59 54 | 
             
                autoload_subcommands
         | 
| 60 55 | 
             
              end
         | 
| 61 56 |  | 
| 62 57 | 
             
            end
         | 
| 63 58 |  | 
| 64 | 
            -
            HammerCLI::MainCommand.subcommand! 'organization', "Manipulate organizations", | 
| 59 | 
            +
            HammerCLI::MainCommand.subcommand! 'organization', "Manipulate organizations",
         | 
| 60 | 
            +
                                               HammerCLIKatello::Organization
         | 
| @@ -1,14 +1,9 @@ | |
| 1 | 
            -
            require 'hammer_cli'
         | 
| 2 | 
            -
            require 'katello_api'
         | 
| 3 | 
            -
            require 'hammer_cli_foreman/commands'
         | 
| 4 | 
            -
             | 
| 5 1 | 
             
            module HammerCLIKatello
         | 
| 6 2 |  | 
| 7 3 | 
             
              class PingCommand < HammerCLI::Apipie::ReadCommand
         | 
| 8 4 |  | 
| 9 5 | 
             
                resource KatelloApi::Resources::Ping, :index
         | 
| 10 6 |  | 
| 11 | 
            -
             | 
| 12 7 | 
             
                output do
         | 
| 13 8 | 
             
                  from "services" do
         | 
| 14 9 |  | 
| @@ -65,6 +60,7 @@ module HammerCLIKatello | |
| 65 60 |  | 
| 66 61 | 
             
              end # class PingCommand
         | 
| 67 62 |  | 
| 68 | 
            -
              HammerCLI::MainCommand.subcommand("ping", "get the status of the server", | 
| 63 | 
            +
              HammerCLI::MainCommand.subcommand("ping", "get the status of the server",
         | 
| 64 | 
            +
                                                HammerCLIKatello::PingCommand)
         | 
| 69 65 |  | 
| 70 66 | 
             
            end # module HammerCLIKatello
         | 
| @@ -0,0 +1,117 @@ | |
| 1 | 
            +
            module HammerCLIKatello
         | 
| 2 | 
            +
             | 
| 3 | 
            +
              class Product < HammerCLI::Apipie::Command
         | 
| 4 | 
            +
                resource KatelloApi::Resources::Product
         | 
| 5 | 
            +
             | 
| 6 | 
            +
                class ListCommand < HammerCLIForeman::ListCommand
         | 
| 7 | 
            +
                  output do
         | 
| 8 | 
            +
                    field :id, "Product ID"
         | 
| 9 | 
            +
                    field :name, "Name"
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                    from :provider do
         | 
| 12 | 
            +
                      field :name, "Provider"
         | 
| 13 | 
            +
                    end
         | 
| 14 | 
            +
             | 
| 15 | 
            +
                    from :organization do
         | 
| 16 | 
            +
                      field :name, "Organization"
         | 
| 17 | 
            +
                    end
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                    field :repository_count, "Repositories"
         | 
| 20 | 
            +
                  end
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                  apipie_options
         | 
| 23 | 
            +
                end
         | 
| 24 | 
            +
             | 
| 25 | 
            +
                class CreateCommand < HammerCLIForeman::CreateCommand
         | 
| 26 | 
            +
                  success_message "Product created"
         | 
| 27 | 
            +
                  failure_message "Could not create the product"
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                  apipie_options
         | 
| 30 | 
            +
                end
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                class InfoCommand < HammerCLIForeman::InfoCommand
         | 
| 33 | 
            +
                  output do
         | 
| 34 | 
            +
                    field :id, "Product ID"
         | 
| 35 | 
            +
                    field :name, "Name"
         | 
| 36 | 
            +
                    field :label, "Label"
         | 
| 37 | 
            +
                    field :description, "Description"
         | 
| 38 | 
            +
             | 
| 39 | 
            +
                    field :sync_plan_id, "Sync Plan ID"
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                    from :gpg_key do
         | 
| 42 | 
            +
                      field :id, "GPG Key ID"
         | 
| 43 | 
            +
                      field :name, "GPG Key"
         | 
| 44 | 
            +
                    end
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                    from :provider do
         | 
| 47 | 
            +
                      field :name, "Provider"
         | 
| 48 | 
            +
                    end
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                    from :organization do
         | 
| 51 | 
            +
                      field :name, "Organization"
         | 
| 52 | 
            +
                    end
         | 
| 53 | 
            +
             | 
| 54 | 
            +
                    field :readonly, "Readonly"
         | 
| 55 | 
            +
             | 
| 56 | 
            +
                    from :permissions do
         | 
| 57 | 
            +
                      field :deletable, "Deletable"
         | 
| 58 | 
            +
                    end
         | 
| 59 | 
            +
                  end
         | 
| 60 | 
            +
             | 
| 61 | 
            +
                  apipie_options
         | 
| 62 | 
            +
                end
         | 
| 63 | 
            +
             | 
| 64 | 
            +
                class UpdateCommand < HammerCLIForeman::UpdateCommand
         | 
| 65 | 
            +
                  success_message "Product updated"
         | 
| 66 | 
            +
                  failure_message "Could not update the product"
         | 
| 67 | 
            +
             | 
| 68 | 
            +
                  apipie_options
         | 
| 69 | 
            +
                end
         | 
| 70 | 
            +
             | 
| 71 | 
            +
                class DeleteCommand < HammerCLIForeman::DeleteCommand
         | 
| 72 | 
            +
                  success_message "Product destroyed"
         | 
| 73 | 
            +
                  failure_message "Could not destroy the product"
         | 
| 74 | 
            +
             | 
| 75 | 
            +
                  apipie_options
         | 
| 76 | 
            +
                end
         | 
| 77 | 
            +
             | 
| 78 | 
            +
                class SetSyncPlanCommand < HammerCLIForeman::UpdateCommand
         | 
| 79 | 
            +
                  identifiers :id, :sync_plan_id
         | 
| 80 | 
            +
             | 
| 81 | 
            +
                  desc "Assign sync plan to product."
         | 
| 82 | 
            +
                  command_name "set_sync_plan"
         | 
| 83 | 
            +
             | 
| 84 | 
            +
                  success_message "Synchronization plan assigned."
         | 
| 85 | 
            +
                  failure_message "Could not assign synchronization plan."
         | 
| 86 | 
            +
             | 
| 87 | 
            +
                  resource KatelloApi::Resources::Product, "update"
         | 
| 88 | 
            +
             | 
| 89 | 
            +
                  apipie_options :without => declared_identifiers.keys +
         | 
| 90 | 
            +
                    [:name, :label, :provider_id, :description, :gpg_key_id]
         | 
| 91 | 
            +
                  option "--sync_plan_id", "SYNC_PLAN_ID", "plan numeric identifier",
         | 
| 92 | 
            +
                         :attribute_name => :option_sync_plan_id, :required => true
         | 
| 93 | 
            +
                end
         | 
| 94 | 
            +
             | 
| 95 | 
            +
                class RemoveSyncPlanCommand < HammerCLIForeman::UpdateCommand
         | 
| 96 | 
            +
                  identifiers :id, :sync_plan_id
         | 
| 97 | 
            +
             | 
| 98 | 
            +
                  desc "Delete assignment sync plan and product."
         | 
| 99 | 
            +
                  command_name "remove_sync_plan"
         | 
| 100 | 
            +
             | 
| 101 | 
            +
                  success_message "Synchronization plan removed."
         | 
| 102 | 
            +
                  failure_message "Could not remove synchronization plan."
         | 
| 103 | 
            +
             | 
| 104 | 
            +
                  resource KatelloApi::Resources::Product, "update"
         | 
| 105 | 
            +
             | 
| 106 | 
            +
                  apipie_options :without => [:name, :label, :provider_id, :description,
         | 
| 107 | 
            +
                                              :gpg_key_id, :sync_plan_id]
         | 
| 108 | 
            +
                  option "--sync_plan_id", "SYNC_PLAN_ID", "plan numeric identifier",
         | 
| 109 | 
            +
                         :attribute_name => :option_sync_plan_id, :required => true
         | 
| 110 | 
            +
                end
         | 
| 111 | 
            +
             | 
| 112 | 
            +
                autoload_subcommands
         | 
| 113 | 
            +
              end
         | 
| 114 | 
            +
            end
         | 
| 115 | 
            +
             | 
| 116 | 
            +
            HammerCLI::MainCommand.subcommand "product", "Manipulate products.",
         | 
| 117 | 
            +
                                              HammerCLIKatello::Product
         | 
| @@ -1,9 +1,4 @@ | |
| 1 | 
            -
            require 'hammer_cli'
         | 
| 2 | 
            -
            require 'hammer_cli_foreman'
         | 
| 3 | 
            -
            require 'hammer_cli_foreman/commands'
         | 
| 4 | 
            -
             | 
| 5 1 | 
             
            module HammerCLIKatello
         | 
| 6 | 
            -
             | 
| 7 2 | 
             
              class Provider < HammerCLI::Apipie::Command
         | 
| 8 3 | 
             
                resource KatelloApi::Resources::Provider
         | 
| 9 4 |  | 
| @@ -19,7 +14,6 @@ module HammerCLIKatello | |
| 19 14 | 
             
                  apipie_options
         | 
| 20 15 | 
             
                end
         | 
| 21 16 |  | 
| 22 | 
            -
             | 
| 23 17 | 
             
                class InfoCommand < HammerCLIForeman::InfoCommand
         | 
| 24 18 | 
             
                  output ListCommand.output_definition do
         | 
| 25 19 | 
             
                    field :created_at, "Created at", Fields::Date
         | 
| @@ -27,7 +21,6 @@ module HammerCLIKatello | |
| 27 21 | 
             
                  end
         | 
| 28 22 | 
             
                end
         | 
| 29 23 |  | 
| 30 | 
            -
             | 
| 31 24 | 
             
                class CreateCommand < HammerCLIForeman::CreateCommand
         | 
| 32 25 | 
             
                  success_message "Provider created"
         | 
| 33 26 | 
             
                  failure_message "Could not create the provider"
         | 
| @@ -35,13 +28,11 @@ module HammerCLIKatello | |
| 35 28 | 
             
                  apipie_options
         | 
| 36 29 | 
             
                end
         | 
| 37 30 |  | 
| 38 | 
            -
             | 
| 39 31 | 
             
                class DeleteCommand < HammerCLIForeman::DeleteCommand
         | 
| 40 32 | 
             
                  success_message "Provider deleted"
         | 
| 41 33 | 
             
                  failure_message "Could not delete the provider"
         | 
| 42 34 | 
             
                end
         | 
| 43 35 |  | 
| 44 | 
            -
             | 
| 45 36 | 
             
                class UpdateCommand < HammerCLIForeman::UpdateCommand
         | 
| 46 37 | 
             
                  success_message "Provider updated"
         | 
| 47 38 | 
             
                  failure_message "Could not update the provider"
         | 
| @@ -49,29 +40,6 @@ module HammerCLIKatello | |
| 49 40 | 
             
                  apipie_options
         | 
| 50 41 | 
             
                end
         | 
| 51 42 |  | 
| 52 | 
            -
             | 
| 53 | 
            -
                class UploadManifestCommand < HammerCLIForeman::WriteCommand
         | 
| 54 | 
            -
                  class FileNormalizer
         | 
| 55 | 
            -
                    class File < HammerCLI::Options::Normalizers::AbstractNormalizer
         | 
| 56 | 
            -
                      def format(path)
         | 
| 57 | 
            -
                        ::File.read(::File.expand_path(path), :encoding => 'ASCII-8BIT')
         | 
| 58 | 
            -
                      end
         | 
| 59 | 
            -
                    end
         | 
| 60 | 
            -
                  end
         | 
| 61 | 
            -
             | 
| 62 | 
            -
                  action "import_manifest"
         | 
| 63 | 
            -
                  command_name "import_manifest"
         | 
| 64 | 
            -
                          
         | 
| 65 | 
            -
                  option "--file", "MANIFEST", "Path to a file that contains the manifest", :attribute_name => :import, :required => true,
         | 
| 66 | 
            -
                    :format => FileNormalizer.new
         | 
| 67 | 
            -
             | 
| 68 | 
            -
                  success_message "Manifest is being uploaded"
         | 
| 69 | 
            -
                  failure_message "Manifest upload failed"
         | 
| 70 | 
            -
             | 
| 71 | 
            -
                  apipie_options :without => [:import]
         | 
| 72 | 
            -
                end
         | 
| 73 | 
            -
             | 
| 74 | 
            -
             | 
| 75 43 | 
             
                class RefreshManifestCommand < HammerCLIForeman::WriteCommand
         | 
| 76 44 | 
             
                  action "refresh_manifest"
         | 
| 77 45 | 
             
                  command_name "refresh_manifest"
         | 
| @@ -82,7 +50,6 @@ module HammerCLIKatello | |
| 82 50 | 
             
                  apipie_options
         | 
| 83 51 | 
             
                end
         | 
| 84 52 |  | 
| 85 | 
            -
             | 
| 86 53 | 
             
                class DeleteManifestCommand < HammerCLIForeman::DeleteCommand
         | 
| 87 54 | 
             
                  action "delete_manifest"
         | 
| 88 55 | 
             
                  command_name "delete_manifest"
         | 
| @@ -95,7 +62,7 @@ module HammerCLIKatello | |
| 95 62 |  | 
| 96 63 | 
             
                autoload_subcommands
         | 
| 97 64 | 
             
              end
         | 
| 98 | 
            -
             | 
| 99 65 | 
             
            end
         | 
| 100 66 |  | 
| 101 | 
            -
            HammerCLI::MainCommand.subcommand 'provider', "Manipulate providers", | 
| 67 | 
            +
            HammerCLI::MainCommand.subcommand 'provider', "Manipulate providers",
         | 
| 68 | 
            +
                                              HammerCLIKatello::Provider
         | 
| @@ -1,17 +0,0 @@ | |
| 1 | 
            -
            require 'hammer_cli'
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            module HammerCLIKatello
         | 
| 4 | 
            -
             | 
| 5 | 
            -
              module Resource
         | 
| 6 | 
            -
             | 
| 7 | 
            -
                def resource_config
         | 
| 8 | 
            -
                  config = {}
         | 
| 9 | 
            -
                  config[:base_url] = HammerCLI::Settings.get(:katello, :host)
         | 
| 10 | 
            -
                  config[:username] = HammerCLI::Settings.get(:katello, :username)
         | 
| 11 | 
            -
                  config[:password] = HammerCLI::Settings.get(:katello, :password)
         | 
| 12 | 
            -
                  config
         | 
| 13 | 
            -
                end
         | 
| 14 | 
            -
             | 
| 15 | 
            -
              end
         | 
| 16 | 
            -
             | 
| 17 | 
            -
            end
         | 
| @@ -0,0 +1,47 @@ | |
| 1 | 
            +
            require 'hammer_cli'
         | 
| 2 | 
            +
            require 'katello_api'
         | 
| 3 | 
            +
            require 'hammer_cli_foreman'
         | 
| 4 | 
            +
            require 'hammer_cli_foreman/commands'
         | 
| 5 | 
            +
             | 
| 6 | 
            +
            module HammerCLIKatello
         | 
| 7 | 
            +
             | 
| 8 | 
            +
              class SubscriptionCommand < HammerCLI::AbstractCommand
         | 
| 9 | 
            +
                class ListCommand < HammerCLIForeman::ListCommand
         | 
| 10 | 
            +
                  resource KatelloApi::Resources::Subscription, 'index'
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                  output do
         | 
| 13 | 
            +
                    field :id, "ID"
         | 
| 14 | 
            +
                  end
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                  apipie_options
         | 
| 17 | 
            +
                end
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                class UploadCommand < HammerCLIForeman::WriteCommand
         | 
| 20 | 
            +
                  resource KatelloApi::Resources::Subscription, 'upload'
         | 
| 21 | 
            +
                  command_name "upload"
         | 
| 22 | 
            +
             | 
| 23 | 
            +
                  class BinaryFile < HammerCLI::Options::Normalizers::File
         | 
| 24 | 
            +
                    def format(path)
         | 
| 25 | 
            +
                      ::File.new(::File.expand_path(path), 'rb')
         | 
| 26 | 
            +
                    end
         | 
| 27 | 
            +
                  end
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                  def request_headers
         | 
| 30 | 
            +
                    {:content_type => 'multipart/form-data', :multipart => true}
         | 
| 31 | 
            +
                  end
         | 
| 32 | 
            +
             | 
| 33 | 
            +
                  success_message "Manifest is being uploaded"
         | 
| 34 | 
            +
                  failure_message "Manifest upload failed"
         | 
| 35 | 
            +
             | 
| 36 | 
            +
                  apipie_options
         | 
| 37 | 
            +
                  option "--file", "MANIFEST", "Subscription manifest file",
         | 
| 38 | 
            +
                         :attribute_name => :option_content,
         | 
| 39 | 
            +
                         :required => true, :format => BinaryFile.new
         | 
| 40 | 
            +
                end
         | 
| 41 | 
            +
             | 
| 42 | 
            +
                autoload_subcommands
         | 
| 43 | 
            +
              end
         | 
| 44 | 
            +
            end
         | 
| 45 | 
            +
             | 
| 46 | 
            +
            HammerCLI::MainCommand.subcommand("subscription", "Manipulate subscriptions.",
         | 
| 47 | 
            +
                                              HammerCLIKatello::SubscriptionCommand)
         | 
| @@ -1,7 +1,3 @@ | |
| 1 | 
            -
            require 'hammer_cli'
         | 
| 2 | 
            -
            require 'hammer_cli_foreman'
         | 
| 3 | 
            -
            require 'hammer_cli_foreman/commands'
         | 
| 4 | 
            -
             | 
| 5 1 | 
             
            module HammerCLIKatello
         | 
| 6 2 |  | 
| 7 3 | 
             
              class SystemCommand < HammerCLI::AbstractCommand
         | 
| @@ -10,85 +6,89 @@ module HammerCLIKatello | |
| 10 6 | 
             
                  resource KatelloApi::Resources::System, :index
         | 
| 11 7 |  | 
| 12 8 | 
             
                  output do
         | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 9 | 
            +
                    field :uuid, "ID"
         | 
| 10 | 
            +
                    field :name, "Name"
         | 
| 15 11 | 
             
                  end
         | 
| 16 12 |  | 
| 17 13 | 
             
                  apipie_options :without => [:environment_id]
         | 
| 18 14 | 
             
                end
         | 
| 19 15 |  | 
| 20 | 
            -
             | 
| 21 | 
            -
             | 
| 16 | 
            +
                class InfoCommand < HammerCLIForeman::InfoCommand
         | 
| 17 | 
            +
                  resource KatelloApi::Resources::System, :show
         | 
| 22 18 |  | 
| 23 | 
            -
             | 
| 19 | 
            +
                  identifiers :id
         | 
| 24 20 |  | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 28 | 
            -
             | 
| 29 | 
            -
             | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 32 | 
            -
             | 
| 33 | 
            -
             | 
| 34 | 
            -
             | 
| 35 | 
            -
             | 
| 36 | 
            -
             | 
| 37 | 
            -
             | 
| 38 | 
            -
             | 
| 39 | 
            -
             | 
| 40 | 
            -
             | 
| 21 | 
            +
                  output do
         | 
| 22 | 
            +
                    field :name, "Name"
         | 
| 23 | 
            +
                    field :id, "ID"
         | 
| 24 | 
            +
                    field :uuid, "UUID"
         | 
| 25 | 
            +
                    field :description, "Description"
         | 
| 26 | 
            +
                    field :location, "Location"
         | 
| 27 | 
            +
                    from :environment do
         | 
| 28 | 
            +
                      field :name, "Lifecycle Environment"
         | 
| 29 | 
            +
                    end
         | 
| 30 | 
            +
                    from :content_view do
         | 
| 31 | 
            +
                      field :name, "Content View"
         | 
| 32 | 
            +
                    end
         | 
| 33 | 
            +
                    field :entitlementStatus, "Entitlement Status"
         | 
| 34 | 
            +
                    field :releaseVer, "Release Version"
         | 
| 35 | 
            +
                    field :autoheal, "Autoheal"
         | 
| 36 | 
            +
                  end
         | 
| 41 37 |  | 
| 42 | 
            -
             | 
| 43 | 
            -
             | 
| 38 | 
            +
                  apipie_options
         | 
| 39 | 
            +
                end
         | 
| 44 40 |  | 
| 45 | 
            -
             | 
| 46 | 
            -
             | 
| 47 | 
            -
             | 
| 48 | 
            -
             | 
| 41 | 
            +
                class CreateCommand < HammerCLIForeman::CreateCommand
         | 
| 42 | 
            +
                  success_message "System created"
         | 
| 43 | 
            +
                  failure_message "Could not create system"
         | 
| 44 | 
            +
                  resource KatelloApi::Resources::System, :create
         | 
| 49 45 |  | 
| 50 | 
            -
             | 
| 51 | 
            -
             | 
| 52 | 
            -
             | 
| 53 | 
            -
             | 
| 54 | 
            -
             | 
| 55 | 
            -
             | 
| 46 | 
            +
                  def request_params
         | 
| 47 | 
            +
                    super.tap do |params|
         | 
| 48 | 
            +
                      params['type'] = "system"
         | 
| 49 | 
            +
                      params['facts'] = {"uname.machine" => "unknown"}
         | 
| 50 | 
            +
                    end
         | 
| 51 | 
            +
                  end
         | 
| 56 52 |  | 
| 57 | 
            -
             | 
| 58 | 
            -
             | 
| 53 | 
            +
                  apipie_options :without => [:facts, :type, :installed_products]
         | 
| 54 | 
            +
                end
         | 
| 59 55 |  | 
| 60 | 
            -
             | 
| 61 | 
            -
             | 
| 62 | 
            -
             | 
| 63 | 
            -
             | 
| 56 | 
            +
                class UpdateCommand < HammerCLIForeman::UpdateCommand
         | 
| 57 | 
            +
                  success_message "System updated"
         | 
| 58 | 
            +
                  failure_message "Could not update system"
         | 
| 59 | 
            +
                  resource KatelloApi::Resources::System, :update
         | 
| 64 60 |  | 
| 65 | 
            -
             | 
| 61 | 
            +
                  identifiers :id
         | 
| 66 62 |  | 
| 67 | 
            -
             | 
| 68 | 
            -
             | 
| 63 | 
            +
                  apipie_options :without => [:facts, :type, :installed_products]
         | 
| 64 | 
            +
                end
         | 
| 69 65 |  | 
| 70 | 
            -
             | 
| 71 | 
            -
             | 
| 72 | 
            -
             | 
| 73 | 
            -
             | 
| 66 | 
            +
                class DeleteCommand < HammerCLIForeman::DeleteCommand
         | 
| 67 | 
            +
                  success_message "System deleted"
         | 
| 68 | 
            +
                  failure_message "Could not delete system"
         | 
| 69 | 
            +
                  resource KatelloApi::Resources::System, :destroy
         | 
| 74 70 |  | 
| 75 | 
            -
             | 
| 71 | 
            +
                  identifiers :id
         | 
| 76 72 |  | 
| 77 | 
            -
             | 
| 78 | 
            -
             | 
| 73 | 
            +
                  apipie_options
         | 
| 74 | 
            +
                end
         | 
| 79 75 |  | 
| 80 | 
            -
             | 
| 81 | 
            -
             | 
| 76 | 
            +
                class TasksCommand < HammerCLIForeman::ListCommand
         | 
| 77 | 
            +
                  resource KatelloApi::Resources::System, :tasks
         | 
| 82 78 |  | 
| 83 | 
            -
             | 
| 79 | 
            +
                  command_name "tasks"
         | 
| 84 80 |  | 
| 85 | 
            -
             | 
| 81 | 
            +
                  identifiers :id
         | 
| 86 82 |  | 
| 87 | 
            -
             | 
| 88 | 
            -
             | 
| 83 | 
            +
                  apipie_options
         | 
| 84 | 
            +
                end
         | 
| 89 85 |  | 
| 90 86 | 
             
                autoload_subcommands
         | 
| 91 87 | 
             
              end
         | 
| 92 88 |  | 
| 93 | 
            -
               | 
| 89 | 
            +
              cmd_name = "system"
         | 
| 90 | 
            +
              cmd_desc = "manipulate systems on the server"
         | 
| 91 | 
            +
              cmd_cls  = HammerCLIKatello::SystemCommand
         | 
| 92 | 
            +
              HammerCLI::MainCommand.subcommand(cmd_name, cmd_desc, cmd_cls)
         | 
| 93 | 
            +
             | 
| 94 94 | 
             
            end
         | 
| @@ -1,8 +1,3 @@ | |
| 1 | 
            -
             | 
| 2 | 
            -
            require 'hammer_cli'
         | 
| 3 | 
            -
            require 'hammer_cli_foreman'
         | 
| 4 | 
            -
            require 'hammer_cli_foreman/commands'
         | 
| 5 | 
            -
             | 
| 6 1 | 
             
            module HammerCLIKatello
         | 
| 7 2 |  | 
| 8 3 | 
             
              class SystemGroup < HammerCLI::AbstractCommand
         | 
| @@ -41,9 +36,7 @@ module HammerCLIKatello | |
| 41 36 | 
             
                  action "copy"
         | 
| 42 37 |  | 
| 43 38 | 
             
                  validate_options do
         | 
| 44 | 
            -
                    unless option(: | 
| 45 | 
            -
                      all(:name).required
         | 
| 46 | 
            -
                    end
         | 
| 39 | 
            +
                    all(:option_name).required unless option(:option_id).exist?
         | 
| 47 40 | 
             
                  end
         | 
| 48 41 | 
             
                end
         | 
| 49 42 |  | 
| @@ -51,4 +44,5 @@ module HammerCLIKatello | |
| 51 44 | 
             
              end
         | 
| 52 45 | 
             
            end
         | 
| 53 46 |  | 
| 54 | 
            -
            HammerCLI::MainCommand.subcommand 'systemgroup', "Manipulate system groups", | 
| 47 | 
            +
            HammerCLI::MainCommand.subcommand 'systemgroup', "Manipulate system groups",
         | 
| 48 | 
            +
                                              HammerCLIKatello::SystemGroup
         | 
    
        data/lib/hammer_cli_katello.rb
    CHANGED
    
    | @@ -1,13 +1,19 @@ | |
| 1 1 | 
             
            require 'hammer_cli'
         | 
| 2 | 
            +
            require 'hammer_cli_foreman'
         | 
| 2 3 | 
             
            require 'hammer_cli/exit_codes'
         | 
| 4 | 
            +
            require 'hammer_cli_foreman/commands'
         | 
| 3 5 | 
             
            require 'hammer_cli_foreman/output/fields'
         | 
| 4 6 |  | 
| 7 | 
            +
            require 'katello_api'
         | 
| 8 | 
            +
             | 
| 5 9 | 
             
            module HammerCLIKatello
         | 
| 6 10 |  | 
| 7 11 | 
             
              def self.exception_handler_class
         | 
| 8 12 | 
             
                HammerCLIForeman::ExceptionHandler
         | 
| 9 13 | 
             
              end
         | 
| 10 14 |  | 
| 11 | 
            -
              Dir["#{File.dirname(__FILE__)}/hammer_cli_katello/*.rb"].each  | 
| 15 | 
            +
              Dir["#{File.dirname(__FILE__)}/hammer_cli_katello/*.rb"].each do |f|
         | 
| 16 | 
            +
                require f
         | 
| 17 | 
            +
              end
         | 
| 12 18 |  | 
| 13 19 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,23 +1,51 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: hammer_cli_katello
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Katello
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2014-01- | 
| 11 | 
            +
            date: 2014-01-24 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 | 
            -
              name:  | 
| 14 | 
            +
              name: hammer_cli_foreman
         | 
| 15 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 | 
            +
                requirements:
         | 
| 17 | 
            +
                - - ~>
         | 
| 18 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            +
                    version: 0.0.16
         | 
| 20 | 
            +
              type: :runtime
         | 
| 21 | 
            +
              prerelease: false
         | 
| 22 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 | 
            +
                requirements:
         | 
| 24 | 
            +
                - - ~>
         | 
| 25 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            +
                    version: 0.0.16
         | 
| 27 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 28 | 
            +
              name: katello_api
         | 
| 29 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 | 
            +
                requirements:
         | 
| 31 | 
            +
                - - ~>
         | 
| 32 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            +
                    version: 0.0.5
         | 
| 34 | 
            +
              type: :runtime
         | 
| 35 | 
            +
              prerelease: false
         | 
| 36 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 | 
            +
                requirements:
         | 
| 38 | 
            +
                - - ~>
         | 
| 39 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            +
                    version: 0.0.5
         | 
| 41 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 42 | 
            +
              name: rake
         | 
| 15 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 44 | 
             
                requirements:
         | 
| 17 45 | 
             
                - - ! '>='
         | 
| 18 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 47 | 
             
                    version: '0'
         | 
| 20 | 
            -
              type: : | 
| 48 | 
            +
              type: :development
         | 
| 21 49 | 
             
              prerelease: false
         | 
| 22 50 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 51 | 
             
                requirements:
         | 
| @@ -25,13 +53,13 @@ dependencies: | |
| 25 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 54 | 
             
                    version: '0'
         | 
| 27 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 | 
            -
              name:  | 
| 56 | 
            +
              name: thor
         | 
| 29 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 58 | 
             
                requirements:
         | 
| 31 59 | 
             
                - - ! '>='
         | 
| 32 60 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 61 | 
             
                    version: '0'
         | 
| 34 | 
            -
              type: : | 
| 62 | 
            +
              type: :development
         | 
| 35 63 | 
             
              prerelease: false
         | 
| 36 64 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 65 | 
             
                requirements:
         | 
| @@ -39,13 +67,97 @@ dependencies: | |
| 39 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 68 | 
             
                    version: '0'
         | 
| 41 69 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 | 
            -
              name:  | 
| 70 | 
            +
              name: minitest
         | 
| 71 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 72 | 
            +
                requirements:
         | 
| 73 | 
            +
                - - '='
         | 
| 74 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 75 | 
            +
                    version: 4.7.4
         | 
| 76 | 
            +
              type: :development
         | 
| 77 | 
            +
              prerelease: false
         | 
| 78 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 79 | 
            +
                requirements:
         | 
| 80 | 
            +
                - - '='
         | 
| 81 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 82 | 
            +
                    version: 4.7.4
         | 
| 83 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 84 | 
            +
              name: minitest-spec-context
         | 
| 43 85 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 86 | 
             
                requirements:
         | 
| 45 87 | 
             
                - - ! '>='
         | 
| 46 88 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 89 | 
             
                    version: '0'
         | 
| 48 | 
            -
              type: : | 
| 90 | 
            +
              type: :development
         | 
| 91 | 
            +
              prerelease: false
         | 
| 92 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 93 | 
            +
                requirements:
         | 
| 94 | 
            +
                - - ! '>='
         | 
| 95 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 96 | 
            +
                    version: '0'
         | 
| 97 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 98 | 
            +
              name: simplecov
         | 
| 99 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 100 | 
            +
                requirements:
         | 
| 101 | 
            +
                - - ! '>='
         | 
| 102 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 103 | 
            +
                    version: '0'
         | 
| 104 | 
            +
              type: :development
         | 
| 105 | 
            +
              prerelease: false
         | 
| 106 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 107 | 
            +
                requirements:
         | 
| 108 | 
            +
                - - ! '>='
         | 
| 109 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 110 | 
            +
                    version: '0'
         | 
| 111 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 112 | 
            +
              name: mocha
         | 
| 113 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 114 | 
            +
                requirements:
         | 
| 115 | 
            +
                - - ! '>='
         | 
| 116 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 117 | 
            +
                    version: '0'
         | 
| 118 | 
            +
              type: :development
         | 
| 119 | 
            +
              prerelease: false
         | 
| 120 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 121 | 
            +
                requirements:
         | 
| 122 | 
            +
                - - ! '>='
         | 
| 123 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 124 | 
            +
                    version: '0'
         | 
| 125 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 126 | 
            +
              name: ci_reporter
         | 
| 127 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 128 | 
            +
                requirements:
         | 
| 129 | 
            +
                - - ! '>='
         | 
| 130 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 131 | 
            +
                    version: '0'
         | 
| 132 | 
            +
              type: :development
         | 
| 133 | 
            +
              prerelease: false
         | 
| 134 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 135 | 
            +
                requirements:
         | 
| 136 | 
            +
                - - ! '>='
         | 
| 137 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 138 | 
            +
                    version: '0'
         | 
| 139 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 140 | 
            +
              name: rubocop
         | 
| 141 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 142 | 
            +
                requirements:
         | 
| 143 | 
            +
                - - '='
         | 
| 144 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 145 | 
            +
                    version: 0.17.0
         | 
| 146 | 
            +
              type: :development
         | 
| 147 | 
            +
              prerelease: false
         | 
| 148 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 149 | 
            +
                requirements:
         | 
| 150 | 
            +
                - - '='
         | 
| 151 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 152 | 
            +
                    version: 0.17.0
         | 
| 153 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 154 | 
            +
              name: rubocop-checkstyle_formatter
         | 
| 155 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 156 | 
            +
                requirements:
         | 
| 157 | 
            +
                - - ! '>='
         | 
| 158 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 159 | 
            +
                    version: '0'
         | 
| 160 | 
            +
              type: :development
         | 
| 49 161 | 
             
              prerelease: false
         | 
| 50 162 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 163 | 
             
                requirements:
         | 
| @@ -55,7 +167,7 @@ dependencies: | |
| 55 167 | 
             
            description: Hammer-CLI-Katello is a plugin for Hammer to provide connectivity to
         | 
| 56 168 | 
             
              a Katello server.
         | 
| 57 169 | 
             
            email:
         | 
| 58 | 
            -
            - katello | 
| 170 | 
            +
            - katello@lists.fedorahosted.org
         | 
| 59 171 | 
             
            executables: []
         | 
| 60 172 | 
             
            extensions: []
         | 
| 61 173 | 
             
            extra_rdoc_files: []
         | 
| @@ -64,13 +176,16 @@ files: | |
| 64 176 | 
             
            - lib/hammer_cli_katello/lifecycle_environment.rb
         | 
| 65 177 | 
             
            - lib/hammer_cli_katello/organization.rb
         | 
| 66 178 | 
             
            - lib/hammer_cli_katello/ping.rb
         | 
| 179 | 
            +
            - lib/hammer_cli_katello/product.rb
         | 
| 67 180 | 
             
            - lib/hammer_cli_katello/provider.rb
         | 
| 68 181 | 
             
            - lib/hammer_cli_katello/resource.rb
         | 
| 182 | 
            +
            - lib/hammer_cli_katello/subscription.rb
         | 
| 69 183 | 
             
            - lib/hammer_cli_katello/system.rb
         | 
| 70 184 | 
             
            - lib/hammer_cli_katello/system_group.rb
         | 
| 71 185 | 
             
            - lib/hammer_cli_katello/version.rb
         | 
| 72 | 
            -
            homepage: 
         | 
| 73 | 
            -
            licenses: | 
| 186 | 
            +
            homepage: http://github.com/theforeman/hammer-cli-katello
         | 
| 187 | 
            +
            licenses:
         | 
| 188 | 
            +
            - GPL-3
         | 
| 74 189 | 
             
            metadata: {}
         | 
| 75 190 | 
             
            post_install_message: 
         | 
| 76 191 | 
             
            rdoc_options: []
         | 
| @@ -93,3 +208,4 @@ signing_key: | |
| 93 208 | 
             
            specification_version: 4
         | 
| 94 209 | 
             
            summary: Katello commands for Hammer
         | 
| 95 210 | 
             
            test_files: []
         | 
| 211 | 
            +
            has_rdoc: 
         |