#222 Set some copr-rpmbuild's run-time deps as weak deps
Closed: Fixed 3 years ago by praiskup. Opened 6 years ago by clime.

For example tito might not be actually needed for basic operation of the package so we can set that as a weak dep that user can decide not to install when installing the copr-rpmbuild package.


Yeah, I have tito in excludes in repo config, so this would be useful for me ;)

When I install copr-rpmbuild I want to be sure that it works for its
purpose -- that it will build all the requests coming from frontend/backend.
For copr-rpmbuild to work properly, all the requirements are hard dependencies
and you risk that (because of some minimization effort) you get broken
builder (e.g. builder image built on top of some minimized image).

This ticket was created as a reaction to the fact that we are moving "user"
or "client" thing (copr mock-config) from client tooling to build-system script
which is not to be used by user. That's just thin wrapper encapsulating
the Backend<->Frontend<->Builder protocol.

Proper solution is to share the code which generates the mock config
with client through some library, or to depend on the client tooling.

I have a requests to make builds work for RHEL4 buildroots. This will
require me to install copr-rpmbuild on RHEL6 VM builder. Really,
copr-rpmbuild is way to speak with backend, which btw. can be
used by end-user to debug things if something goes wrong.

I have a requests to make builds work for RHEL4 buildroots. This will
require me to install copr-rpmbuild on RHEL6 VM builder. Really,
copr-rpmbuild is way to speak with backend, which btw. can be
used by end-user to debug things if something goes wrong.

Well, copr-rpmbuild needs to be installed on a builder anyway to
build. I guess we will need to release copr-rpmbuild for epel6 then?
Will it help?

I have a requests to make builds work for RHEL4 buildroots. This will
require me to install copr-rpmbuild on RHEL6 VM builder. Really,
copr-rpmbuild is way to speak with backend, which btw. can be
used by end-user to debug things if something goes wrong.

Well, copr-rpmbuild needs to be installed on a builder anyway to
build. I guess we will need to release copr-rpmbuild for epel6 then?
Will it help?

Well, if you mean like proper RHEL builder, even that won't do the job.
Idk, we will need to look at this closer. Thank your for the concrete
feedback!

When I install copr-rpmbuild I want to be sure that it works for its
purpose -- that it will build all the requests coming from frontend/backend.
For copr-rpmbuild to work properly, all the requirements are hard dependencies
and you risk that (because of some minimization effort) you get broken
builder (e.g. builder image built on top of some minimized image).

We will need to find a fine balance between normal-user use and builder use.

If we make copr-rpmbulid to be the end-user thing, it should run everywhere, the same as copr client runs. I know you are very successful in ignoring my points, but copr-rpmbuild is not end user tool. I'll keep repeating this.

When I originally wanted to have that tool implemented, it was for two purposes (a) local reproducible builds and (b) automatic installation of dependencies on builder VM (to get builder upNrunning I have only install one package). If I knew that this will get this way I would rather never propose this... It is really painful to see solutions beaten by ugly work-arounds.

We will need to find a fine balance between normal-user use and builder use.

There's no normal user (we have client for that) of copr-rpmbuild. The package is there to help user to setup builder machine when that's needed.

Metadata Update from @msuchy:
- Issue tagged with: code-cleanup

5 years ago

copr-rpmbuild already moved those deps into weak deps. So I think we are done here.

We could move rpkg from Recommends to Suggests as we do with tito, but
we have it hardcoded on many places (so this will happen naturally with #1219).

Metadata Update from @praiskup:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

3 years ago

Login to comment on this ticket.

Metadata