[SERVER-4808] Provide repo downloads of older versions of packages Created: 29/Jan/12  Updated: 05/Feb/16  Resolved: 01/May/13

Status: Closed
Project: Core Server
Component/s: Packaging
Affects Version/s: None
Fix Version/s: 2.4.0

Type: Improvement Priority: Minor - P4
Reporter: Michael A. Fiedler Assignee: Ernie Hershey
Resolution: Done Votes: 12
Labels: packaging
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

repo


Issue Links:
Depends
Duplicate
is duplicated by SERVER-5913 Maintain old version of ubuntu packages. Closed
Related
related to SERVER-7692 RPM and Deb package for Subscriber Ed... Closed
related to SERVER-5455 Sign source archives (tgz, zip, etc) ... Closed
related to SERVER-7708 RPMs should automatically create /var... Closed
is related to SERVER-9227 Support pinning to branches, not just... Closed
is related to SERVER-7655 Add mongodb22-10gen package Closed
Backwards Compatibility: Fully Compatible
Participants:

 Description   

Allow users to retrieve a specific version of a package from a repo.



 Comments   
Comment by Ernie Hershey [ 01/May/13 ]

This is complete for versions back through 2.0.x with documentation here:

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-red-hat-centos-or-fedora-linux/#manage-installed-versions
http://docs.mongodb.org/manual/tutorial/install-mongodb-on-debian/#manage-installed-versions
http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/#manage-installed-versions

For pinning to branches, which is similar functionality, see SERVER-9227

Comment by Ernie Hershey [ 26/Mar/13 ]

Looks like a similar approach! I will check it out.

Comment by Michael A. Fiedler [ 26/Mar/13 ]

Have you ever considered something like https://github.com/miketheman/melai ?

Comment by auto [ 26/Mar/13 ]

Author:

{u'date': u'2013-03-26T19:51:03Z', u'name': u'Ernie Hershey', u'email': u'ernie.hershey@10gen.com'}

Message: SERVER-4808 Provide repo downloads of older versions of packages

This is used to consolidate multiple package versions into one
repository directory.
Branch: master
https://github.com/mongodb/mongo/commit/75d38d081ea7a38a4c254ba01a0d61a279746b21

Comment by Mark Kwan [ 02/Oct/12 ]

As a workaround, if you're trying to get access to older versions of Mongo, you can get them with a little detective work.

1) Find the version of Mongo that you're looking for:
https://jira.mongodb.org/browse/SERVER#selectedTab=com.atlassian.jira.plugin.system.project:changelog-panel&allVersions=true

2) Visit the download URL which has a form like this:
http://downloads-distro.mongodb.org/repo.2012-08-09.0/
The date is generally the date listed on the Change Log page, or a day before or after. (2.0.4 was 3 days off for some reason)

eg. The x86_64 RPMs for all the Mongo point releases are here:

2.0.7	http://downloads-distro.mongodb.org/repo.2012-08-09.0/redhat/os/x86_64/RPMS/
2.0.6	http://downloads-distro.mongodb.org/repo.2012-06-05.0/redhat/os/x86_64/RPMS/
2.0.5	http://downloads-distro.mongodb.org/repo.2012-05-09.0/redhat/os/x86_64/RPMS/
2.0.4	http://downloads-distro.mongodb.org/repo.2012-03-23.0/redhat/os/x86_64/RPMS/
2.0.3	http://downloads-distro.mongodb.org/repo.2012-02-28.0/redhat/os/x86_64/RPMS/
2.0.2	http://downloads-distro.mongodb.org/repo.2011-12-15.0/redhat/os/x86_64/RPMS/
2.0.1	http://downloads-distro.mongodb.org/repo.2011-10-22.0/redhat/os/x86_64/RPMS/
2.0.0	http://downloads-distro.mongodb.org/repo.2011-09-12.0/redhat/os/x86_64/RPMS/

Comment by Siert Z. [ 24/Aug/12 ]

I decided to vote on this one to provide confidence to users about the authenticity of packages (package signing). Nearly every publisher of packages does it, eg: Red Hat, Deban, Ubuntu, Puppetlabs, Jenkins, VMware, etc.

Comment by Daniel Pasette (Inactive) [ 24/Aug/12 ]

@mark, can you work with akshay to test and roll this out?

Comment by Mark porter [ 24/Aug/12 ]

We should look at signing the packages also (to verify package integrity - MD5/SHA1/SHA256).

Comment by Adam Flynn [ 16/Jul/12 ]

Thanks for the update, Michael.

Comment by Michael A. Fiedler [ 14/Jul/12 ]

There has been significant progress internally on this ticket, expect a more detailed update within a couple of weeks.

Comment by Chris Griego [ 29/Jun/12 ]

Are there alternative download links we can use in the meantime to get older packages while this ticket is being worked to add them to the repo?

Comment by Josh Nichols [ 11/Jun/12 ]

We use moonshine (which is puppet under the hood for managing installation of packages, and have gotten burned by this several times. The way I see it, until this gets fixed, there's 3 options for working around it

  • lock package version to something specific, ie 2.0.4
    • this prevents surprise upgrades
    • problematic when after new versions are released, and you need to install on new machines, since the deb is now unavailable
  • use latest package version
    • new machines will be able to install correctly
    • problematic because of surprise upgrades for existing installs
  • lock to a specific version, and create a mirror of the package repository
    • new machines will be able to install correctly
    • no surprise upgrades for existing installs
    • problematic because it requires more foresigh & setup: establishing a mirror, update the mirror when you want to upgrade

We've gone with the 3rd option, and it's working out well enough. For anyone curious, here's some creative use of wget to create the mirror:

wget -r -nH -np --cut-dirs=2 -R index.html http://downloads-distro.mongodb.org/repo/ubuntu-upstart/
find -name 'index.html*' -delete

Comment by Change.org [ 07/Jun/12 ]

This is important to me so that I can stage identical machines at a later date without having to keep a copy of the exact .deb around on my own. I don't like "forced upgrades".

Comment by Michael A. Fiedler [ 31/May/12 ]

We're working on some ideas, nothing concrete yet.

Comment by Sam Marx [ 25/May/12 ]

Any further updates on this?

Comment by Michael A. Fiedler [ 30/Apr/12 ]

Started work on a spec for this.
Some basic code has been written, too.

Generated at Thu Feb 08 03:07:03 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.