On 10/26/2014 12:39 AM, Steven Haigh wrote:
On 25/10/2014 10:28 PM, Shane Voss wrote:
On 25/10/14 05:06, Steven Haigh wrote:> I also want to go and put a
custom URL in the sl6x.repo to go to my
local repository that I mirror.

That means I'd want to turn this:
[snip]

to this:
The only change I can see was inserting your server in the baseurl.
Perhaps this is only needed in the  sl6x  section.

This bit of sed should do it:

sed -i '/\[sl6x\]/,/\[/ { /baseurl/ {
  h ; s!http:.*scientific/!https://my.internal.server/sl! ; p ;
  g ; s/baseurl=/                / } }' /etc/yum.repos.d/sl6x.repo

It is "parsing" the URL in as much as you seem to need to replicate the
bit of the existing one after  'scientific/'.

Hope that helps.
Help? That is near magic!

I did a bit of tweaking and ended up with this:
sed -i '/\[sl6x.*\]/,/\n\n/ { /baseurl/ {
  h ; s!http:.*scientific/!https://my.server/path/to/sl! ; p ;
  g ; s/baseurl=/                / } }' /etc/yum.repos.d/sl6x.repo

This uses the \n\n as the end of field marker - it seemed that using [
would cause it to not match the middle repo - as its next evaluation was
against sl6x-security].

That will now loop through all the repos defined in sl6x.repo and add a
local mirror to them all.

Thanks for this pointer - I certainly wouldn't have come up with this
one by myself....


The 'yum-config-manager' (provided by yum-utils) utility may be of more help.

Pat

--
Pat Riehecky

Scientific Linux developer
http://www.scientificlinux.org/

Reply via email to