| |
@@ -929,12 +929,12 @@
|
| |
|
| |
|
| |
def render_create_module(copr, form, profiles=2):
|
| |
- packages = []
|
| |
+ built_packages = []
|
| |
for build in filter(None, [p.last_build(successful=True) for p in copr.packages]):
|
| |
for package in build.built_packages.split("\n"):
|
| |
- packages.append(package.split()[0])
|
| |
+ built_packages.append((package.split()[0], build))
|
| |
|
| |
- return flask.render_template("coprs/create_module.html", copr=copr, form=form, packages=packages, profiles=profiles)
|
| |
+ return flask.render_template("coprs/create_module.html", copr=copr, form=form, built_packages=built_packages, profiles=profiles)
|
| |
|
| |
|
| |
@coprs_ns.route("/<username>/<coprname>/create_module/", methods=["POST"])
|
| |
@@ -984,6 +984,18 @@
|
| |
for package in packages:
|
| |
mmd.profiles[name].add_rpm(str(package))
|
| |
|
| |
+ build_ids = sorted(list(set([int(id) for p, id in zip(form.packages.data, form.builds.data)
|
| |
+ if p in form.filter.data])))
|
| |
+ for package in form.filter.data:
|
| |
+ build_id = form.builds.data[form.packages.data.index(package)]
|
| |
+ build = builds_logic.BuildsLogic.get_by_id(build_id).first()
|
| |
+
|
| |
+ upstream_url, upstream_ref = builds_logic.BuildsLogic.build_upstream_tuple(build)
|
| |
+
|
| |
+ mmd.components.add_rpm(str(package), "User selected the package as a part of the module",
|
| |
+ repository=str(upstream_url) or "", ref=str(upstream_ref) or "",
|
| |
+ buildorder=build_ids.index(int(build.id)))
|
| |
+
|
| |
module = ModulesLogic.add(flask.g.user, copr, ModulesLogic.from_modulemd(mmd.dumps()))
|
| |
db.session.flush()
|
| |
actions_logic.ActionsLogic.send_build_module(flask.g.user, copr, module)
|
| |
This PR updates our module generation UI. It fills the components and buildorder in yaml file. It looks like this