class TestRepoSearchCommand(base.PulpClientTests): def setUp(self): super(TestRepoSearchCommand, self).setUp() self.command = RepoSearchCommand(self.context, 'fake_type') def test_run(self): # Setup repos = [] for i in range(0, 4): r = { 'repo_id' : 'repo_%s' % i, 'display_name' : 'Repo %s' % i, 'description' : 'Description', } repos.append(r) self.server_mock.request.return_value = 200, repos # Test self.command.run() # Verify expected_tags = [TAG_TITLE] expected_tags += map(lambda x : TAG_DOCUMENT, range(0, 12)) # 3 fields * 4 repos self.assertEqual(expected_tags, self.prompt.get_write_tags()) def test_criteria(self): mock_context = mock.MagicMock() RepoSearchCommand(mock_context, 'fake_type').run() expected = {'str-eq': [['notes.%s' % constants.REPO_NOTE_TYPE_KEY, 'fake_type']]} mock_context.server.repo_search.search.assert_called_once_with(**expected)
def test_criteria(self): mock_context = mock.MagicMock() RepoSearchCommand(mock_context, 'fake_type').run() expected = {'str-eq': [['notes.%s' % constants.REPO_NOTE_TYPE_KEY, 'fake_type']]} mock_context.server.repo_search.search.assert_called_once_with(**expected)
def initialize(context): structure.ensure_repo_structure(context.cli) upload_manager = _upload_manager(context) repo_section = structure.repo_section(context.cli) repo_section.add_command(repo_create_update.PkgRepoCreateCommand(context)) repo_section.add_command(repo_create_update.PkgRepoUpdateCommand(context)) repo_section.add_command(cudl.DeleteRepositoryCommand(context)) repo_section.add_command(repo_list.RepoListCommand(context)) repo_section.add_command( RepoSearchCommand(context, constants.REPO_NOTE_PKG)) copy_section = structure.repo_copy_section(context.cli) copy_section.add_command(copy_commands.MsiCopyCommand(context)) copy_section.add_command(copy_commands.MsmCopyCommand(context)) copy_section.add_command(copy_commands.AllCopyCommand(context)) remove_section = structure.repo_remove_section(context.cli) remove_section.add_command(remove.MsiRemoveCommand(context)) remove_section.add_command(remove.MsmRemoveCommand(context)) contents_section = structure.repo_contents_section(context.cli) contents_section.add_command(contents.SearchMsiCommand(context)) contents_section.add_command(contents.SearchMsmCommand(context)) uploads_section = structure.repo_uploads_section(context.cli) for cls_ in [ package.CreateMsiCommand, package.CreateMsmCommand, upload.ResumeCommand, upload.CancelCommand, upload.ListCommand ]: uploads_section.add_command(cls_(context, upload_manager)) sync_section = structure.repo_sync_section(context.cli) renderer = status.PackageStatusRenderer(context) sync_section.add_command( sync_publish.RunSyncRepositoryCommand(context, renderer)) sync_section.add_command(sync_publish.SyncStatusCommand(context, renderer)) publish_section = structure.repo_publish_section(context.cli) renderer = PublishStepStatusRenderer(context) distributor_id = ids.TYPE_ID_DISTRIBUTOR_WIN publish_section.add_command( sync_publish.RunPublishRepositoryCommand(context, renderer, distributor_id)) publish_section.add_command( sync_publish.PublishStatusCommand(context, renderer)) sync_schedules_section = structure.repo_sync_schedules_section(context.cli) sync_schedules_section.add_command( sync_schedules.PkgCreateScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.PkgUpdateScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.PkgDeleteScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.PkgListScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.PkgNextRunCommand(context))
def initialize(context): """ :type context: pulp.client.extensions.core.ClientContext """ structure.ensure_puppet_root(context.cli) root_section = structure.root_section(context.cli) root_section.add_command(bind.BindCommand(context)) root_section.add_command(bind.UnbindCommand(context)) root_section.add_command( RepoSearchCommand(context, constants.REPO_NOTE_PUPPET, name=SEARCH_NAME))
def initialize(context): if context.cli.find_section(RPM_SECTION) is not None: return rpm_section = context.cli.create_section(RPM_SECTION, SECTION_DESC) d = _('binds this consumer to a Pulp repository') rpm_section.add_command(BindCommand(context, 'bind', d)) d = _('unbinds this consumer from a Pulp repository') rpm_section.add_command(UnbindCommand(context, 'unbind', d)) rpm_section.add_command( RepoSearchCommand(context, constants.REPO_NOTE_RPM, name=SEARCH_NAME))
def initialize(context): structure.ensure_repo_structure(context.cli) upload_manager = _upload_manager(context) repo_section = structure.repo_section(context.cli) repo_section.add_command(repo_create_update.RpmRepoCreateCommand(context)) repo_section.add_command(repo_create_update.RpmRepoUpdateCommand(context)) repo_section.add_command(cudl.DeleteRepositoryCommand(context)) repo_section.add_command(repo_list.RpmRepoListCommand(context)) repo_section.add_command( RepoSearchCommand(context, constants.REPO_NOTE_RPM)) copy_section = structure.repo_copy_section(context.cli) copy_section.add_command(copy_commands.RpmCopyCommand(context)) copy_section.add_command(copy_commands.ErrataCopyCommand(context)) copy_section.add_command(copy_commands.DistributionCopyCommand(context)) copy_section.add_command(copy_commands.PackageGroupCopyCommand(context)) copy_section.add_command(copy_commands.PackageCategoryCopyCommand(context)) copy_section.add_command( copy_commands.PackageEnvironmentCopyCommand(context)) copy_section.add_command(copy_commands.AllCopyCommand(context)) copy_section.add_command(copy_commands.SrpmCopyCommand(context)) copy_section.add_command(copy_commands.YumRepoMetadataFileCommand(context)) copy_section.add_command(copy_commands.DrpmCopyCommand(context)) # Disabled as per 950690. We'll likely be able to add these back once the new # yum importer is finished and DRPMs are properly handled. # copy_section.add_command(copy_commands.DrpmCopyCommand(context)) remove_section = structure.repo_remove_section(context.cli) remove_section.add_command(remove.RpmRemoveCommand(context)) remove_section.add_command(remove.SrpmRemoveCommand(context)) remove_section.add_command(remove.DrpmRemoveCommand(context)) remove_section.add_command(remove.ErrataRemoveCommand(context)) remove_section.add_command(remove.PackageGroupRemoveCommand(context)) remove_section.add_command(remove.PackageCategoryRemoveCommand(context)) remove_section.add_command(remove.PackageEnvironmentRemoveCommand(context)) remove_section.add_command(remove.DistributionRemoveCommand(context)) remove_section.add_command(remove.YumMetadataFileRemoveCommand(context)) contents_section = structure.repo_contents_section(context.cli) contents_section.add_command(contents.SearchRpmsCommand(context)) contents_section.add_command(contents.SearchDrpmsCommand(context)) contents_section.add_command(contents.SearchSrpmsCommand(context)) contents_section.add_command(contents.SearchPackageGroupsCommand(context)) contents_section.add_command( contents.SearchPackageCategoriesCommand(context)) contents_section.add_command( contents.SearchPackageEnvironmentsCommand(context)) contents_section.add_command(contents.SearchDistributionsCommand(context)) contents_section.add_command(contents.SearchErrataCommand(context)) contents_section.add_command( contents.SearchYumMetadataFileCommand(context)) # Add the group section, all its subsections, and commands group_export_section = structure.repo_group_export_section(context.cli) renderer = PublishStepStatusRenderer(context) group_export_section.add_command( export.RpmGroupExportCommand(context, renderer)) group_export_section.add_command( export.GroupExportStatusCommand(context, renderer)) uploads_section = structure.repo_uploads_section(context.cli) uploads_section.add_command( package.CreateRpmCommand(context, upload_manager)) uploads_section.add_command( package.CreateSrpmCommand(context, upload_manager)) uploads_section.add_command( errata.CreateErratumCommand(context, upload_manager)) uploads_section.add_command( package_group.CreatePackageGroupCommand(context, upload_manager)) uploads_section.add_command( category.CreatePackageCategoryCommand(context, upload_manager)) uploads_section.add_command( comps.CreateCompsCommand(context, upload_manager)) uploads_section.add_command( environment.CreatePackageEnvironmentCommand(context, upload_manager)) uploads_section.add_command(upload.ResumeCommand(context, upload_manager)) uploads_section.add_command(upload.CancelCommand(context, upload_manager)) uploads_section.add_command(upload.ListCommand(context, upload_manager)) sync_section = structure.repo_sync_section(context.cli) renderer = status.RpmStatusRenderer(context) sync_section.add_command( sync_publish.RunSyncRepositoryCommand(context, renderer)) sync_section.add_command(sync_publish.SyncStatusCommand(context, renderer)) publish_section = structure.repo_publish_section(context.cli) renderer = PublishStepStatusRenderer(context) distributor_id = ids.TYPE_ID_DISTRIBUTOR_YUM publish_section.add_command( sync_publish.RunPublishRepositoryCommand(context, renderer, distributor_id)) publish_section.add_command( sync_publish.PublishStatusCommand(context, renderer)) repo_export_section = structure.repo_export_section(context.cli) renderer = PublishStepStatusRenderer(context) repo_export_section.add_command(export.RpmExportCommand(context, renderer)) repo_export_section.add_command( sync_publish.PublishStatusCommand(context, renderer, description=DESC_EXPORT_STATUS)) sync_schedules_section = structure.repo_sync_schedules_section(context.cli) sync_schedules_section.add_command( sync_schedules.RpmCreateScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.RpmUpdateScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.RpmDeleteScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.RpmListScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.RpmNextRunCommand(context))
def initialize(context): """ :type context: pulp.client.extensions.core.ClientContext """ structure.ensure_repo_structure(context.cli) structure.ensure_consumer_structure(context.cli) renderer = status.PuppetStatusRenderer(context) consumer_section = structure.consumer_section(context.cli) consumer_section.add_command(bind.BindCommand(context)) consumer_section.add_command(bind.UnbindCommand(context)) consumer_install_section = structure.consumer_install_section(context.cli) consumer_install_section.add_command(content.InstallCommand(context)) consumer_update_section = structure.consumer_update_section(context.cli) consumer_update_section.add_command(content.UpdateCommand(context)) consumer_uninstall_section = structure.consumer_uninstall_section( context.cli) consumer_uninstall_section.add_command(content.UninstallCommand(context)) publish_section = structure.repo_publish_section(context.cli) publish_section.add_command( sync_publish.RunPublishRepositoryCommand( context, renderer, constants.DISTRIBUTOR_TYPE_ID)) publish_section.add_command( sync_publish.PublishStatusCommand(context, renderer)) publish_schedules_section = structure.repo_publish_schedules_section( context.cli) publish_schedules_section.add_command( publish_schedules.PuppetCreateScheduleCommand(context)) publish_schedules_section.add_command( publish_schedules.PuppetUpdateScheduleCommand(context)) publish_schedules_section.add_command( publish_schedules.PuppetDeleteScheduleCommand(context)) publish_schedules_section.add_command( publish_schedules.PuppetListScheduleCommand(context)) publish_schedules_section.add_command( publish_schedules.PuppetNextRunCommand(context)) repo_section = structure.repo_section(context.cli) repo_section.add_command(CreatePuppetRepositoryCommand(context)) repo_section.add_command(UpdatePuppetRepositoryCommand(context)) repo_section.add_command(cudl.DeleteRepositoryCommand(context)) repo_section.add_command(ListPuppetRepositoriesCommand(context)) repo_section.add_command( RepoSearchCommand(context, constants.REPO_NOTE_PUPPET)) repo_section.add_command(remove.RemoveCommand(context)) repo_section.add_command(modules.ModulesCommand(context)) repo_section.add_command(copy_modules.PuppetModuleCopyCommand(context)) sync_section = structure.repo_sync_section(context.cli) sync_section.add_command( sync_publish.RunSyncRepositoryCommand(context, renderer)) sync_section.add_command(sync_publish.SyncStatusCommand(context, renderer)) sync_schedules_section = structure.repo_sync_schedules_section(context.cli) sync_schedules_section.add_command( sync_schedules.PuppetCreateScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.PuppetUpdateScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.PuppetDeleteScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.PuppetListScheduleCommand(context)) sync_schedules_section.add_command( sync_schedules.PuppetNextRunCommand(context)) upload_manager = _upload_manager(context) uploads_section = structure.repo_uploads_section(context.cli) uploads_section.add_command( puppet_upload.UploadModuleCommand(context, upload_manager)) uploads_section.add_command(upload.ListCommand(context, upload_manager)) uploads_section.add_command(upload.CancelCommand(context, upload_manager)) uploads_section.add_command(upload.ResumeCommand(context, upload_manager))
def setUp(self): super(TestRepoSearchCommand, self).setUp() self.command = RepoSearchCommand(self.context, 'fake_type')