Merge branch 'mprahl/python3-compatibility'

This commit is contained in:
Nils Philippsen
2016-09-22 12:49:08 +02:00
7 changed files with 16 additions and 26 deletions

View File

@@ -28,6 +28,7 @@
# their tag names.
# TODO: Ensure the RPM %dist tag is set according to the policy.
import six
from abc import ABCMeta, abstractmethod
import logging
import os
@@ -112,7 +113,7 @@ Koji workflow
8) (optional) wait for selected builds to be available in buildroot
"""
class GenericBuilder:
class GenericBuilder(six.with_metaclass(ABCMeta)):
"""
External Api for builders
@@ -138,7 +139,6 @@ class GenericBuilder:
"?#70fa7516b83768595a4f3280ae890a7ac957e0c7")
"""
__metaclass__ = ABCMeta
backend = "generic"
@@ -589,7 +589,7 @@ chmod 644 %buildroot/%_rpmconfigdir/macros.d/macros.modules
:param build_tag_name
:param groups: A dict {'group' : [package, ...]}
"""
log.debug("Adding groups=%s to tag=%s" % (groups.keys(), dest_tag))
log.debug("Adding groups=%s to tag=%s" % (list(groups), dest_tag))
if groups and not isinstance(groups, dict):
raise ValueError("Expected dict {'group' : [str(package1), ...]")
@@ -599,7 +599,7 @@ chmod 644 %buildroot/%_rpmconfigdir/macros.d/macros.modules
for p in self.koji_session.getTagGroups(dest_tag, inherit=False)
])
for group, packages in groups.iteritems():
for group, packages in groups.items():
group_id = existing_groups.get(group, None)
if group_id is not None:
log.debug("Group %s already exists for tag %s. Skipping creation." % (group, dest_tag))
@@ -646,7 +646,7 @@ chmod 644 %buildroot/%_rpmconfigdir/macros.d/macros.modules
raise SystemError("Tag %s: master lock already set. Can't edit tag" % taginfo['name'])
perm_ids = dict([(p['name'], p['id']) for p in self.koji_session.getAllPerms()])
if perm not in perm_ids.keys():
if perm not in perm_ids:
raise ValueError("Unknown permissions %s" % perm)
perm_id = perm_ids[perm]

View File

@@ -25,11 +25,6 @@
"""Configuration handler functions."""
try:
import configparser # py3
except ImportError:
import ConfigParser as configparser # py2
import six
from rida import app

View File

@@ -27,6 +27,7 @@
import modulemd
from pdc_client import PDCClient
import six
@@ -68,7 +69,7 @@ def get_variant_dict(data):
return isinstance(data, modulemd.ModuleMetadata)
def is_module_str(data):
return isinstance(data, str) or isinstance(data, unicode)
return isinstance(data, six.string_types)
result = None

View File

@@ -29,21 +29,13 @@ This is the main component of the orchestrator and is responsible for
proper scheduling component builds in the supported build systems.
"""
import inspect
import operator
import os
import pprint
import threading
import time
try:
# Py3
import queue
except ImportError:
# Py2
import Queue as queue
import six.moves.queue as queue
import rida.config
import rida.messaging
@@ -64,7 +56,9 @@ class STOP_WORK(object):
def module_build_state_from_msg(msg):
state = int(msg.module_build_state)
# TODO better handling
assert state in models.BUILD_STATES.values(), "state=%s(%s) is not in %s" % (state, type(state), models.BUILD_STATES.values())
assert state in models.BUILD_STATES.values(), (
'state=%s(%s) is not in %s'
% (state, type(state), list(models.BUILD_STATES.values())))
return state
@@ -116,7 +110,8 @@ class MessageWorker(threading.Thread):
if koji.BUILD_STATES[state] not in self.on_build_change:
raise KeyError("Koji build states %r not handled." % state)
all_fns = self.on_build_change.items() + self.on_module_change.items()
all_fns = (list(self.on_build_change.items()) +
list(self.on_module_change.items()))
for key, callback in all_fns:
expected = ['config', 'session', 'msg']
argspec = inspect.getargspec(callback)[0]

View File

@@ -27,7 +27,7 @@ import re
import functools
import time
from rida import log, models
from errors import ValidationError
from rida.errors import ValidationError
def retry(timeout=120, interval=30, wait_on=Exception):

View File

@@ -41,8 +41,8 @@ import tempfile
from rida import app, conf, db, log
from rida import models
from rida.utils import pagination_metadata, filter_module_builds
from errors import (ValidationError, Unauthorized, UnprocessableEntity,
Conflict, NotFound)
from rida.errors import (
ValidationError, Unauthorized, UnprocessableEntity, Conflict, NotFound)
class SubmitBuild(View):
"""Handles new module build submissions."""

View File

@@ -25,7 +25,6 @@ import json
from mock import patch
from shutil import copyfile
from os import path, mkdir
from datetime import datetime
from tests import app, init_data