diff --git a/lib/hammer_cli_katello.rb b/lib/hammer_cli_katello.rb index 66da0c2d..3e9bf873 100644 --- a/lib/hammer_cli_katello.rb +++ b/lib/hammer_cli_katello.rb @@ -165,6 +165,10 @@ def self.exception_handler_class 'hammer_cli_katello/docker' ) + HammerCLI::MainCommand.lazy_subcommand!("flatpak-remote", _("Manipulate flatpak remotes"), + 'HammerCLIKatello::FlatpakRemoteCommand', + 'hammer_cli_katello/flatpak_remote' + ) # subcommands to hammer_cli_foreman commands require 'hammer_cli_katello/host' require 'hammer_cli_katello/hostgroup' diff --git a/lib/hammer_cli_katello/flatpak_remote.rb b/lib/hammer_cli_katello/flatpak_remote.rb new file mode 100644 index 00000000..c230552c --- /dev/null +++ b/lib/hammer_cli_katello/flatpak_remote.rb @@ -0,0 +1,71 @@ +module HammerCLIKatello + class FlatpakRemoteCommand < HammerCLIKatello::Command + resource :flatpak_remotes + + class ListCommand < HammerCLIKatello::ListCommand + include OrganizationOptions + output do + field :id, _('ID') + field :name, _('Name') + field :url, _('URL') + field :description, _('Description') + field :username, _('User') + field :token, _('Token') + field :registry_url, _('Registry URL') + end + + build_options + end + + class InfoCommand < HammerCLIKatello::InfoCommand + output do + field :id, _('ID') + field :name, _('Name') + field :label, _('Label') + field :description, _('Description'), Fields::Field, :hide_blank => true + field :url, _('Flatpak index URL') + field :username, _('Username'), Fields::Field, :hide_blank => true + field :token, _('Token'), Fields::Field, :hide_blank => true + field :registry_url, _('Registry URL') + end + + build_options + end + + class CreateCommand < HammerCLIKatello::CreateCommand + success_message _('Flatpak Remote created.') + failure_message _('Could not create the Flatpak Remote.') + + build_options + end + + class UpdateCommand < HammerCLIKatello::UpdateCommand + success_message _('Flatpak Remote updated.') + failure_message _('Could not update the Flatpak Remote.') + + build_options + end + + class DeleteCommand < HammerCLIKatello::DeleteCommand + success_message _('Flatpak Remote deleted.') + failure_message _('Could not delete the Flatpak Remote.') + + build_options + end + + class ScanCommand < HammerCLIKatello::SingleResourceCommand + include HammerCLIForemanTasks::Async + + action :scan + command_name 'scan' + + success_message _("Flatpak remote is being scanned in task %{id}.") + failure_message _('Could not scan the Flatpak remote') + + build_options + end + + + autoload_subcommands + end +end \ No newline at end of file