Aptly cannot mirror Elastic logstashforwarder mirror
Add Elastic's logstashforwarder repo to aptly and attempt update:
$ aptly mirror create logstashforwarder http://packages.elastic.co/logstashforwarder/debian stable main
$ aptly mirror update logstashforwarder
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/InRelease...
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/Release...
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/Release.gpg...
gpgv: Signature made Thu 05 Mar 2015 08:04:12 PM UTC using RSA key ID D88E42B4
gpgv: Good signature from "Elasticsearch (Elasticsearch Signing Key) <[email protected]>"
Downloading & parsing package files...
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/main/binary-noarch/Packages.bz2...
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/main/binary-noarch/Packages.gz...
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/main/binary-noarch/Packages...
ERROR: unable to update: HTTP code 404 while fetching http://packages.elastic.co/logstashforwarder/debian/dists/stable/main/binary-noarch/Packages
This appears to be because the architectures in Elastic's Release file don't match the actual package architectures:
$ curl http://packages.elastic.co/logstashforwarder/debian/dists/stable/Release
Architectures: noarch
...
SHA1:
da39a3ee5e6b4b0d3255bfef95601890afd80709 0 Release
5f6fcbd97954082f65caf5fd11802a558e8c7dc8 690 main/binary-all/Packages
be5ae50d21ecd76e0779bb934a601897b434520c 476 main/binary-all/Packages.gz
5f6fcbd97954082f65caf5fd11802a558e8c7dc8 690 main/binary-amd64/Packages
be5ae50d21ecd76e0779bb934a601897b434520c 476 main/binary-amd64/Packages.gz
5f6fcbd97954082f65caf5fd11802a558e8c7dc8 690 main/binary-i386/Packages
be5ae50d21ecd76e0779bb934a601897b434520c 476 main/binary-i386/Packages.gz
...
Would be good to be able force Aptly to override the Architectures: line in the Release file.
I will raise a similar issue with Elastic about this mismatch in their repository.
Issue for logstash-forwarded: https://github.com/elastic/logstash-forwarder/issues/531
@jstangroome you can override list of architectures using -architectures flag. You can do that during aptly mirror create, or later using edit:
aptly mirror edit -architectures=i386,amd64 logstashforwarder
aptly mirror update logstashforwarder
@smira this does not work in aptly 0.9.5.
$ aptly mirror create -architectures=amd64 logstashforwarder http://packages.elastic.co/logstashforwarder/debian stable main
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/InRelease...
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/Release...
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/Release.gpg...
gpgv: Signature made Thu 05 Mar 2015 08:04:12 PM UTC using RSA key ID D88E42B4
gpgv: Good signature from "Elasticsearch (Elasticsearch Signing Key) <[email protected]>"
ERROR: unable to fetch mirror: architecture amd64 not available in repo [logstashforwarder]: http://packages.elastic.co/logstashforwarder/debian/ stable
and also
$ aptly mirror create logstashforwarder http://packages.elastic.co/logstashforwarder/debian stable main
$ aptly mirror edit -architectures=amd64 logstashforwarder
Downloading http://packages.elastic.co/logstashforwarder/debian/dists/stable/Release...
ERROR: unable to edit: architecture amd64 not available in repo [logstashforwarder]: http://packages.elastic.co/logstashforwarder/debian/ stable
oh... I've added -force-components some time ago to deal with wrong component list. Looks like we need -force-architectures as well to workaround broken repos...