[84270] trunk/dports/devel/byacc/Portfile

Ryan Schmidt ryandesign at macports.org
Wed Sep 21 21:47:10 PDT 2011


On Sep 21, 2011, at 16:32, Daniel J. Luke wrote:

> On Sep 21, 2011, at 4:39 PM, Ryan Schmidt wrote:
>>> Sounds like the distfile mirrors should be fixed.
>> 
>> My understanding is that this is a security precaution at Apple's datacenter where the distfiles mirror lives; their (i.e. your) IT staff will not change this.
> 
> 
> This is a fairly lame restriction...
> 
> I think I asked before, but could we just set up a proxy so that the distfile mirror can get ftp hosted files?

I don't remember this suggestion but perhaps it would work? I'm not familiar with setting up proxy servers so I don't know what's involved. I also don't know if our Mac OS Forge admins would be willing or able to configure the server to use a proxy. I think the solution below might be better:


> or, if we can fetch with ftp from one of the non-apple supplied mirrors (I think they exist), can't we just have the main distfiles mirror pull those distfiles from them?

Some of the other distfiles mirrors may be able to fetch from ftp. But my understanding is that most or all of them just copy the distfiles from the main distfiles mirror using rsync. They could run "port mirror" but that would probably take a lot more time than just rsyncing.

The main distfiles mirror has the advantage of not needing to run "port mirror" since it is either the same server as the Subversion repository server, or is on the same network and in contact with it, such that after every commit, the distfiles mirror knows it should try to fetch files for the ports in that commit.

It might be nice if this could be decoupled a bit, and after each commit the repository server could "ping" each distfiles server (not just the main one) by calling a special URL each distfiles mirror would make available, telling it which ports to fetch. In response each server could then run the script that would fetch the files for those ports. I think I heard that if the fetch fails, the script tries a few more times later, so if the main server fails to get an ftp-only file on the first try, maybe by the second try it would have already been picked up by another mirror.






More information about the macports-dev mailing list