Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/reports/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ def get_urls(self):

# Add in each model's views, but without the app label
valid_app_labels = set()
for model, model_admin in self._registry.iteritems():
for model, model_admin in self._registry.items():
urlpatterns.append(
url(r'^%s/' % model._meta.model_name,
include(model_admin.urls))
Expand Down
2 changes: 1 addition & 1 deletion src/reports/jsonfield/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
from fields import JSONField, JSONCharField
from .fields import JSONField, JSONCharField
4 changes: 2 additions & 2 deletions src/reports/repo/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -443,9 +443,9 @@ def get_urls(self):
return my_urls + urls

def abi_export(self, request, pk):
print pk
print(pk)
abi = ABI.objects.get(pk=pk)
print abi
print(abi)
return HttpResponse(
json.dumps(abi.listing),
content_type='application/json',
Expand Down
15 changes: 11 additions & 4 deletions src/reports/repo/misc.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import datetime
from collections import defaultdict, OrderedDict

import rpmUtils.miscutils
import yum
#import rpmUtils.miscutils


def _get_pkg_meta(pkg, platforms, repo_pkg_meta):
Expand Down Expand Up @@ -64,14 +63,22 @@ def _get_chlog_ver(item):
for item in chlog:
tm = datetime.date.fromtimestamp(int(item[0]))
flat.append("* %s %s" % (
tm.strftime("%a %b %d %Y"), yum.misc.to_unicode(item[1]))
tm.strftime("%a %b %d %Y"), _to_unicode(item[1]))
)
flat.extend([yum.misc.to_unicode(line)
flat.extend([_to_unicode(line)
for line in item[2].splitlines()])
flat.append("")
return flat


# Lifted from yum
def _to_unicode(obj, encoding='utf-8', errors='replace'):
if isinstance(obj, basestring):
if not isinstance(obj, unicode):
obj = unicode(obj, encoding, errors)
return obj


# recursive function that given a list of repos,
# will find their common container repos set containers is passed by reference
def _find_containers(repos, containers):
Expand Down
24 changes: 12 additions & 12 deletions src/reports/repo/models.py
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
import datetime
import os
import urlparse
import urllib.parse
from collections import defaultdict
from copy import copy

import requests
import yum
#import yum
from django.conf import settings
from django.contrib.auth.backends import RemoteUserBackend
from django.core.cache import cache
from django.core.exceptions import ValidationError
from django.db import models
from rpmUtils.miscutils import splitFilename
#from rpmUtils.miscutils import splitFilename

import buildservice
import rpmmd
#import buildservice
import repo.rpmmd

from .misc import (
_find_containers, _fmt_chlog, _gen_abi, _get_latest_repo_pkg_meta,
Expand Down Expand Up @@ -272,7 +272,7 @@ def yumrepos(self):
for arch in archs:
yumrepoid = self.yumrepoid
yumrepourl = self.yumrepourl.replace("@ARCH@", arch)
print yumrepourl
print(yumrepourl)
cachedir = os.path.join(
yum.misc.getCacheDir(tmpdir=settings.YUM_CACHE_DIR),
self.yumrepoid, str(arch),
Expand All @@ -282,8 +282,8 @@ def yumrepos(self):
yumrepoid, yumrepourl, cachedir=cachedir
)
self._yumrepos.append(yumrepo)
except requests.exceptions.RequestException, exc:
print exc
except requests.exceptions.RequestException as exc:
print(exc)

return self._yumrepos

Expand Down Expand Up @@ -510,7 +510,7 @@ def link_to_repos(self):
_repos.add(os.path.dirname(url))

for urlline in _repos:
print urlline
print(urlline)
for arch in archs:
urlline = urlline.replace(arch, '@ARCH@')
parts = urlparse.urlsplit(urlline)
Expand Down Expand Up @@ -538,9 +538,9 @@ def link_to_repos(self):
split_path = path.split("/")

while not found and split_path:
print pointer.name
print repo_split_path
print split_path
print(pointer.name)
print(repo_split_path)
print(split_path)
if split_path == repo_split_path:
found_repos.add(repo)
found = True
Expand Down
30 changes: 22 additions & 8 deletions src/reports/repo/rpmmd.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,15 @@
import os
import tempfile
import traceback
import urlparse
import urllib.parse
import weakref
from collections import defaultdict, namedtuple

import requests
from lxml import etree
from rpmUtils.miscutils import (
compareEVR, rangeCompare, splitFilename, stringToVersion
)
from yum import i18n
#from rpmUtils.miscutils import (
# compareEVR, rangeCompare, splitFilename, stringToVersion
#)


class Session(object):
Expand Down Expand Up @@ -300,7 +299,7 @@ def refresh_cache(self):
),
verify=False
)
print req.url
print(req.url)
if not req.status_code == requests.codes.ok:
req.raise_for_status()

Expand Down Expand Up @@ -328,7 +327,7 @@ def repomd(self):
urlparse.urljoin(self.baseurl, "repodata/repomd.xml"),
verify=False
)
print req.url
print(req.url)
if req.status_code == requests.codes.ok:
self._repomd = etree.fromstring(req.content)
self.revision = self._repomd.find("{*}revision").text
Expand Down Expand Up @@ -710,7 +709,7 @@ def matchingPrcos(self, prcotype, reqtuple):
# find the named entry in pkgobj, do the comparsion
result = []
for (n, f, (e, v, r)) in self.prco.get(prcotype, []):
if not i18n.str_eq(reqn, n):
if not _str_eq(reqn, n):
continue

if f == '=':
Expand All @@ -733,6 +732,21 @@ def matchingPrcos(self, prcotype, reqtuple):

return result

# Lifted from yum
def _str_eq(a, b):
if isinstance(a, unicode) == isinstance(b, unicode):
if a == b:
return True
elif _to_utf8(a) == _to_utf8(b):
return True
return False

# Lifted from yum
def _to_utf8(obj, errors='replace'):
if isinstance(obj, unicode):
obj = obj.encode('utf-8', errors)
return obj


class Patterns(object):
def __init__(self, patxml):
Expand Down
22 changes: 11 additions & 11 deletions src/reports/repo/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
from collections import defaultdict, OrderedDict
from copy import copy
from tempfile import mkstemp
from urllib2 import HTTPError
from urllib.error import HTTPError

import pydot
import yum
#import yum
from django.conf import settings
from django.core.exceptions import ObjectDoesNotExist
from django.core.files import File
Expand All @@ -16,7 +16,7 @@
from django.utils.safestring import mark_safe
from osc import core

import buildservice
#import buildservice

from .misc import (
_exclude_by_meta, _find_comparable_component, _find_unmet_reqs, _fmt_chlog,
Expand Down Expand Up @@ -340,14 +340,14 @@ def _graph_post_save(sender, **kwargs):
graph.dot and
os.path.exists(os.path.join(settings.MEDIA_ROOT, graph.dot.name))
):
print "already exists"
print("already exists")
return
if graph.image:
repos = graph.image.repo.all()
elif graph.repo:
repos = graph.repo.all()
else:
print "neither image or repo"
print("neither image or repo")
return

packages = None
Expand Down Expand Up @@ -458,7 +458,7 @@ def _find_obs_pkg(bs, pkg, src_project):
# search predicate
predicate = "(@name = '%s') and path/@project='%s'" % (pkg, src_project)
kwa = {path: predicate}
print kwa
print(kwa)
# osc search function wants keyword args
result = core.search(bs.apiurl, **kwa)
# obs search will return results from subprojects as well,
Expand All @@ -474,7 +474,7 @@ def _find_obs_pkg(bs, pkg, src_project):
pkg, src_project
)
kwa = {path: predicate}
print kwa
print(kwa)
# osc search function wants keyword args
result = core.search(bs.apiurl, **kwa)
# obs search will return results from subprojects as well,
Expand Down Expand Up @@ -535,8 +535,8 @@ def _creq(new_repo, old_repo, submit, delete, comment):
tgt_prj_pkgs = bs.getPackageList(str(tgt_prj.name))

if pkg not in src_prj_pkgs:
print pkg
print src_prj
print(pkg)
print(src_prj)
pkg = _find_obs_pkg(bs, pkg, src_prj.name)
if not pkg:
messages.append(
Expand Down Expand Up @@ -577,7 +577,7 @@ def _creq(new_repo, old_repo, submit, delete, comment):
'tgt_package': pkg,
}
)
print options
print(options)
all_actions = []
tgts = []
for tgt, actions in options.items():
Expand All @@ -598,7 +598,7 @@ def _creq(new_repo, old_repo, submit, delete, comment):
weburl, req.reqid, req.reqid, ", ".join(tgts)))
)

except HTTPError, err:
except HTTPError as err:
status = etree.fromstring(err.read())
errors.append(
"Error while creating request: %s" % status.find(("summary")).text
Expand Down
4 changes: 2 additions & 2 deletions src/reports/settings.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# Django settings for reports project.
import ConfigParser
import configparser
import json
from os.path import dirname, expanduser, isabs, isdir, isfile, join, split

from django.core.exceptions import ImproperlyConfigured

PROJECT_DIR = dirname(__file__)

config = ConfigParser.ConfigParser()
config = configparser.ConfigParser()
# Read defaults
config.readfp(open(join(PROJECT_DIR, "reports.conf")))
# Read overrides from etc and local file for developement setup
Expand Down