fuel-mirror does not handle redirects
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Fuel for OpenStack |
Fix Committed
|
Medium
|
Michal Skalski | ||
Mitaka |
Fix Released
|
Medium
|
Michal Skalski |
Bug Description
Detailed bug description:
When remote server respond with 302 HTTP during fetching packages fuel-mirror will exit with error:
http://
Fuel-mirror is using standard urllib python library but also extend request class by adding new attributes [0]. When one of the 30x HTTP codes are returned urllib internally recreate request object [1] which dose not contain extra attributes like offset which lead to exception when we try access non-existent attribute[2].
[0] https:/
[1] https:/
[2] https:/
Steps to reproduce:
In fuel mirror configuration use address of mirror server which return HTTP 302 Code when requesting packages. Example of such repository is: http://
mirror-config.yaml: http://
ubuntu.yaml: http://
Please take in to account that above configuration is for fuel-9.0
fuel-mirror --debug --config ./mirror-
Expected results:
fuel-mirror should create local mirror without error.
Actual result:
fuel-mirror exit before finishing because Too many errors occurred.
Reproducibility:
With mirror http://
Workaround:
Based on my experience not all mirror servers return 302 HTTP code, changing url of the mirror from which we download packages can help.
tags: | added: on-verification |
Fix proposed to branch: master /review. openstack. org/331041
Review: https:/