Hi I just checked our code and remembered that there was a change in upstream and they use no the ThreadedDownloader and this cannot handle the tokens. Let me see if I can open a PR to add this. Check the upstream PRs.
Am Donnerstag, 11. Januar 2018, 11:27:09 CET schrieb Michael Calmer: > Hi > > hmm, than it is maybe still yum and/or python-urlgrabber. I provided patches > for both some years ago on there mailing lists. > I am not sure if they were included into the packages. > > Am Donnerstag, 11. Januar 2018, 10:34:49 CET schrieb Sadri, Wafa (BITBW): > > Hi there, > > > > Unfortunately, nothing has changed at all, after commenting out the 5 > > lines. This is the output of /var/log/rhn/reposync/sles-12-sp3-updates.log > > > > > > 2018/01/11 10:21:46 +02:00 Command: ['/bin/spacewalk-repo-sync', > > '--channel=sles-12-sp3-updates'] > > 2018/01/11 10:21:46 +02:00 Sync of channel started. > > 2018/01/11 10:21:46 +02:00 Repo URL: > > https://updates.suse.com/SUSE/Updates/SLE-SERVER/12-SP3/x86_64/update/?VERYLONGTOKEN > > 2018/01/11 10:21:50 +02:00 Packages in repo: 1342 > > 2018/01/11 10:21:52 +02:00 Packages already synced: 820 > > 2018/01/11 10:21:52 +02:00 Packages to sync: 243 > > 2018/01/11 10:21:52 +02:00 New packages to download: 243 > > 2018/01/11 10:21:52 +02:00 ERROR: Download failed: > > https://updates.suse.com/SUSE/Updates/SLE-SERVER/12-SP3/x86_64/update/x86_64/cpp48-4.8.5-31.6.1.x86_64.rpm > > - [Errno 14] HTTPS Error 403 - Forbidden. > > 2018/01/11 10:21:52 +02:00 1/243 : cpp48-4.8.5-31.6.1.x86_64.rpm (failed) > > > > [...] > > > > 2018/01/11 10:21:55 +02:00 ERROR: Download failed: > > https://updates.suse.com/SUSE/Updates/SLE-SERVER/12-SP3/x86_64/update/noarch/zypper-log-1.13.39-21.13.7.noarch.rpm > > - [Errno 14] HTTPS Error 403 - Forbidden. > > 2018/01/11 10:21:55 +02:00 243/243 : zypper-log-1.13.39-21.13.7.noarch.rpm > > (failed) > > 2018/01/11 10:21:55 +02:00 Importing packages started. > > 2018/01/11 10:21:55 +02:00 Importing packages finished. > > 2018/01/11 10:21:55 +02:00 Repo > > https://updates.suse.com/SUSE/Updates/SLE-SERVER/12-SP3/x86_64/update/?VERYLONGTOKEN > > has 229 errata. > > 2018/01/11 10:21:56 +02:00 No new errata to sync. > > 2018/01/11 10:21:57 +02:00 Sync of channel completed in 0:00:10 > > > > > > Before commenting out the lines, the output was exactly the same. I'm not > > sure wether the log doesn't show, if the token is attached to the package > > url or i fit really isn't used by spacewalk and the shown url is accurate. > > > > Regards, > > Wafa > > > > > > -----Ursprüngliche Nachricht----- > > Von: [email protected] > > [mailto:[email protected]] Im Auftrag von Michael Calmer > > Gesendet: Donnerstag, 11. Januar 2018 10:14 > > An: [email protected] > > Betreff: Re: [Spacewalk-list] SUSE tokens broken since spacewalk 2.7 > > > > Hi > > > > Am Donnerstag, 11. Januar 2018, 09:47:45 CET schrieb Sadri, Wafa (BITBW): > > > Hi there, > > > > > > in my version of the file, the line looks a little different: > > > > > > # if self.url is metalink it will be expanded into > > > # real urls in self.repo.urls and also save this metalink > > > # in begin of the url list ("for repolist -v ... or anything else > > > wants to know the baseurl") > > > # Remove it from the list, we don't need it to download content of > > > repo > > > real_urls = [] > > > for url in self.repo.urls: > > > if '?' not in url: > > > real_urls.append(url) > > > self.repo.urls = real_urls > > > > > > Am I commenting out the whole thing, or just the for-loop? > > > > All 5 lines or at least "self.repo.urls = real_urls". > > > > > I might be in the wrong function alltogether, because this part of the > > > code appears in the function "def __init__(self, url, name, > > > yumsrc_conf=YUMSRC_CONF, org="1", channel_label="", no_mirrors=False, > > > ca_cert_file=None, client_cert_file=None, client_key_file=None):" > > > > > > The exact line you mentioned doesn't appear in my yum_src.py (which is > > > located exactly where you said it would be). > > > > I think this is the right place. I checked master branch which had already > > changed. > > > > > Regards, > > > Wafa > > > > > > -----Ursprüngliche Nachricht----- > > > Von: [email protected] > > > [mailto:[email protected]] Im Auftrag von Michael > > > Calmer > > > Gesendet: Mittwoch, 10. Januar 2018 16:54 > > > An: [email protected] > > > Betreff: Re: [Spacewalk-list] SUSE tokens broken since spacewalk 2.7 > > > > > > Hi > > > > > > Am Mittwoch, 10. Januar 2018, 16:18:07 CET schrieb Sadri, Wafa (BITBW): > > > > Hello everyone, > > > > > > > > We're having issues syncing SUSE repositories since we upgraded to 2.7 > > > > in mid-december. > > > > We're using these type of URLs in our repositories: > > > > https://updates.suse.com/SUSE/Products/SLE-Module-Web-Scripting/12/x > > > > 86_64/product&NOWAVERYLONGTOKENOFYOURREGISTEREDSYSTEM > > > > > > > > Spacewalk is able to receive the repomd.xml file and starts to download > > > > the packages. But it fails with every single download. Looking at the > > > > log files, I can see that it does not request the resources using the > > > > token anymore. It will only request the repomd.xml file with the token. > > > > Therefor we're getting 403 errors for the actual package downloads. > > > > We've refreshed all the URLs, used different tokens... all with the > > > > same result. I've tried the SUSE support but they don't understand the > > > > problem and were not helpful at all! > > > > > > > > Any idea if something has changed in the way spacewalk syncs > > > > repositories? Is the python-urlgrabber no longer used? > > > > > > Guessing a bit. Maybe you want to try it out. I cannot tell you the exact > > > path to the file in your installation But I hope you can find the right > > > one: > > > > > > /usr/lib/python2.7/site-packages/spacewalk/satellite_tools/repo_plugin > > > s/yum_src.py At the end of the function "def setup_repo(self, repo, > > > no_mirrors, ca_cert_file, client_cert_file, client_key_file):" > > > > > > # if self.url is metalink it will be expanded into > > > # real urls in repo.urls and also save this metalink > > > # in begin of the url list ("for repolist -v ... or anything > > > else wants to know the baseurl") > > > # Remove it from the list, we don't need it to download > > > content of repo > > > repo.urls = [url for url in repo.urls if '?' not in url] > > > > > > Just try to comment out this last line. It seems at it is excluding all > > > URLs with a '?' but the token is seperated by it as well. > > > Not sure if it help but maybe you can try out and report back. > > > > > > > > > > > > -- > > Regards > > > > Michael Calmer > > > > -------------------------------------------------------------------------- > > Michael Calmer > > SUSE LINUX GmbH, Maxfeldstr. 5, D-90409 Nuernberg > > T: +49 (0) 911 74053 0 > > F: +49 (0) 911 74053575 - e-mail: [email protected] > > -------------------------------------------------------------------------- > > SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, > > HRB 21284 (AG Nürnberg) > > > > > > _______________________________________________ > > Spacewalk-list mailing list > > [email protected] > > https://www.redhat.com/mailman/listinfo/spacewalk-list > > > > _______________________________________________ > > Spacewalk-list mailing list > > [email protected] > > https://www.redhat.com/mailman/listinfo/spacewalk-list > > > -- Regards Michael Calmer -------------------------------------------------------------------------- Michael Calmer SUSE LINUX GmbH, Maxfeldstr. 5, D-90409 Nuernberg T: +49 (0) 911 74053 0 F: +49 (0) 911 74053575 - e-mail: [email protected] -------------------------------------------------------------------------- SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg) _______________________________________________ Spacewalk-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/spacewalk-list
