| |
@@ -337,7 +337,7 @@
|
| |
|
| |
@classmethod
|
| |
def create_new_from_other_build(cls, user, copr, source_build,
|
| |
- chroot_names=None, **build_options):
|
| |
+ chroot_names=None, module=None, **build_options):
|
| |
skip_import = False
|
| |
git_hashes = {}
|
| |
|
| |
@@ -357,34 +357,38 @@
|
| |
git_hashes[chroot.name] = chroot.git_hash
|
| |
|
| |
build = cls.create_new(user, copr, source_build.source_type, source_build.source_json, chroot_names,
|
| |
- pkgs=source_build.pkgs, git_hashes=git_hashes, skip_import=skip_import, **build_options)
|
| |
+ pkgs=source_build.pkgs, git_hashes=git_hashes, skip_import=skip_import,
|
| |
+ module=module, **build_options)
|
| |
build.package_id = source_build.package_id
|
| |
build.pkg_version = source_build.pkg_version
|
| |
return build
|
| |
|
| |
@classmethod
|
| |
def create_new_from_url(cls, user, copr, srpm_url,
|
| |
- chroot_names=None, **build_options):
|
| |
+ chroot_names=None, module=None, **build_options):
|
| |
"""
|
| |
:type user: models.User
|
| |
:type copr: models.Copr
|
| |
|
| |
:type chroot_names: List[str]
|
| |
+ :type module: models.Module
|
| |
|
| |
:rtype: models.Build
|
| |
"""
|
| |
source_type = helpers.BuildSourceEnum("srpm_link")
|
| |
source_json = json.dumps({"url": srpm_url})
|
| |
- return cls.create_new(user, copr, source_type, source_json, chroot_names, pkgs=srpm_url, **build_options)
|
| |
+ return cls.create_new(user, copr, source_type, source_json, chroot_names,
|
| |
+ pkgs=srpm_url, module=module, **build_options)
|
| |
|
| |
@classmethod
|
| |
def create_new_from_tito(cls, user, copr, git_url, git_dir, git_branch, tito_test,
|
| |
- chroot_names=None, **build_options):
|
| |
+ chroot_names=None, module=None, **build_options):
|
| |
"""
|
| |
:type user: models.User
|
| |
:type copr: models.Copr
|
| |
|
| |
:type chroot_names: List[str]
|
| |
+ :type module: models.Module
|
| |
|
| |
:rtype: models.Build
|
| |
"""
|
| |
@@ -393,16 +397,17 @@
|
| |
"git_dir": git_dir,
|
| |
"git_branch": git_branch,
|
| |
"tito_test": tito_test})
|
| |
- return cls.create_new(user, copr, source_type, source_json, chroot_names, **build_options)
|
| |
+ return cls.create_new(user, copr, source_type, source_json, chroot_names, module=module, **build_options)
|
| |
|
| |
@classmethod
|
| |
def create_new_from_mock(cls, user, copr, scm_type, scm_url, scm_branch, spec,
|
| |
- chroot_names=None, **build_options):
|
| |
+ chroot_names=None, module=None, **build_options):
|
| |
"""
|
| |
:type user: models.User
|
| |
:type copr: models.Copr
|
| |
|
| |
:type chroot_names: List[str]
|
| |
+ :type module: models.Module
|
| |
|
| |
:rtype: models.Build
|
| |
"""
|
| |
@@ -411,11 +416,11 @@
|
| |
"scm_url": scm_url,
|
| |
"scm_branch": scm_branch,
|
| |
"spec": spec})
|
| |
- return cls.create_new(user, copr, source_type, source_json, chroot_names, **build_options)
|
| |
+ return cls.create_new(user, copr, source_type, source_json, chroot_names, module=module, **build_options)
|
| |
|
| |
@classmethod
|
| |
def create_new_from_pypi(cls, user, copr, pypi_package_name, pypi_package_version, python_versions,
|
| |
- chroot_names=None, **build_options):
|
| |
+ chroot_names=None, module=None, **build_options):
|
| |
"""
|
| |
:type user: models.User
|
| |
:type copr: models.Copr
|
| |
@@ -424,6 +429,7 @@
|
| |
:type python_versions: List[str]
|
| |
|
| |
:type chroot_names: List[str]
|
| |
+ :type module: models.Module
|
| |
|
| |
:rtype: models.Build
|
| |
"""
|
| |
@@ -431,31 +437,33 @@
|
| |
source_json = json.dumps({"pypi_package_name": pypi_package_name,
|
| |
"pypi_package_version": pypi_package_version,
|
| |
"python_versions": python_versions})
|
| |
- return cls.create_new(user, copr, source_type, source_json, chroot_names, **build_options)
|
| |
+ return cls.create_new(user, copr, source_type, source_json, chroot_names, module=module, **build_options)
|
| |
|
| |
@classmethod
|
| |
def create_new_from_rubygems(cls, user, copr, gem_name,
|
| |
- chroot_names=None, **build_options):
|
| |
+ chroot_names=None, module=None, **build_options):
|
| |
"""
|
| |
:type user: models.User
|
| |
:type copr: models.Copr
|
| |
:type gem_name: str
|
| |
:type chroot_names: List[str]
|
| |
+ :type module: models.Module
|
| |
:rtype: models.Build
|
| |
"""
|
| |
source_type = helpers.BuildSourceEnum("rubygems")
|
| |
source_json = json.dumps({"gem_name": gem_name})
|
| |
- return cls.create_new(user, copr, source_type, source_json, chroot_names, **build_options)
|
| |
+ return cls.create_new(user, copr, source_type, source_json, chroot_names, module=module, **build_options)
|
| |
|
| |
@classmethod
|
| |
def create_new_from_distgit(cls, user, copr, clone_url, branch,
|
| |
- chroot_names=None, **build_options):
|
| |
+ chroot_names=None, module=None, **build_options):
|
| |
"""
|
| |
:type user: models.User
|
| |
:type copr: models.Copr
|
| |
:type clone_url: str
|
| |
:type branch: str
|
| |
:type chroot_names: List[str]
|
| |
+ :type module: models.Module
|
| |
:rtype: models.Build
|
| |
"""
|
| |
source_type = helpers.BuildSourceEnum("distgit")
|
| |
@@ -463,14 +471,15 @@
|
| |
"clone_url": clone_url,
|
| |
"branch": branch
|
| |
})
|
| |
- return cls.create_new(user, copr, source_type, source_json, chroot_names, **build_options)
|
| |
+ return cls.create_new(user, copr, source_type, source_json, chroot_names, module=module, **build_options)
|
| |
|
| |
@classmethod
|
| |
def create_new_from_upload(cls, user, copr, f_uploader, orig_filename,
|
| |
- chroot_names=None, **build_options):
|
| |
+ chroot_names=None, module=None, **build_options):
|
| |
"""
|
| |
:type user: models.User
|
| |
:type copr: models.Copr
|
| |
+ :type module: models.Module
|
| |
:param f_uploader(file_path): function which stores data at the given `file_path`
|
| |
:return:
|
| |
"""
|
| |
@@ -491,7 +500,7 @@
|
| |
source_json = json.dumps({"tmp": tmp_name, "pkg": filename})
|
| |
try:
|
| |
build = cls.create_new(user, copr, source_type, source_json,
|
| |
- chroot_names, pkgs=pkg_url, **build_options)
|
| |
+ chroot_names, pkgs=pkg_url, module=module, **build_options)
|
| |
except Exception:
|
| |
shutil.rmtree(tmp) # todo: maybe we should delete in some cleanup procedure?
|
| |
raise
|
| |
@@ -500,7 +509,8 @@
|
| |
|
| |
@classmethod
|
| |
def create_new(cls, user, copr, source_type, source_json, chroot_names=None,
|
| |
- pkgs="", git_hashes=None, skip_import=False, background=False, **build_options):
|
| |
+ pkgs="", git_hashes=None, skip_import=False, background=False,
|
| |
+ module=None, **build_options):
|
| |
"""
|
| |
:type user: models.User
|
| |
:type copr: models.Copr
|
| |
@@ -511,6 +521,7 @@
|
| |
:type git_hashes: dict
|
| |
:type skip_import: bool
|
| |
:type background: bool
|
| |
+ :type module: models.Module
|
| |
:rtype: models.Build
|
| |
"""
|
| |
if chroot_names is None:
|
| |
@@ -525,6 +536,7 @@
|
| |
user=user,
|
| |
pkgs=pkgs,
|
| |
copr=copr,
|
| |
+ module=module,
|
| |
chroots=chroots,
|
| |
source_type=source_type,
|
| |
source_json=source_json,
|
| |
@@ -542,7 +554,7 @@
|
| |
@classmethod
|
| |
def add(cls, user, pkgs, copr, source_type=None, source_json=None,
|
| |
repos=None, chroots=None, timeout=None, enable_net=True,
|
| |
- git_hashes=None, skip_import=False, background=False):
|
| |
+ git_hashes=None, skip_import=False, background=False, module=None):
|
| |
if chroots is None:
|
| |
chroots = []
|
| |
|
| |
@@ -569,6 +581,7 @@
|
| |
user=user,
|
| |
pkgs=pkgs,
|
| |
copr=copr,
|
| |
+ module=module,
|
| |
repos=repos,
|
| |
source_type=source_type,
|
| |
source_json=source_json,
|
| |
I've added DB relationship between builds and modules in a sense that build can belong to module and some module can has a list of modules.
There are several reasons for this
I've not tested this on fe-dev machine yet.