Jonathan Edwards wrote:
> On Jan 14, 2009, at 11:35 AM, Stephen Hahn wrote:
> 
>>> Question:
>>> - What would be the best/fastest method to get package updates and
>>> other packages from the release repository to this server with  
>>> limited
>>> network access assuming that another server (not necessarily
>>> opensolaris) could be swung or proxied to connect to the release
>>> repository?
> 
> <snip>
> 
>>  If an HTTP proxy is not available, you need to wait for the next
>>  media product, which is a single-build snapshot of a repository as a
>>  collection of DVD images.  We haven't started building these
>>  automatically yet, but it's on the list of things to do.  You can  
>> then
>>  run a depot inside the organization's private network, after copying
>>  the DVDs' contents to a filesystem.
> 
> it looks like you've got the tools out there to accomplish this, and  
> while it's a little behaviorally challenged - this seems to almost  
> work .. (thanks for the reply - i meant to follow up on this but  
> thought it might be rude to reply to my own question with my own  
> answer .. :P)
> 
> 1) download the pkg toolkit from 
> http://wikis.sun.com/display/IpsBestPractices/Downloads 
>   .. (in the following examples - i'm running on mac os x)
> 
> 2) unpack the zip files, make some links, add stuff to your path .. eg:
> # unzip pkg-toolkit-2.0.0-darwin-universal.zip
> # mkdir repo ; cd repo ; unzip ../repo-2.0.0.-darwin-universal.zip
> # cd ../pkg-toolkit-2.0.0-darwin-universal/bin
> # ln -s ../pkg/bin/pkgrecv .
> # ln -s ../pkg/bin/pkgsend .
> # ln -s ../pkg/bin/pkg.depotd .
> # export PATH=$PATH:`pwd`
> # cd ../..
> 
> 3) grab the latest release catalog from pkg.opensolaris.org
> # pkgrecv -s http://pkg.opensolaris.org -n | sort > catalog
> 
> 4) find the package you want and pull it down .. eg:
> # pkgrecv -s http://pkg.opensolaris.org pkg:/ 
> SUNWemlxs at 0.5.11,5.11-0.101:20081119T220043Z
> 
> 5) start a local repository .. (note this only seems to start when  
> *no* network is connected .. works fine after it's started though)
> # pkg.depotd -p 31337
> 
> 6) send package to the repository (this gets a little ugly)
> # pkgsend -s http://localhost:31337 open pkg:/ 
> SUNWemlxs at 0.5.11,5.11-0.101:20081119T220043Z
> # export PKG_TRANS_ID=1231971680_pkg%3A%2FSUNWemlxs 
> %400.5.11%2C5.11-0.101%3A20090114T222120Z
> # pkgsend -s http://localhost:31337 include -d SUNWemlxs SUNWemlxs/ 
> manifest
> # pkgsend -s http://localhost:31337 close
> 
> Now i've got what appears to be a working depot that i can then cross- 
> over connect to the standalone OpenSolaris server .. I can set the  
> authority and connect to the CherryPy server implementation and see  
> this package in the local catalog .. yea!

Re-publishing the packages will likely give you unexpected results as 
the timestamps on all of the packages will match publication time making 
them newer than the repository you are attempting to mirror.

At present, full repository mirroring (metadata + content) is not yet 
supported.

What Stephen mentioned remains the best option for faster repository access.

Cheers,
-- 
Shawn Walker

Reply via email to