Op 26-05-17 om 14:52 schreef Sijis Aviles:
As suggested, I was able to tell apt to install the specific 1.0.5~aaa package first and then I was able to install 'my-app' in a subsequent command. This works but its not what I was expecting to do.

What I was trying to do was automatically build 'my-app' and 'app-configs' (via Jenkins) every day and upload those .deb files to Artifactory in a single repo. At some point in time (about once a week), I would want to release 'my-app' and update its control file to use a specified version of 'app-configs' (probably not the latest), then I would use a script to install this version of 'my-app', which would only require the specific version of app-configs.

If I understand what you say, only 1 version of app-configs should
be available in the debian repo in order for this to work.

Simply put: in any particular repository the most recent version of the dependency should be compatible with the most recent version of the main package.

If that's the case, then what are my options? Does each daily build>
of 'my-app' and 'app-configs' go into a separate repository?

That may be an option. You would have to make sure - scripted or manually - the machine installing my-app only 'sees' one of those repositories at a time, though.

I do find it strange that I was able to use apt-get install app-configs=1.0.5~aaa but I cannot specificy something similar through a control file.

That's simply how apt works. The Depends field in the control file is meant to tell apt which dependencies a particular package needs. If they're not available or installable, apt is supposed to complain. If the user decides to issue a command that specifies an earlier version of a package, that's *his* decision. Don't forget, being both the creator/provider and the installer/user of a package is not the default situation for most packages.

*) I'm ignoring 'priority pinning' here, as we're talking about a single repository

I'm actually quite curious about this, as I was anticipating coping the 'released' my-app and app-configs into a separate repository for 'safer' keeping.

If those versions are older than the ones currently installed, you don't need pinning, as apt will normally ignore older versions anyway.

Regards,
Frank

Reply via email to