Bug 1019400 - RFE: Easier and quicker way to fetch last/current sync status for a large number of repositories
RFE: Easier and quicker way to fetch last/current sync status for a large num...
Product: Red Hat Satellite 6
Classification: Red Hat
Component: API (Show other bugs)
Unspecified Unspecified
medium Severity unspecified (vote)
: Unspecified
: --
Assigned To: satellite6-bugs
Katello QA List
Depends On: 1087998
Blocks: sat6-pulp-future 976275
  Show dependency treegraph
Reported: 2013-10-15 11:56 EDT by Justin Sherrill
Modified: 2017-07-26 15:43 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2014-05-05 14:07:21 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Justin Sherrill 2013-10-15 11:56:00 EDT
Description of problem:

Currently in katello we want to display for a large set of repositories:

a) The current sync status if it is syncing now
b) The status of the last sync if the repository is not syncing

To get this we have to for each repository:

1) search for tasks by tag, for the repo and syncing tag
2) if nothing is returned, look up the repo's sync history

This is very time consuming for a large number of repositories, as worst case we have to go to the server 2x per repo.

Ideally we could pass a list of repo_ids and get all of the tasks we would want to fit this criteria.
Comment 1 Randy Barlow 2014-04-03 11:09:06 EDT
Since the two bugs that are listed here as dependencies as for future Satellite (I assume after 6.0.0), does that mean we can push this RFE off of our upcoming 2.4 release? We are building a beta, and we would like to avoid adding new features after we enter beta.
Comment 2 Justin Sherrill 2014-04-21 11:30:40 EDT

sat6-pulp-future is currently designated for items desired for Sat 6.0 GA.  It's my understanding that Pulp 2.4 is the release slated for GA, so we would appreciate this not being pushed off of 2.4's release :)

Comment 3 Michael Hrivnak 2014-04-21 12:17:01 EDT
We have a new task search API that might solve this. We have another BZ to document that API, at which point we can look at whether it provides what you need.

I suspect it can be used to search for tasks for a list of repos, which I think is all you need.
Comment 4 Brian Bouterse 2014-05-05 14:07:21 EDT
Here's an example request to get all running and finished tasks for two specific repos with 1 query using the search API.  The search API is located here:


Here is the curl command I used:

curl -H "Accept: application/json" -X POST -k -u admin:admin -d @search.json 'https://localhost/pulp/api/v2/tasks/search/' | python -m json.tool

Here are the contents of search.json

 "criteria": {
   "filters": {"tags": {"$in": ["pulp:repository:zoo", "pulp:repository:sat6-tools"]}, "state": {"$in": ["running", "finished"]}},
   "skip": 0,
   "fields": ["id", "task_type", "tags", "state"]}

Note You need to log in before you can comment on or make changes to this bug.